5151
5252LLVM_FEATURE_FLAGS = ['-mnontrapping-fptoint' ]
5353
54+ FORCE64 = 0
55+
5456
5557class Benchmarker ():
5658 # called when we init the object, which is during startup, even if we are
@@ -205,12 +207,14 @@ def build(self, parent, filename, args, shared_args, emcc_args, native_args, nat
205207 OPTIMIZATIONS ,
206208 '-s' , 'INITIAL_MEMORY=256MB' ,
207209 '-s' , 'FILESYSTEM=0' ,
208- '--closure=1' ,
209- '-s' , 'MINIMAL_RUNTIME' ,
210210 '-s' , 'ENVIRONMENT=node,shell' ,
211211 '-s' , 'BENCHMARK=%d' % (1 if IGNORE_COMPILATION and not has_output_parser else 0 ),
212212 '-o' , final
213213 ] + shared_args + emcc_args + LLVM_FEATURE_FLAGS + self .extra_args
214+ if FORCE64 :
215+ cmd += ['--profiling' ]
216+ else :
217+ cmd += ['--closure=1' , '-sMINIMAL_RUNTIME' ]
214218 if 'FORCE_FILESYSTEM' in cmd :
215219 cmd = [arg if arg != 'FILESYSTEM=0' else 'FILESYSTEM=1' for arg in cmd ]
216220 if PROFILING :
@@ -353,22 +357,30 @@ def cleanup(self):
353357
354358# Benchmarkers
355359
356- benchmarkers = [
357- NativeBenchmarker ('clang' , [CLANG_CC ], [CLANG_CXX ]),
358- # NativeBenchmarker('gcc', ['gcc', '-no-pie'], ['g++', '-no-pie'])
359- ]
360+ benchmarkers = []
361+
362+ if not FORCE64 :
363+ benchmarkers += [
364+ NativeBenchmarker ('clang' , [CLANG_CC ], [CLANG_CXX ]),
365+ # NativeBenchmarker('gcc', ['gcc', '-no-pie'], ['g++', '-no-pie'])
366+ ]
360367
361368if config .V8_ENGINE and config .V8_ENGINE in config .JS_ENGINES :
362369 # avoid the baseline compiler running, because it adds a lot of noise
363370 # (the nondeterministic time it takes to get to the full compiler ends up
364371 # mattering as much as the actual benchmark)
365372 aot_v8 = config .V8_ENGINE + ['--no-liftoff' ]
366373 default_v8_name = os .environ .get ('EMBENCH_NAME' ) or 'v8'
367- benchmarkers += [
368- EmscriptenBenchmarker (default_v8_name , aot_v8 ),
369- EmscriptenBenchmarker (default_v8_name + '-lto' , aot_v8 , ['-flto' ]),
370- # EmscriptenWasm2CBenchmarker('wasm2c')
371- ]
374+ if FORCE64 :
375+ benchmarkers += [
376+ EmscriptenBenchmarker (default_v8_name , aot_v8 , ['-sMEMORY64=2' ]),
377+ ]
378+ else :
379+ benchmarkers += [
380+ EmscriptenBenchmarker (default_v8_name , aot_v8 ),
381+ EmscriptenBenchmarker (default_v8_name + '-lto' , aot_v8 , ['-flto' ]),
382+ # EmscriptenWasm2CBenchmarker('wasm2c')
383+ ]
372384 if os .path .exists (CHEERP_BIN ):
373385 benchmarkers += [
374386 # CheerpBenchmarker('cheerp-v8-wasm', aot_v8),
@@ -385,9 +397,14 @@ def cleanup(self):
385397 ]
386398
387399if config .NODE_JS and config .NODE_JS in config .JS_ENGINES :
388- benchmarkers += [
389- # EmscriptenBenchmarker('Node.js', config.NODE_JS),
390- ]
400+ if FORCE64 :
401+ benchmarkers += [
402+ EmscriptenBenchmarker ('Node.js' , config .NODE_JS , ['-sMEMORY64=2' ]),
403+ ]
404+ else :
405+ benchmarkers += [
406+ # EmscriptenBenchmarker('Node.js', config.NODE_JS),
407+ ]
391408
392409
393410class benchmark (common .RunnerCore ):
0 commit comments