diff --git a/ci/common.jsonnet b/ci/common.jsonnet index c1c5dc100a55..d3b4e8640cea 100644 --- a/ci/common.jsonnet +++ b/ci/common.jsonnet @@ -25,7 +25,9 @@ local common_json = import "../common.json"; # *************** local variants(name) = [name, name + "Debug", name + "-llvm"], # gets the JDK major version from a labsjdk version string (e.g., "ce-21+35-jvmci-23.1-b15" -> 21) - local parse_labsjdk_version(version) = + local parse_labsjdk_version(jdk) = + if jdk.name == "jpg-jdk" then jdk.version else + local version = jdk.version; assert std.startsWith(version, "ce-") || std.startsWith(version, "ee-") : "Unsupported labsjdk version: " + version; local number_prefix(str) = if std.length(str) == 0 || std.length(std.findSubstr(str[0], "0123456789")) == 0 then @@ -35,6 +37,12 @@ local common_json = import "../common.json"; ; std.parseInt(number_prefix(version[3:])) , + # gets the build_id from a labsjdk version string (e.g., "ce-21+35-jvmci-23.1-b15" -> 21) + local get_labsjdk_build_id(jdk) = + local _parts = std.split(jdk.version, "-"); + local _version_build_id = std.split(_parts[1], "+"); + _version_build_id[1] + , local jdks_data = { oraclejdk11: jdk_base + common_json.jdks["oraclejdk11"] + { jdk_version:: 11 }, } + { @@ -50,10 +58,18 @@ local common_json = import "../common.json"; [name]: jdk_base + common_json.jdks[name] + { jdk_version:: 21 } for name in ["oraclejdk21"] + variants("labsjdk-ce-21") + variants("labsjdk-ee-21") } + { - [name]: jdk_base + common_json.jdks[name] + { jdk_version:: parse_labsjdk_version(self.version), jdk_name:: "jdk-latest"} - for name in variants("labsjdk-ce-latest") + variants("labsjdk-ee-latest") + [name]: jdk_base + common_json.jdks[name] + { jdk_version:: parse_labsjdk_version(self), jdk_name:: "jdk-latest"} + for name in ["oraclejdk-latest"] + variants("labsjdk-ce-latest") + variants("labsjdk-ee-latest") }, assert std.assertEqual(std.objectFields(common_json.jdks), std.objectFields(jdks_data)), + # Verify oraclejdk-latest and labsjdk-ee-latest versions match + assert + local _labsjdk = common_json.jdks["labsjdk-ee-latest"]; + local _oraclejdk = common_json.jdks["oraclejdk-latest"]; + local _ov = "ee-%s+%s" % [_oraclejdk.version, _oraclejdk.build_id]; + local _lv = _labsjdk.version; + assert std.startsWith(_lv, _ov) : "update oraclejdk-latest to match labsjdk-ee-latest: %s+%s vs %s" % [_oraclejdk.version, _oraclejdk.build_id, _labsjdk.version]; + true, # The raw jdk data, the same as common_json.jdks + { jdk_version:: } jdks_data: jdks_data, @@ -78,6 +94,8 @@ local common_json = import "../common.json"; labsjdkLatestCE: self["labsjdk-ce-21"], labsjdkLatestEE: self["labsjdk-ee-21"], + + oraclejdkLatest: self["oraclejdk-latest"], }, # The devkits versions reflect those used to build the JVMCI JDKs (e.g., see devkit_platform_revisions in /make/conf/jib-profiles.js) diff --git a/ci_includes/publish-javadoc.jsonnet b/ci_includes/publish-javadoc.jsonnet index 1b79c0eed15c..6a0a6befaf67 100644 --- a/ci_includes/publish-javadoc.jsonnet +++ b/ci_includes/publish-javadoc.jsonnet @@ -5,9 +5,6 @@ local javadoc_publisher = { name: 'graal-publish-javadoc-' + utils.prefixed_jdk(self.jdk_version), - environment+: { - JVMCI_VERSION_CHECK: 'ignore', - }, run+: [ ["cd", "./sdk"], ["mx", "build"], @@ -62,7 +59,7 @@ }, local all_builds = [ - common.post_merge + linux_amd64 + common.labsjdk17 + javadoc_publisher, + common.post_merge + linux_amd64 + common.labsjdk21 + javadoc_publisher, ], // adds a "defined_in" field to all builds mentioning the location of this current file builds:: [{ defined_in: std.thisFile } + b for b in all_builds] diff --git a/common.json b/common.json index a020644e2eab..4ecf7e501a0e 100644 --- a/common.json +++ b/common.json @@ -42,6 +42,7 @@ "labsjdk-ee-21Debug": {"name": "labsjdk", "version": "ee-21+35-jvmci-23.1-b15-debug", "platformspecific": true }, "labsjdk-ee-21-llvm": {"name": "labsjdk", "version": "ee-21+35-jvmci-23.1-b15-sulong", "platformspecific": true }, + "oraclejdk-latest": {"name": "jpg-jdk", "version": "22", "build_id": "16", "release": true, "platformspecific": true, "extrabundles": ["static-libs"]}, "labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-22+16-jvmci-b01", "platformspecific": true }, "labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-22+16-jvmci-b01-debug", "platformspecific": true }, "labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-22+16-jvmci-b01-sulong", "platformspecific": true }, diff --git a/docs/reference-manual/native-image/LLVMBackend.md b/docs/reference-manual/native-image/LLVMBackend.md index d54e4999d13a..2f7239cba451 100644 --- a/docs/reference-manual/native-image/LLVMBackend.md +++ b/docs/reference-manual/native-image/LLVMBackend.md @@ -22,7 +22,6 @@ To enable the LLVM backend, pass the `-H:CompilerBackend=llvm` option to the `na ## Code Generation Options -* `-H:+SpawnIsolates`: enables isolates. (These are disabled by default when using the LLVM backend because they incur a performance penalty.) * `-H:+BitcodeOptimizations`: enables aggressive optimizations at the LLVM bitcode level. This is experimental and may cause bugs. ## Debugging Options diff --git a/sdk/mx.sdk/mx_sdk_vm.py b/sdk/mx.sdk/mx_sdk_vm.py index 053d9e3d4043..6c5011b03623 100644 --- a/sdk/mx.sdk/mx_sdk_vm.py +++ b/sdk/mx.sdk/mx_sdk_vm.py @@ -1199,12 +1199,13 @@ def _verify_graalvm_configs(args): parser = ArgumentParser(prog='mx verify-graalvm-configs', description='Verify registered GraalVM configs') parser.add_argument('--suites', help='comma-separated list of suites') parser.add_argument('--from', dest='start_from', help='start verification from the indicated env file') + parser.add_argument('--all', dest='all', help='verify all configs, otherwise exit on first error', action='store_true') args = parser.parse_args(args) suites = args.suites if args.suites is None else args.suites.split(',') - verify_graalvm_configs(suites=suites, start_from=args.start_from) + verify_graalvm_configs(suites=suites, start_from=args.start_from, check_all=args.all) -def verify_graalvm_configs(suites=None, start_from=None): +def verify_graalvm_configs(suites=None, start_from=None, check_all=False): """ Check the consistency of registered GraalVM configs. :param suites: optionally restrict the check to the configs registered by this list of suites. @@ -1217,6 +1218,8 @@ def verify_graalvm_configs(suites=None, start_from=None): if env_var in child_env: del child_env[env_var] started = start_from is None + on_error = mx.warn if check_all else mx.abort + has_errors = False for dist_name, _, components, suite, env_file in _vm_configs: if env_file is not False and (suites is None or suite.name in suites): _env_file = env_file or dist_name @@ -1249,7 +1252,8 @@ def verify_graalvm_configs(suites=None, start_from=None): added = list(got_components_set - components_set) removed = list(components_set - got_components_set) diff = ('Added:\n{}\n'.format(added) if added else '') + ('Removed:\n{}\n'.format(removed) if removed else '') - mx.abort("""\ + has_errors = True + on_error("""\ Unexpected GraalVM dist name for env file '{}' in suite '{}'. Expected dist name: '{}' Actual dist name: '{}'. @@ -1258,3 +1262,5 @@ def verify_graalvm_configs(suites=None, start_from=None): Actual component list: {} {}Did you forget to update the registration of the GraalVM config?""".format(_env_file, suite.name, graalvm_dist_name, '\n'.join(out.lines + err.lines), sorted(components), got_components, diff)) + if has_errors: + mx.abort("Errors during verification") diff --git a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/AbstractVirtualInvokeTypeFlow.java b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/AbstractVirtualInvokeTypeFlow.java index 9e3badc59ac7..22d4539bd387 100644 --- a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/AbstractVirtualInvokeTypeFlow.java +++ b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/AbstractVirtualInvokeTypeFlow.java @@ -118,7 +118,7 @@ public Collection getAllCallees() { } @Override - public final Collection getAllComputedCallees() { + public Collection getCalleesForReturnLinking() { return getAllCallees(); } diff --git a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/DirectInvokeTypeFlow.java b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/DirectInvokeTypeFlow.java index 2f94582e3bc9..a747ebce8cb7 100644 --- a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/DirectInvokeTypeFlow.java +++ b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/DirectInvokeTypeFlow.java @@ -78,7 +78,7 @@ public final Collection getAllCallees() { } @Override - public final Collection getAllComputedCallees() { + public final Collection getCalleesForReturnLinking() { return getAllCalleesHelper(true); } diff --git a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/InvokeTypeFlow.java b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/InvokeTypeFlow.java index 9cecddb820bb..47b243b9ba39 100644 --- a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/InvokeTypeFlow.java +++ b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/flow/InvokeTypeFlow.java @@ -348,10 +348,10 @@ public Collection getOriginalCallees() { public abstract Collection getAllCallees(); /** - * Returns all callees which have been computed for this method. It is possible that these - * callees have yet to have their typeflow created and also they may not be fully linked. + * Returns all callees which have been computed for this method which should be linked to the + * return. It is possible that these callees have yet to have their typeflow created. */ - public abstract Collection getAllComputedCallees(); + public abstract Collection getCalleesForReturnLinking(); @Override public BytecodePosition getPosition() { diff --git a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/typestate/DefaultAnalysisPolicy.java b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/typestate/DefaultAnalysisPolicy.java index d1cd64fc85b3..de12e5a8732a 100644 --- a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/typestate/DefaultAnalysisPolicy.java +++ b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/typestate/DefaultAnalysisPolicy.java @@ -238,10 +238,14 @@ public void linkActualReturn(PointsToAnalysis bb, boolean isStatic, InvokeTypeFl * may not be fully linked if they have been {@code DirectInvokeTypeFlow#initializeCallees} * but not yet processed. */ - for (AnalysisMethod callee : invoke.getAllComputedCallees()) { + for (AnalysisMethod callee : invoke.getCalleesForReturnLinking()) { MethodFlowsGraphInfo calleeFlows = ((PointsToAnalysisMethod) callee).getTypeFlow().getOrCreateMethodFlowsGraphInfo(bb, invoke); invoke.linkReturn(bb, isStatic, calleeFlows); } + /* + * If the invoke is saturated then we must ensure the actual return is linked to the context + * insensitive invoke. + */ if (invoke.isSaturated()) { InvokeTypeFlow contextInsensitiveInvoke = invoke.getTargetMethod().getContextInsensitiveVirtualInvoke(invoke.getCallerMultiMethodKey()); contextInsensitiveInvoke.getActualReturn().addUse(bb, invoke.getActualReturn()); diff --git a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/typestate/DefaultVirtualInvokeTypeFlow.java b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/typestate/DefaultVirtualInvokeTypeFlow.java index d5b5b574ce31..48938b3c99b8 100644 --- a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/typestate/DefaultVirtualInvokeTypeFlow.java +++ b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/typestate/DefaultVirtualInvokeTypeFlow.java @@ -26,6 +26,7 @@ import java.lang.reflect.Modifier; import java.util.Collection; +import java.util.Collections; import com.oracle.graal.pointsto.PointsToAnalysis; import com.oracle.graal.pointsto.constraints.UnsupportedFeatureException; @@ -133,6 +134,10 @@ public void onObservedUpdate(PointsToAnalysis bb) { @Override public void onObservedSaturated(PointsToAnalysis bb, TypeFlow observed) { + /* Eagerly ensure context insensitive invoke is created before the saturated flag is set. */ + AbstractVirtualInvokeTypeFlow contextInsensitiveInvoke = (AbstractVirtualInvokeTypeFlow) targetMethod.initAndGetContextInsensitiveInvoke(bb, source, false, callerMultiMethodKey); + contextInsensitiveInvoke.addInvokeLocation(getSource()); + setSaturated(); /* @@ -164,10 +169,6 @@ public void onObservedSaturated(PointsToAnalysis bb, TypeFlow observed) { } } - /* Link the saturated invoke. */ - AbstractVirtualInvokeTypeFlow contextInsensitiveInvoke = (AbstractVirtualInvokeTypeFlow) targetMethod.initAndGetContextInsensitiveInvoke(bb, source, false, callerMultiMethodKey); - contextInsensitiveInvoke.addInvokeLocation(getSource()); - /* * Link the call site actual parameters to the saturated invoke actual parameters. The * receiver is already set in the saturated invoke. @@ -214,6 +215,15 @@ public Collection getAllCallees() { } } + public Collection getCalleesForReturnLinking() { + if (isSaturated()) { + /* If the invoke has saturated, then it is not necessary to link the callees. */ + return Collections.emptyList(); + } else { + return super.getAllCallees(); + } + } + @Override public Collection getAllNonStubCalleesFlows(PointsToAnalysis bb) { return DefaultInvokeTypeFlowUtil.getAllNonStubCalleesFlows(this); diff --git a/vm/mx.vm/ce-complete b/vm/mx.vm/ce-complete index 98f71ff0803f..85288aede9c4 100644 --- a/vm/mx.vm/ce-complete +++ b/vm/mx.vm/ce-complete @@ -1,4 +1,4 @@ DYNAMIC_IMPORTS=/compiler,/espresso,/graal-js,/graal-nodejs,/regex,/sdk,/substratevm,/sulong,/tools,/truffle,/wasm,fastr,graalpython,truffleruby -COMPONENTS=antlr4,cmp,cov,dap,ellvm,ejvm,gu,gvm,gwa,icu4j,ins,insight,insightheap,java,js,jsl,jss,lg,llp,llrc,llrl,llrn,lsp,nfi-libffi,nfi,ni,nic,nil,njs,njsl,poly,polynative,pro,pyn,pynl,R,rby,rbyl,rgx,sdk,sdkl,svm,svmt,svml,svmnfi,svmsl,tfl,tfla,tflc,tflm,truffle-json,vvm +COMPONENTS=antlr4,cmp,cov,dap,ellvm,ejvm,gu,gvm,gwa,icu4j,xz,ins,insight,insightheap,java,js,jsl,jss,lg,llp,llrc,llrl,llrn,lsp,nfi-libffi,nfi,ni,nic,nil,njs,njsl,poly,polynative,pro,pyn,pynl,R,rby,rbyl,rgx,sdk,sdkl,svm,svmt,svml,svmnfi,svmsl,tfl,tfla,tflc,tflm,truffle-json,vvm NATIVE_IMAGES=lib:pythonvm,graalvm-native-binutil,graalvm-native-clang,graalvm-native-clang-cl,graalvm-native-clang++,graalvm-native-flang,graalvm-native-ld,lib:jsvm,lib:javavm,lib:graal-nodejs,lib:jvmcicompiler,lib:native-image-agent,lib:native-image-diagnostics-agent,lib:llvmvm,native-image,lib:rubyvm,lib:wasmvm,graalpy-polyglot-get DISABLE_INSTALLABLES=false diff --git a/vm/mx.vm/ce-darwin-complete b/vm/mx.vm/ce-darwin-complete index 98f71ff0803f..85288aede9c4 100644 --- a/vm/mx.vm/ce-darwin-complete +++ b/vm/mx.vm/ce-darwin-complete @@ -1,4 +1,4 @@ DYNAMIC_IMPORTS=/compiler,/espresso,/graal-js,/graal-nodejs,/regex,/sdk,/substratevm,/sulong,/tools,/truffle,/wasm,fastr,graalpython,truffleruby -COMPONENTS=antlr4,cmp,cov,dap,ellvm,ejvm,gu,gvm,gwa,icu4j,ins,insight,insightheap,java,js,jsl,jss,lg,llp,llrc,llrl,llrn,lsp,nfi-libffi,nfi,ni,nic,nil,njs,njsl,poly,polynative,pro,pyn,pynl,R,rby,rbyl,rgx,sdk,sdkl,svm,svmt,svml,svmnfi,svmsl,tfl,tfla,tflc,tflm,truffle-json,vvm +COMPONENTS=antlr4,cmp,cov,dap,ellvm,ejvm,gu,gvm,gwa,icu4j,xz,ins,insight,insightheap,java,js,jsl,jss,lg,llp,llrc,llrl,llrn,lsp,nfi-libffi,nfi,ni,nic,nil,njs,njsl,poly,polynative,pro,pyn,pynl,R,rby,rbyl,rgx,sdk,sdkl,svm,svmt,svml,svmnfi,svmsl,tfl,tfla,tflc,tflm,truffle-json,vvm NATIVE_IMAGES=lib:pythonvm,graalvm-native-binutil,graalvm-native-clang,graalvm-native-clang-cl,graalvm-native-clang++,graalvm-native-flang,graalvm-native-ld,lib:jsvm,lib:javavm,lib:graal-nodejs,lib:jvmcicompiler,lib:native-image-agent,lib:native-image-diagnostics-agent,lib:llvmvm,native-image,lib:rubyvm,lib:wasmvm,graalpy-polyglot-get DISABLE_INSTALLABLES=false diff --git a/vm/mx.vm/ce-python b/vm/mx.vm/ce-python index 87d89746fd4d..518a41bdfd74 100644 --- a/vm/mx.vm/ce-python +++ b/vm/mx.vm/ce-python @@ -1,5 +1,4 @@ -# Do not modify this env file without updating the Graal.Python benchmark builders -DYNAMIC_IMPORTS=/compiler,/graal-js,/regex,/sdk,/substratevm,/sulong,/tools,/truffle,graalpython -COMPONENTS=antlr4,cmp,cov,dap,dis,gu,gvm,icu4j,ins,insight,insightheap,lg,llp,llrc,llrl,llrn,lsp,nfi-libffi,pbm,pmh,poly,polynative,pro,pyn,pynl,rgx,sdk,sdkl,tfl,tfla,tflc,tflm,truffle-json -NATIVE_IMAGES=lib:pythonvm,lib:jvmcicompiler,graalpy-polyglot-get +DYNAMIC_IMPORTS=/compiler,/regex,/sdk,/substratevm,/sulong,/tools,/truffle,graalpython +COMPONENTS=antlr4,cmp,cov,dap,dis,gu,gvm,icu4j,xz,ins,insight,insightheap,lg,llp,llrc,llrl,llrn,lsp,nfi-libffi,pbm,pmh,poly,polynative,pro,pyn,pynl,rgx,sdk,sdkl,tfl,tfla,tflc,tflm,truffle-json +NATIVE_IMAGES=lib:pythonvm,lib:jvmcicompiler,graalpy-polyglot-get,graalvm-native-binutil,graalvm-native-clang,graalvm-native-clang-cl,graalvm-native-clang++,graalvm-native-flang,graalvm-native-ld DISABLE_INSTALLABLES=False diff --git a/vm/mx.vm/mx_vm.py b/vm/mx.vm/mx_vm.py index 7d2c1aeb3982..d27a63813c4c 100644 --- a/vm/mx.vm/mx_vm.py +++ b/vm/mx.vm/mx_vm.py @@ -194,13 +194,13 @@ def local_path_to_url(args): ce_unchained_components = ['bnative-image-configure', 'cmp', 'lg', 'ni', 'nic', 'nil', 'nr_lib_jvmcicompiler', 'sdkc', 'sdkni', 'svm', 'svmforeign', 'svmsl', 'svmt', 'tflc', 'tflsm'] ce_components_minimal = ['bpolyglot', 'cmp', 'cov', 'dap', 'gu', 'gvm', 'ins', 'insight', 'insightheap', 'lg', 'libpoly', 'lsp', 'nfi-libffi', 'nfi', 'poly', 'polynative', 'pro', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'spolyglot', 'tfl', 'tfla', 'tflc', 'tflm', 'truffle-json'] ce_components = ce_components_minimal + ['nr_lib_jvmcicompiler', 'bnative-image-configure', 'ni', 'nic', 'nil', 'svm', 'svmt', 'svmnfi', 'svmsl', 'svmforeign'] -ce_win_complete_components = ['antlr4', 'bnative-image-configure', 'bpolyglot', 'cmp', 'cov', 'dap', 'ejvm', 'gu', 'gvm', 'gwa', 'gwal', 'icu4j', 'ins', 'insight', 'insightheap', 'java', 'js', 'jsl', 'jss', 'lg', 'libpoly', 'llp', 'llrc', 'llrl', 'llrlf', 'llrn', 'lsp', 'nfi-libffi', 'nfi', 'ni', 'nic', 'nil', 'njs', 'njsl', 'poly', 'polynative', 'pro', 'pyn', 'pynl', 'rgx', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'spolyglot', 'svm', 'svmt', 'svmnfi', 'svmsl', 'svmforeign', 'tfl', 'tfla', 'tflc', 'tflm', 'truffle-json', 'vvm'] +ce_win_complete_components = ['antlr4', 'bnative-image-configure', 'bpolyglot', 'cmp', 'cov', 'dap', 'ejvm', 'gu', 'gvm', 'gwa', 'gwal', 'icu4j', 'xz', 'ins', 'insight', 'insightheap', 'java', 'js', 'jsl', 'jss', 'lg', 'libpoly', 'llp', 'llrc', 'llrl', 'llrlf', 'llrn', 'lsp', 'nfi-libffi', 'nfi', 'ni', 'nic', 'nil', 'njs', 'njsl', 'poly', 'polynative', 'pro', 'pyn', 'pynl', 'rgx', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'spolyglot', 'svm', 'svmt', 'svmnfi', 'svmsl', 'svmforeign', 'tfl', 'tfla', 'tflc', 'tflm', 'truffle-json', 'vvm'] ce_aarch64_complete_components = ce_win_complete_components + ['rby', 'rbyl', 'svml'] ce_complete_components = ce_aarch64_complete_components + ['ellvm', 'R', 'bRMain', 'xz'] ce_darwin_aarch64_complete_components = list(ce_aarch64_complete_components) ce_darwin_aarch64_complete_components.remove('svml') # GR-34811 / GR-40147 ce_ruby_components = ['antlr4', 'cmp', 'cov', 'dap', 'gvm', 'icu4j', 'ins', 'insight', 'insightheap', 'lg', 'llp', 'llrc', 'llrlf', 'llrn', 'lsp', 'nfi-libffi', 'nfi', 'pro', 'rby', 'rbyl', 'rgx', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'tfl', 'tfla', 'tflc', 'tflm', 'truffle-json'] -ce_python_components = llvm_components + ['antlr4', 'sllvmvm', 'bpolybench', 'bpolyglot', 'cmp', 'cov', 'dap', 'dis', 'gu', 'gvm', 'icu4j', 'ins', 'insight', 'insightheap', 'lg', 'libpoly', 'llp', 'llrc', 'llrl', 'llrlf', 'llrn', 'lsp', 'nfi-libffi', 'nfi', 'pbm', 'pmh', 'poly', 'polynative', 'pro', 'pyn', 'pynl', 'rgx', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'spolyglot', 'tfl', 'tfla', 'tflc', 'tflm', 'truffle-json'] +ce_python_components = ['antlr4', 'sllvmvm', 'bpolybench', 'bpolyglot', 'cmp', 'cov', 'dap', 'dis', 'gu', 'gvm', 'icu4j', 'xz', 'ins', 'insight', 'insightheap', 'lg', 'libpoly', 'llp', 'llrc', 'llrl', 'llrlf', 'llrn', 'lsp', 'nfi-libffi', 'nfi', 'pbm', 'pmh', 'poly', 'polynative', 'pro', 'pyn', 'pynl', 'rgx', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'spolyglot', 'tfl', 'tfla', 'tflc', 'tflm', 'truffle-json'] ce_fastr_components = ce_components + llvm_components + ['antlr4', 'xz', 'sllvmvm', 'llp', 'bnative-image', 'snative-image-agent', 'R', 'bRMain', 'bnative-image-configure', 'llrc', 'snative-image-diagnostics-agent', 'llrn', 'llrl', 'llrlf'] ce_no_native_components = ['bpolyglot', 'cmp', 'cov', 'dap', 'gu', 'gvm', 'ins', 'insight', 'insightheap', 'lsp', 'nfi-libffi', 'nfi', 'polynative', 'pro', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'spolyglot', 'tfl', 'tfla', 'tflc', 'tflm', 'truffle-json', 'libpoly', 'poly'] @@ -229,9 +229,9 @@ def local_path_to_url(args): mx_sdk_vm.register_vm_config('toolchain-only', ['antlr4', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'tfl', 'tfla', 'tflc', 'tflm', 'nfi-libffi', 'nfi', 'cmp', 'llp', 'llrc', 'llrlf', 'llrn'], _suite) mx_sdk_vm.register_vm_config('libgraal-bash', llvm_components + ['cmp', 'gu', 'gvm', 'lg', 'nfi-libffi', 'nfi', 'poly', 'polynative', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'tfl', 'tfla', 'tflc', 'tflm', 'bpolyglot'], _suite, env_file=False) mx_sdk_vm.register_vm_config('toolchain-only-bash', llvm_components + ['antlr4', 'tfl', 'tfla', 'tflc', 'tflm', 'gu', 'gvm', 'polynative', 'llp', 'nfi-libffi', 'nfi', 'svml', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'llrc', 'llrlf', 'llrn', 'cmp'], _suite, env_file=False) -mx_sdk_vm.register_vm_config('ce', llvm_components + ['antlr4', 'java', 'libpoly', 'sjavavm', 'spolyglot', 'ejvm', 'sjsvm', 'sllvmvm', 'bnative-image', 'srubyvm', 'pynl', 'spythonvm', 'pyn', 'cmp', 'gwa', 'gwal', 'icu4j', 'js', 'jsl', 'jss', 'lg', 'llp', 'nfi-libffi', 'nfi', 'ni', 'nil', 'pbm', 'pmh', 'pbi', 'rby', 'rbyl', 'rgx', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'llrc', 'llrn', 'llrl', 'llrlf', 'snative-image-agent', 'snative-image-diagnostics-agent', 'svm', 'svmt', 'svmnfi', 'svmsl', 'svmforeign', 'swasmvm', 'tfl', 'tfla', 'tflc', 'tflm', 'bgraalpy-polyglot-get'], _suite, env_file='polybench-ce') -mx_sdk_vm.register_vm_config('ce', ['bnative-image', 'bpolybench', 'cmp', 'icu4j', 'lg', 'nfi', 'ni', 'nil', 'pbi', 'pbm', 'pmh', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'snative-image-agent', 'snative-image-diagnostics-agent', 'svm', 'svmt', 'svmnfi', 'svmsl', 'svmforeign', 'tfl', 'tfla', 'tflc', 'tflm'], _suite, dist_name='ce', env_file='polybench-ctw-ce') -mx_sdk_vm.register_vm_config('ce', ['pbm', 'pmh', 'pbi', 'ni', 'icu4j', 'js', 'jsl', 'jss', 'lg', 'nfi-libffi', 'nfi', 'tfl', 'tfla', 'tflc', 'svm', 'svmt', 'nil', 'rgx', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'cmp', 'tflm', 'svmnfi', 'svmsl', 'svmforeign', 'bnative-image', 'sjsvm', 'snative-image-agent', 'snative-image-diagnostics-agent'], _suite, env_file='polybench-nfi-ce') +mx_sdk_vm.register_vm_config('ce', llvm_components + ['antlr4', 'java', 'libpoly', 'sjavavm', 'spolyglot', 'ejvm', 'sjsvm', 'sllvmvm', 'bnative-image', 'srubyvm', 'pynl', 'spythonvm', 'pyn', 'cmp', 'gwa', 'gwal', 'icu4j', 'xz', 'js', 'jsl', 'jss', 'lg', 'llp', 'nfi-libffi', 'nfi', 'ni', 'nil', 'pbm', 'pmh', 'pbi', 'rby', 'rbyl', 'rgx', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'llrc', 'llrn', 'llrl', 'llrlf', 'snative-image-agent', 'snative-image-diagnostics-agent', 'svm', 'svmt', 'svmnfi', 'svmsl', 'svmforeign', 'swasmvm', 'tfl', 'tfla', 'tflc', 'tflm', 'bgraalpy-polyglot-get'], _suite, env_file='polybench-ce') +mx_sdk_vm.register_vm_config('ce', ['bnative-image', 'bpolybench', 'cmp', 'icu4j', 'xz', 'lg', 'nfi', 'ni', 'nil', 'pbi', 'pbm', 'pmh', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'snative-image-agent', 'snative-image-diagnostics-agent', 'svm', 'svmt', 'svmnfi', 'svmsl', 'svmforeign', 'tfl', 'tfla', 'tflc', 'tflm'], _suite, dist_name='ce', env_file='polybench-ctw-ce') +mx_sdk_vm.register_vm_config('ce', ['pbm', 'pmh', 'pbi', 'ni', 'icu4j', 'xz', 'js', 'jsl', 'jss', 'lg', 'nfi-libffi', 'nfi', 'tfl', 'tfla', 'tflc', 'svm', 'svmt', 'nil', 'rgx', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'cmp', 'tflm', 'svmnfi', 'svmsl', 'svmforeign', 'bnative-image', 'sjsvm', 'snative-image-agent', 'snative-image-diagnostics-agent'], _suite, env_file='polybench-nfi-ce') mx_sdk_vm.register_vm_config('ce', llvm_components + ['antlr4', 'sllvmvm', 'bnative-image', 'cmp', 'lg', 'llrc', 'llrl', 'llrlf', 'llrn', 'nfi-libffi', 'nfi', 'ni', 'nil', 'pbm', 'pbi', 'sdk', 'sdkni', 'sdkc', 'sdkl', 'snative-image-agent', 'snative-image-diagnostics-agent', 'svm', 'svmt', 'svmnfi', 'svmsl', 'svmforeign', 'tfl', 'tfla', 'tflc', 'tflm'], _suite, env_file='polybench-sulong-ce') if mx.get_os() == 'windows': diff --git a/vm/mx.vm/polybench-ctw-ce b/vm/mx.vm/polybench-ctw-ce index 96b2ee9a52ae..286165aecad2 100644 --- a/vm/mx.vm/polybench-ctw-ce +++ b/vm/mx.vm/polybench-ctw-ce @@ -1,4 +1,4 @@ DYNAMIC_IMPORTS=/compiler,/sdk,/substratevm,/truffle -COMPONENTS=cmp,icu4j,lg,ni,nil,pbm,pmh,pbi,sdk,sdkl,svm,svmt,svmnfi,svmsl,tfl,tfla,tflc,tflm +COMPONENTS=cmp,icu4j,xz,lg,ni,nil,pbm,pmh,pbi,sdk,sdkl,svm,svmt,svmnfi,svmsl,tfl,tfla,tflc,tflm NATIVE_IMAGES=lib:jvmcicompiler DISABLE_INSTALLABLES=False diff --git a/vm/mx.vm/polybench-nfi-ce b/vm/mx.vm/polybench-nfi-ce index 5a4e946c7312..7c8327016b10 100644 --- a/vm/mx.vm/polybench-nfi-ce +++ b/vm/mx.vm/polybench-nfi-ce @@ -1,5 +1,5 @@ DYNAMIC_IMPORTS=/compiler,/graal-js,/regex,/sdk,/substratevm,/truffle -COMPONENTS=cmp,icu4j,js,jsl,jss,lg,nfi-libffi,ni,nil,pbm,pmh,pbi,rgx,sdk,sdkl,svm,svmt,svmnfi,svmsl,tfl,tfla,tflc,tflm +COMPONENTS=cmp,icu4j,xz,js,jsl,jss,lg,nfi-libffi,ni,nil,pbm,pmh,pbi,rgx,sdk,sdkl,svm,svmt,svmnfi,svmsl,tfl,tfla,tflc,tflm EXCLUDE_COMPONENTS=libpoly NATIVE_IMAGES=lib:jvmcicompiler,polybench DISABLE_INSTALLABLES=False diff --git a/vm/mx.vm/suite.py b/vm/mx.vm/suite.py index 7a63151afd77..38494e0fc6eb 100644 --- a/vm/mx.vm/suite.py +++ b/vm/mx.vm/suite.py @@ -65,7 +65,7 @@ }, { "name": "graalpython", - "version": "9807f8e2d574e39d44d0cf2ee6e5d0540e2feb0e", + "version": "adf88b676ba8dc20b90370c216ab363f02d75318", "dynamic": True, "urls": [ {"url": "https://github.com/graalvm/graalpython.git", "kind": "git"},