@@ -43,21 +43,30 @@ local ci = import '../ci.jsonnet';
4343 nativeimages+:: ['lib:jsvm' , 'lib:jvmcicompiler' ],
4444 extraimagebuilderarguments+:: ['-H:+ReportExceptionStackTraces' ],
4545 run+: [
46- ['mx' , 'build' , '--dependencies=GRAALVM,GRAALJS_JVM_STANDALONE,GRAALJS_NATIVE_STANDALONE' ],
47- ['set-export' , 'GRAALVM_HOME' , ['mx' , '--quiet' , 'graalvm-home' ]],
48- ['${GRAALVM_HOME}/bin/js' , '--native' , '-e' , "print('hello:' + Array.from(new Array(10), (x,i) => i*i ).join('|'))" ],
49- ['${GRAALVM_HOME}/bin/js' , '--native' , '../../js-benchmarks/harness.js' , '--' , '../../js-benchmarks/octane-richards.js' , '--show-warmup' ],
46+ # build legacy graalvm component without native image
47+ ['mx' , '--native-images=' , 'build' , '--dependencies=GRAALVM' ],
48+ ['set-export' , 'GRAALVM_HOME' , ['mx' , '--native-images=' , '--quiet' , '--no-warning' , 'graalvm-home' ]],
49+ ['${GRAALVM_HOME}/bin/js' , '--version:graalvm' ],
50+ ['${GRAALVM_HOME}/bin/js' , '-e' , "print('hello:' + Array.from(new Array(10), (x,i) => i*i ).join('|'))" ],
51+ ['${GRAALVM_HOME}/bin/js' , '../../js-benchmarks/harness.js' , '--' , '../../js-benchmarks/octane-richards.js' , '--show-warmup' ],
5052 # standalone smoke tests
51- ['set-export' , 'STANDALONE_HOME' , ['mx' , '--quiet' , 'paths' , '--output' , 'GRAALJS_NATIVE_STANDALONE' ]],
52- ['${STANDALONE_HOME}/bin/js' , '--native' , '-e' , "print('hello:' + Array.from(new Array(10), (x,i) => i*i ).join('|'))" ],
53- ['${STANDALONE_HOME}/bin/js' , '--native' , '../../js-benchmarks/harness.js' , '--' , '../../js-benchmarks/octane-richards.js' , '--show-warmup' ],
54- ['${STANDALONE_HOME}/bin/js' , '--experimental-options' , '--js.webassembly' , '-e' , 'new WebAssembly.Module(new Uint8Array([0x00,0x61,0x73,0x6d,0x01,0x00,0x00,0x00]))' ],
55- ['set-export' , 'STANDALONE_HOME' , ['mx' , '--quiet' , 'paths' , '--output' , 'GRAALJS_JVM_STANDALONE' ]],
56- ['${STANDALONE_HOME}/bin/js' , '--jvm' , '-e' , "print('hello:' + Array.from(new Array(10), (x,i) => i*i ).join('|'))" ],
57- ['${STANDALONE_HOME}/bin/js' , '--jvm' , '../../js-benchmarks/harness.js' , '--' , '../../js-benchmarks/octane-richards.js' , '--show-warmup' ],
58- ['${STANDALONE_HOME}/bin/js' , '--experimental-options' , '--js.webassembly' , '-e' , 'new WebAssembly.Module(new Uint8Array([0x00,0x61,0x73,0x6d,0x01,0x00,0x00,0x00]))' ],
53+ ['mx' , 'build' , '--dependencies=GRAALJS_JVM_STANDALONE,GRAALJS_NATIVE_STANDALONE' ],
54+ ['set-export' , 'STANDALONE_HOME' , ['mx' , '--quiet' , '--no-warning' , 'paths' , '--output' , 'GRAALJS_NATIVE_STANDALONE' ]],
55+ ['${STANDALONE_HOME}/bin/js' , '--version:graalvm' ],
56+ ['${STANDALONE_HOME}/bin/js' , '-e' , "print('hello:' + Array.from(new Array(10), (x,i) => i*i ).join('|'))" ],
57+ ['${STANDALONE_HOME}/bin/js' , '../../js-benchmarks/harness.js' , '--' , '../../js-benchmarks/octane-richards.js' , '--show-warmup' ],
58+ ['${STANDALONE_HOME}/bin/js' , '--js.webassembly' , '-e' , 'new WebAssembly.Module(new Uint8Array([0x00,0x61,0x73,0x6d,0x01,0x00,0x00,0x00]))' ],
59+ ['${STANDALONE_HOME}/bin/js' , '--vm.Xss16m' , '../../js-benchmarks/harness.js' , '--' , '../../js-benchmarks/misc/havlak.js' , '--show-warmup' ],
60+ ['set-export' , 'STANDALONE_HOME' , ['mx' , '--quiet' , '--no-warning' , 'paths' , '--output' , 'GRAALJS_JVM_STANDALONE' ]],
61+ ['${STANDALONE_HOME}/bin/js' , '--version:graalvm' ],
62+ ['${STANDALONE_HOME}/bin/js' , '-e' , "print('hello:' + Array.from(new Array(10), (x,i) => i*i ).join('|'))" ],
63+ ['${STANDALONE_HOME}/bin/js' , '../../js-benchmarks/harness.js' , '--' , '../../js-benchmarks/octane-richards.js' , '--show-warmup' ],
64+ ['${STANDALONE_HOME}/bin/js' , '--js.webassembly' , '-e' , 'new WebAssembly.Module(new Uint8Array([0x00,0x61,0x73,0x6d,0x01,0x00,0x00,0x00]))' ],
65+ ['${STANDALONE_HOME}/bin/js' , '--vm.Xss16m' , '../../js-benchmarks/harness.js' , '--' , '../../js-benchmarks/misc/havlak.js' , '--show-warmup' ],
5966 # maven-downloader smoke test
60- ['VERBOSE_GRAALVM_LAUNCHERS=true' , '${STANDALONE_HOME}/bin/js-polyglot-get' , '-o' , 'maven downloader output' , '-a' , 'wasm' , '-v' , '23.1.3' ],
67+ ['set-export' , 'VERBOSE_GRAALVM_LAUNCHERS' , 'true' ],
68+ ['${STANDALONE_HOME}/bin/js-polyglot-get' , '-o' , 'maven downloader output' , '-a' , 'wasm' , '-v' , '23.1.3' ],
69+ ['unset' , 'VERBOSE_GRAALVM_LAUNCHERS' ],
6170 ],
6271 timelimit: '45:00' ,
6372 },
@@ -110,12 +119,12 @@ local ci = import '../ci.jsonnet';
110119 },
111120
112121 local auxEngineCache = {
113- suiteimports+:: ['vm' , ' substratevm' , 'tools' ],
122+ suiteimports+:: ['substratevm' , 'tools' ],
114123 nativeimages+:: ['lib:jsvm' ],
115124 graalvmtests:: '../../graalvm-tests' ,
116125 run+: [
117- ['mx' , 'build' ],
118- ['python' , self .graalvmtests + '/test.py' , '-g' , ['mx' , '--quiet' , 'paths' , '--output' , 'GRAALJS_NATIVE_STANDALONE' ], '--print-revisions' , '--keep-on-error' , 'test/aux-engine-cache' , 'test/repl' ],
126+ ['mx' , 'build' , '--dependencies=GRAALJS_NATIVE_STANDALONE' ],
127+ ['python' , self .graalvmtests + '/test.py' , '-g' , ['mx' , '--quiet' , '--no-warning' , ' paths' , '--output' , 'GRAALJS_NATIVE_STANDALONE' ], '--print-revisions' , '--keep-on-error' , 'test/aux-engine-cache' , 'test/repl' ],
119128 ],
120129 timelimit: '1:00:00' ,
121130 },
@@ -133,7 +142,8 @@ local ci = import '../ci.jsonnet';
133142 ], platforms=ci.styleGatePlatforms, defaultTarget=common.gate),
134143
135144 // Builds that should run on all supported platforms
136- local testingBuilds = generateBuilds([
145+
146+ local testingBuilds = local bs = [
137147 graalJs + gateTags('default' ) + ce + {name: 'default-ce' } +
138148 promoteToTarget(common.gate, [common.jdklatest + common.linux_amd64, common.jdklatest + common.linux_aarch64, common.jdklatest + common.windows_amd64]),
139149 graalJs + gateTags('default' ) + ee + {name: 'default-ee' } +
@@ -170,7 +180,16 @@ local ci = import '../ci.jsonnet';
170180 graalJs + downstreamSubstratevmEE + {environment+: {TAGS: 'pgo_collect_js' }} + {name: 'pgo-profiles' } +
171181 promoteToTarget(common.postMerge, [ci.mainGatePlatform]) +
172182 excludePlatforms([common.darwin_amd64]), # Too slow
173- ], defaultTarget=common.weekly),
183+ ];
184+ generateBuilds(bs, platforms=ci.jdklatestPlatforms, defaultTarget=common.weekly) +
185+ # jobs that depend on neither compiler nor substratevm should still run on jdk21
186+ generateBuilds([b + {suiteimports:: std.setDiff (std.set (b.suiteimports), std.set (['compiler' , 'substratevm' ]))} for b in bs
187+ if std.setInter (std.set (b.suiteimports), std.set (['compiler' , 'substratevm' ])) == []],
188+ platforms=ci.jdk21Platforms, defaultTarget=common.weekly) +
189+ # build and test standalones using jdk-latest + bootstrap graalvm jdk21
190+ generateBuilds([b for b in bs
191+ if std.count (['native-image-smoke-test' , 'aux-engine-cache' ], b.name) > 0 ],
192+ platforms=ci.jdk21unchainedPlatforms, defaultTarget=common.weekly),
174193
175194 // Builds that only need to run on one platform
176195 local otherBuilds = generateBuilds([
0 commit comments