Skip to content

Commit eaf1483

Browse files
OracleLabsAutomationeregon
authored andcommitted
[GR-26395] Periodic update of the graal import.
PullRequest: truffleruby/4017
2 parents 8a3aa0b + 5ad20dd commit eaf1483

File tree

11 files changed

+69
-30
lines changed

11 files changed

+69
-30
lines changed

ci/common.jsonnet

Lines changed: 34 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,24 +8,50 @@ local common_json = import "../common.json";
88
{
99
# JDK definitions
1010
# ***************
11+
local jdk_base = {
12+
name: error "name not set", # string; The JDK provider, e.g. "jpg-jdk", "labsjdk"
13+
version: error "version not set", # string; Full version string, e.g., "ce-21+35-jvmci-23.1-b15"
14+
jdk_version:: error "jdk_version not set", # int; The major JDK version, e.g., 21
15+
jdk_name:: "jdk%d" % self.jdk_version, # string; The major JDK version with the JDK prefix.
16+
# For the latest (unreleased) this should be overridden with "jdk-latest"
17+
# otherwise the jdk_version with the "jdk" prefix, e.g., "jdk21".
18+
# This should be use for constructing CI job names.
19+
# Optional:
20+
# "build_id": "33",
21+
# "release": true,
22+
# "platformspecific": true,
23+
# "extrabundles": ["static-libs"],
24+
},
25+
# ***************
1126
local variants(name) = [name, name + "Debug", name + "-llvm"],
27+
# gets the JDK major version from a labsjdk version string (e.g., "ce-21+35-jvmci-23.1-b15" -> 21)
28+
local parse_labsjdk_version(version) =
29+
assert std.startsWith(version, "ce-") || std.startsWith(version, "ee-") : "Unsupported labsjdk version: " + version;
30+
local number_prefix(str) =
31+
if std.length(str) == 0 || std.length(std.findSubstr(str[0], "0123456789")) == 0 then
32+
""
33+
else
34+
str[0] + number_prefix(str[1:])
35+
;
36+
std.parseInt(number_prefix(version[3:]))
37+
,
1238
local jdks_data = {
13-
oraclejdk11: common_json.jdks["oraclejdk11"] + { jdk_version:: 11 },
39+
oraclejdk11: jdk_base + common_json.jdks["oraclejdk11"] + { jdk_version:: 11 },
1440
} + {
15-
[name]: common_json.jdks[name] + { jdk_version:: 17 }
41+
[name]: jdk_base + common_json.jdks[name] + { jdk_version:: 17 }
1642
for name in ["oraclejdk17"] + variants("labsjdk-ce-17") + variants("labsjdk-ee-17")
1743
} + {
18-
[name]: common_json.jdks[name] + { jdk_version:: 19 }
44+
[name]: jdk_base + common_json.jdks[name] + { jdk_version:: 19 }
1945
for name in ["oraclejdk19"] + variants("labsjdk-ce-19") + variants("labsjdk-ee-19")
2046
} + {
21-
[name]: common_json.jdks[name] + { jdk_version:: 20 }
47+
[name]: jdk_base + common_json.jdks[name] + { jdk_version:: 20 }
2248
for name in ["oraclejdk20"] + variants("labsjdk-ce-20") + variants("labsjdk-ee-20")
2349
} + {
24-
[name]: common_json.jdks[name] + { jdk_version:: 21 }
50+
[name]: jdk_base + common_json.jdks[name] + { jdk_version:: 21 }
2551
for name in ["oraclejdk21"] + variants("labsjdk-ce-21") + variants("labsjdk-ee-21")
2652
} + {
27-
[name]: common_json.jdks[name] + { jdk_version:: 22 }
28-
for name in variants("labsjdk-ce-22") + variants("labsjdk-ee-22")
53+
[name]: jdk_base + common_json.jdks[name] + { jdk_version:: parse_labsjdk_version(self.version), jdk_name:: "jdk-latest"}
54+
for name in variants("labsjdk-ce-latest") + variants("labsjdk-ee-latest")
2955
},
3056
assert std.assertEqual(std.objectFields(common_json.jdks), std.objectFields(jdks_data)),
3157

@@ -39,6 +65,7 @@ local common_json = import "../common.json";
3965
[if std.endsWith(name, "llvm") then "LLVM_JAVA_HOME" else "JAVA_HOME"]: jdks_data[name]
4066
},
4167
jdk_version:: jdks_data[name].jdk_version,
68+
jdk_name:: jdks_data[name].jdk_name,
4269
},
4370
for name in std.objectFields(jdks_data)
4471
} + {

common.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"Jsonnet files should not include this file directly but use ci/common.jsonnet instead."
55
],
66

7-
"mx_version": "6.46.1",
7+
"mx_version": "6.50.2",
88

