OLD | NEW |
1 // Modified embenchen to direct to asm-wasm. | 1 // Modified embenchen to direct to asm-wasm. |
2 // Flags: --expose-wasm | 2 // Flags: --validate-asm --allow-natives-syntax |
3 | 3 |
4 var EXPECTED_OUTPUT = 'final: 840.\n'; | 4 var EXPECTED_OUTPUT = 'final: 840.\n'; |
5 var Module = { | 5 var Module = { |
6 arguments: [1], | 6 arguments: [1], |
7 print: function(x) {Module.printBuffer += x + '\n';}, | 7 print: function(x) {Module.printBuffer += x + '\n';}, |
8 preRun: [function() {Module.printBuffer = ''}], | 8 preRun: [function() {Module.printBuffer = ''}], |
9 postRun: [function() { | 9 postRun: [function() { |
10 assertEquals(EXPECTED_OUTPUT, Module.printBuffer); | 10 assertEquals(EXPECTED_OUTPUT, Module.printBuffer); |
11 }], | 11 }], |
12 }; | 12 }; |
(...skipping 5593 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5606 | 5606 |
5607 | 5607 |
5608 var Math_min = Math.min; | 5608 var Math_min = Math.min; |
5609 function asmPrintInt(x, y) { | 5609 function asmPrintInt(x, y) { |
5610 Module.print('int ' + x + ',' + y);// + ' ' + new Error().stack); | 5610 Module.print('int ' + x + ',' + y);// + ' ' + new Error().stack); |
5611 } | 5611 } |
5612 function asmPrintFloat(x, y) { | 5612 function asmPrintFloat(x, y) { |
5613 Module.print('float ' + x + ',' + y);// + ' ' + new Error().stack); | 5613 Module.print('float ' + x + ',' + y);// + ' ' + new Error().stack); |
5614 } | 5614 } |
5615 // EMSCRIPTEN_START_ASM | 5615 // EMSCRIPTEN_START_ASM |
5616 var asm = Wasm.instantiateModuleFromAsm((function Module(global, env, buffer) { | 5616 var ModuleFunc; |
| 5617 var asm = (ModuleFunc = function(global, env, buffer) { |
5617 'use asm'; | 5618 'use asm'; |
5618 var HEAP8 = new global.Int8Array(buffer); | 5619 var HEAP8 = new global.Int8Array(buffer); |
5619 var HEAP16 = new global.Int16Array(buffer); | 5620 var HEAP16 = new global.Int16Array(buffer); |
5620 var HEAP32 = new global.Int32Array(buffer); | 5621 var HEAP32 = new global.Int32Array(buffer); |
5621 var HEAPU8 = new global.Uint8Array(buffer); | 5622 var HEAPU8 = new global.Uint8Array(buffer); |
5622 var HEAPU16 = new global.Uint16Array(buffer); | 5623 var HEAPU16 = new global.Uint16Array(buffer); |
5623 var HEAPU32 = new global.Uint32Array(buffer); | 5624 var HEAPU32 = new global.Uint32Array(buffer); |
5624 var HEAPF32 = new global.Float32Array(buffer); | 5625 var HEAPF32 = new global.Float32Array(buffer); |
5625 var HEAPF64 = new global.Float64Array(buffer); | 5626 var HEAPF64 = new global.Float64Array(buffer); |
5626 | 5627 |
(...skipping 2243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7870 tempRet0 = i1; | 7871 tempRet0 = i1; |
7871 } | 7872 } |
7872 function stackSave() { | 7873 function stackSave() { |
7873 return STACKTOP | 0; | 7874 return STACKTOP | 0; |
7874 } | 7875 } |
7875 | 7876 |
7876 // EMSCRIPTEN_END_FUNCS | 7877 // EMSCRIPTEN_END_FUNCS |
7877 | 7878 |
7878 | 7879 |
7879 return { _strlen: _strlen, _free: _free, _main: _main, _memset: _memset, _mall
oc: _malloc, _memcpy: _memcpy, runPostSets: runPostSets, stackAlloc: stackAlloc,
stackSave: stackSave, stackRestore: stackRestore, setThrew: setThrew, setTempRe
t0: setTempRet0, setTempRet1: setTempRet1, setTempRet2: setTempRet2, setTempRet3
: setTempRet3, setTempRet4: setTempRet4, setTempRet5: setTempRet5, setTempRet6:
setTempRet6, setTempRet7: setTempRet7, setTempRet8: setTempRet8, setTempRet9: se
tTempRet9 }; | 7880 return { _strlen: _strlen, _free: _free, _main: _main, _memset: _memset, _mall
oc: _malloc, _memcpy: _memcpy, runPostSets: runPostSets, stackAlloc: stackAlloc,
stackSave: stackSave, stackRestore: stackRestore, setThrew: setThrew, setTempRe
t0: setTempRet0, setTempRet1: setTempRet1, setTempRet2: setTempRet2, setTempRet3
: setTempRet3, setTempRet4: setTempRet4, setTempRet5: setTempRet5, setTempRet6:
setTempRet6, setTempRet7: setTempRet7, setTempRet8: setTempRet8, setTempRet9: se
tTempRet9 }; |
7880 }).toString(), | 7881 }) |
7881 // EMSCRIPTEN_END_ASM | 7882 // EMSCRIPTEN_END_ASM |
7882 { "Math": Math, "Int8Array": Int8Array, "Int16Array": Int16Array, "Int32Array":
Int32Array, "Uint8Array": Uint8Array, "Uint16Array": Uint16Array, "Uint32Array":
Uint32Array, "Float32Array": Float32Array, "Float64Array": Float64Array }, { "a
bort": abort, "assert": assert, "asmPrintInt": asmPrintInt, "asmPrintFloat": asm
PrintFloat, "min": Math_min, "_fflush": _fflush, "_emscripten_memcpy_big": _emsc
ripten_memcpy_big, "_printf": _printf, "_send": _send, "_pwrite": _pwrite, "_abo
rt": _abort, "___setErrNo": ___setErrNo, "_fwrite": _fwrite, "_sbrk": _sbrk, "_t
ime": _time, "_mkport": _mkport, "__reallyNegative": __reallyNegative, "__format
String": __formatString, "_fileno": _fileno, "_write": _write, "_fprintf": _fpri
ntf, "_sysconf": _sysconf, "___errno_location": ___errno_location, "STACKTOP": S
TACKTOP, "STACK_MAX": STACK_MAX, "tempDoublePtr": tempDoublePtr, "ABORT": ABORT,
"NaN": NaN, "Infinity": Infinity }, buffer); | 7883 ({ "Math": Math, "Int8Array": Int8Array, "Int16Array": Int16Array, "Int32Array":
Int32Array, "Uint8Array": Uint8Array, "Uint16Array": Uint16Array, "Uint32Array"
: Uint32Array, "Float32Array": Float32Array, "Float64Array": Float64Array }, { "
abort": abort, "assert": assert, "asmPrintInt": asmPrintInt, "asmPrintFloat": as
mPrintFloat, "min": Math_min, "_fflush": _fflush, "_emscripten_memcpy_big": _ems
cripten_memcpy_big, "_printf": _printf, "_send": _send, "_pwrite": _pwrite, "_ab
ort": _abort, "___setErrNo": ___setErrNo, "_fwrite": _fwrite, "_sbrk": _sbrk, "_
time": _time, "_mkport": _mkport, "__reallyNegative": __reallyNegative, "__forma
tString": __formatString, "_fileno": _fileno, "_write": _write, "_fprintf": _fpr
intf, "_sysconf": _sysconf, "___errno_location": ___errno_location, "STACKTOP":
STACKTOP, "STACK_MAX": STACK_MAX, "tempDoublePtr": tempDoublePtr, "ABORT": ABORT
, "NaN": NaN, "Infinity": Infinity }, buffer); |
| 7884 assertTrue(%IsAsmWasmCode(ModuleFunc)); |
7883 var _strlen = Module["_strlen"] = asm["_strlen"]; | 7885 var _strlen = Module["_strlen"] = asm["_strlen"]; |
7884 var _free = Module["_free"] = asm["_free"]; | 7886 var _free = Module["_free"] = asm["_free"]; |
7885 var _main = Module["_main"] = asm["_main"]; | 7887 var _main = Module["_main"] = asm["_main"]; |
7886 var _memset = Module["_memset"] = asm["_memset"]; | 7888 var _memset = Module["_memset"] = asm["_memset"]; |
7887 var _malloc = Module["_malloc"] = asm["_malloc"]; | 7889 var _malloc = Module["_malloc"] = asm["_malloc"]; |
7888 var _memcpy = Module["_memcpy"] = asm["_memcpy"]; | 7890 var _memcpy = Module["_memcpy"] = asm["_memcpy"]; |
7889 var runPostSets = Module["runPostSets"] = asm["runPostSets"]; | 7891 var runPostSets = Module["runPostSets"] = asm["runPostSets"]; |
7890 | 7892 |
7891 Runtime.stackAlloc = function(size) { return asm['stackAlloc'](size) }; | 7893 Runtime.stackAlloc = function(size) { return asm['stackAlloc'](size) }; |
7892 Runtime.stackSave = function() { return asm['stackSave']() }; | 7894 Runtime.stackSave = function() { return asm['stackSave']() }; |
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8081 } | 8083 } |
8082 | 8084 |
8083 // shouldRunNow refers to calling main(), not run(). | 8085 // shouldRunNow refers to calling main(), not run(). |
8084 var shouldRunNow = true; | 8086 var shouldRunNow = true; |
8085 if (Module['noInitialRun']) { | 8087 if (Module['noInitialRun']) { |
8086 shouldRunNow = false; | 8088 shouldRunNow = false; |
8087 } | 8089 } |
8088 | 8090 |
8089 | 8091 |
8090 run([].concat(Module["arguments"])); | 8092 run([].concat(Module["arguments"])); |
OLD | NEW |