99
"COMMENT.jdks": "When adding or removing JDKs keep in sync with JDKs in ci/common.jsonnet",
1010
"jdks": {
@@ -42,12 +42,12 @@
4242
"labsjdk-ee-21Debug": {"name": "labsjdk", "version": "ee-21+35-jvmci-23.1-b15-debug", "platformspecific": true },
4343
"labsjdk-ee-21-llvm": {"name": "labsjdk", "version": "ee-21+35-jvmci-23.1-b15-sulong", "platformspecific": true },
4444

45-
"labsjdk-ce-22": {"name": "labsjdk", "version": "ce-22+13-jvmci-b01", "platformspecific": true },
46-
"labsjdk-ce-22Debug": {"name": "labsjdk", "version": "ce-22+13-jvmci-b01-debug", "platformspecific": true },
47-
"labsjdk-ce-22-llvm": {"name": "labsjdk", "version": "ce-22+13-jvmci-b01-sulong", "platformspecific": true },
48-
"labsjdk-ee-22": {"name": "labsjdk", "version": "ee-22+13-jvmci-b01", "platformspecific": true },
49-
"labsjdk-ee-22Debug": {"name": "labsjdk", "version": "ee-22+13-jvmci-b01-debug", "platformspecific": true },
50-
"labsjdk-ee-22-llvm": {"name": "labsjdk", "version": "ee-22+13-jvmci-b01-sulong", "platformspecific": true }
45+
"labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-22+15-jvmci-b01", "platformspecific": true },
46+
"labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-22+15-jvmci-b01-debug", "platformspecific": true },
47+
"labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-22+15-jvmci-b01-sulong", "platformspecific": true },
48+
"labsjdk-ee-latest": {"name": "labsjdk", "version": "ee-22+15-jvmci-b01", "platformspecific": true },
49+
"labsjdk-ee-latestDebug": {"name": "labsjdk", "version": "ee-22+15-jvmci-b01-debug", "platformspecific": true },
50+
"labsjdk-ee-latest-llvm": {"name": "labsjdk", "version": "ee-22+15-jvmci-b01-sulong", "platformspecific": true }
5151
},
5252

5353
"eclipse": {

mx.truffleruby/env_files.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ Here is how the various env files relate to each other:
55
* `jvm-ce-libgraal`: + libgraal
66
* `native`: + librubyvm + `Truffle Macro`
77
* `native-host-inlining`: + `TruffleHostInliningPrintExplored`, - native toolchain launchers
8-
* `jvm-ee`: + Oracle GraalVM Compiler + `Truffle enterprise`
8+
* `native-profiling`: + `-H:-DeleteLocalSymbols`
9+
* `jvm-ee`: + Oracle GraalVM Compiler + `Truffle enterprise` + license + `LLVM Runtime Native Enterprise`
910
* `jvm-ee-ntl`: + native toolchain launchers
1011
* `jvm-ee-libgraal`: + libgraal
1112
* `native-ee`: + librubyvm + `Truffle Macro Enterprise` + Native Image G1

mx.truffleruby/jvm-ee

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
GRAALVM_SKIP_ARCHIVE=true
2-
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise
3-
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise
2+
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise,/vm-enterprise,/sulong-managed,/substratevm-enterprise
3+
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise,GraalVM enterprise license files,LLVM Runtime Native Enterprise,SubstrateVM Enterprise
4+
NATIVE_IMAGES=false
45
# To also create the standalone
56
INSTALLABLES=TruffleRuby
67
BUILD_TARGETS=GRAALVM,GRAALVM_STANDALONES
8+
# NOTE: SVM EE is added as a workaround to tell the JVM standalone to be EE

mx.truffleruby/jvm-ee-libgraal

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
GRAALVM_SKIP_ARCHIVE=true
2-
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise,/substratevm-enterprise
3-
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise,SubstrateVM Enterprise,LibGraal Enterprise
2+
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise,/vm-enterprise,/sulong-managed,/substratevm-enterprise
3+
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise,GraalVM enterprise license files,LLVM Runtime Native Enterprise,SubstrateVM Enterprise,LibGraal Enterprise
44
NATIVE_IMAGES=suite:sulong,lib:jvmcicompiler
55
# To also create the standalone
66
INSTALLABLES=TruffleRuby

mx.truffleruby/jvm-ee-ntl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
GRAALVM_SKIP_ARCHIVE=true
2-
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise,/substratevm-enterprise
3-
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise,SubstrateVM Enterprise
2+
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise,/vm-enterprise,/sulong-managed,/substratevm-enterprise
3+
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise,GraalVM enterprise license files,LLVM Runtime Native Enterprise,SubstrateVM Enterprise
44
NATIVE_IMAGES=suite:sulong
55
# To also create the standalone
66
INSTALLABLES=TruffleRuby

mx.truffleruby/native-ee

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
GRAALVM_SKIP_ARCHIVE=true
2-
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise,/substratevm-enterprise,substratevm-enterprise-gcs
3-
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise,SubstrateVM Enterprise,Truffle Macro Enterprise,suite:substratevm-enterprise-gcs
2+
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise,/vm-enterprise,/sulong-managed,/substratevm-enterprise,substratevm-enterprise-gcs
3+
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise,GraalVM enterprise license files,LLVM Runtime Native Enterprise,SubstrateVM Enterprise,Truffle Macro Enterprise,suite:substratevm-enterprise-gcs
44
NATIVE_IMAGES=suite:sulong,lib:rubyvm
55
EXTRA_IMAGE_BUILDER_ARGUMENTS=rubyvm:-H:+UnlockExperimentalVMOptions rubyvm:-H:BuildOutputJSONFile=native-image-build-rubyvm.json rubyvm:-H:-UnlockExperimentalVMOptions
66
GENERATE_DEBUGINFO=false

mx.truffleruby/native-ee-aux

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
GRAALVM_SKIP_ARCHIVE=true
2-
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise,/substratevm-enterprise
3-
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise,SubstrateVM Enterprise,Truffle Macro Enterprise
2+
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise,/vm-enterprise,/sulong-managed,/substratevm-enterprise
3+
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise,GraalVM enterprise license files,LLVM Runtime Native Enterprise,SubstrateVM Enterprise,Truffle Macro Enterprise
44
NATIVE_IMAGES=suite:sulong,lib:rubyvm
55
EXTRA_IMAGE_BUILDER_ARGUMENTS=rubyvm:-H:+UnlockExperimentalVMOptions rubyvm:-H:BuildOutputJSONFile=native-image-build-rubyvm.json rubyvm:-H:-UnlockExperimentalVMOptions rubyvm:-H:+AuxiliaryEngineCache rubyvm:-H:ReservedAuxiliaryImageBytes=1073741824
66
GENERATE_DEBUGINFO=false

mx.truffleruby/native-ee-host-inlining

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
GRAALVM_SKIP_ARCHIVE=true
2-
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise,/substratevm-enterprise,substratevm-enterprise-gcs
3-
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise,SubstrateVM Enterprise,Truffle Macro Enterprise,suite:substratevm-enterprise-gcs
2+
DYNAMIC_IMPORTS=/tools,/truffleruby-enterprise,/graal-enterprise,/vm-enterprise,/sulong-managed,/substratevm-enterprise,substratevm-enterprise-gcs
3+
COMPONENTS=TruffleRuby,suite:tools,GraalVM enterprise compiler,Truffle enterprise,GraalVM enterprise license files,LLVM Runtime Native Enterprise,SubstrateVM Enterprise,Truffle Macro Enterprise,suite:substratevm-enterprise-gcs
44
NATIVE_IMAGES=lib:rubyvm
5-
EXTRA_IMAGE_BUILDER_ARGUMENTS=rubyvm:-H:+UnlockExperimentalVMOptions rubyvm:-H:BuildOutputJSONFile=native-image-build-rubyvm.json rubyvm:-H:Log=HostInliningPhase,~CanonicalizerPhase,~GraphBuilderPhase rubyvm:-H:+TruffleHostInliningPrintExplored rubyvm:-H:-UnlockExperimentalVMOptions rubyvm:-Dgraal.LogFile=host-inlining.txt
5+
EXTRA_IMAGE_BUILDER_ARGUMENTS=rubyvm:-H:+UnlockExperimentalVMOptions rubyvm:-H:BuildOutputJSONFile=native-image-build-rubyvm.json rubyvm:-H:Log=HostInliningPhase,~CanonicalizerPhase,~GraphBuilderPhase rubyvm:-H:+TruffleHostInliningPrintExplored rubyvm:-H:-UnlockExperimentalVMOptions rubyvm:-Dgraal.LogFile=host-inlining.txt
66
GENERATE_DEBUGINFO=false
77
# To also create the standalone
88
INSTALLABLES=TruffleRuby

mx.truffleruby/native-profiling

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
GRAALVM_SKIP_ARCHIVE=true
2+
DYNAMIC_IMPORTS=/tools,/compiler,/substratevm
3+
COMPONENTS=TruffleRuby,suite:tools,GraalVM compiler,SubstrateVM,Truffle Macro
4+
NATIVE_IMAGES=suite:sulong,lib:rubyvm
5+
EXTRA_IMAGE_BUILDER_ARGUMENTS=rubyvm:-H:+UnlockExperimentalVMOptions rubyvm:-H:BuildOutputJSONFile=native-image-build-rubyvm.json rubyvm:-H:-DeleteLocalSymbols rubyvm:-H:-UnlockExperimentalVMOptions
6+
GENERATE_DEBUGINFO=false
7+
# To also create the standalone
8+
INSTALLABLES=TruffleRuby
9+
BUILD_TARGETS=GRAALVM,GRAALVM_STANDALONES

0 commit comments

Comments
 (0)