476 Commits

Author SHA1 Message Date
Volker Berlin
947f66502b Add support for i32.load to the wat parser and some small bug fixes 2019-11-18 21:32:35 +01:00
Volker Berlin
86d239986e add memory instructions 2019-11-18 20:08:18 +01:00
Volker Berlin
ed00c7a02f add support for i32.mul to wat parser 2019-11-18 17:36:26 +01:00
Volker Berlin
185a0515c7 supports also constructor replacement with a Java method 2019-11-17 17:28:31 +01:00
Volker Berlin
ce1d3ddb38 improve the "ignore redefinition" in ClassPath. The first should win. 2019-11-17 17:04:35 +01:00
Volker Berlin
b26b290464 write the stings into the data section 2019-11-17 14:24:41 +01:00
Volker Berlin
10b754e3e3 Use a Placeholder Instruction for Java DUP opertions. 2019-11-16 19:17:22 +01:00
Volker Berlin
63a7c487c0 add support for locals in WatParser 2019-11-12 20:47:57 +01:00
Volker Berlin
c6d569c66c add support for more const instructions on WatParser 2019-11-12 20:06:31 +01:00
Volker Berlin
8f36ed4d6d initial checkin for StringManager (WIP) 2019-11-10 12:57:58 +01:00
Volker Berlin
6d7c8b12a9 add support for ref.is_null to wat parser 2019-11-09 18:59:47 +01:00
Volker Berlin
0ae27b2c86 add support for local.tee to wat parser 2019-11-09 18:48:28 +01:00
Volker Berlin
baf7fb9cf0 Add table.set/get 2019-11-03 19:00:49 +01:00
Volker Berlin
b47274e007 add @Override 2019-11-03 18:04:45 +01:00
Volker Berlin
ca9efce370 constant pool can also contains string constants 2019-11-03 13:52:07 +01:00
Volker Berlin
4f79782bfe add table instructions 2019-11-03 13:38:53 +01:00
Volker Berlin
672574abd0 Rename anyfunc -> funcref 2019-11-03 10:14:29 +01:00
Volker Berlin
87039232eb export the memory with the name "memory" 2019-11-02 19:20:28 +01:00
Volker Berlin
fac7e68b43 optimize the memory section, write only if needed 2019-11-02 19:11:18 +01:00
Volker Berlin
1dd644b67a Generalize the writing of the export section for future improvements 2019-11-02 18:59:09 +01:00
Volker Berlin
6c0939f341 v128 added 2019-11-02 12:22:10 +01:00
Volker Berlin
2efe7768e2 Rename anyfunc -> funcref 2019-11-02 12:11:10 +01:00
Volker Berlin
ebe1c27e9a Add support for outsourcing of a constructor to JavaScript 2019-10-27 20:11:47 +01:00
Volker Berlin
1fdcae5191 expand the hierarchy of SyntheticFunctionName for future improvements 2019-10-27 19:41:43 +01:00
Volker Berlin
9692b3b98f Accept also new functions in the cache after prepare finish to simplify the handling with unknown functions. 2019-10-27 19:37:55 +01:00
Volker Berlin
3c0199c000 fix parameter order for struct.set polyfill 2019-10-26 12:26:35 +02:00
Volker Berlin
431d5f5a4a parse InvokeDynamic constants 2019-10-26 12:23:36 +02:00
Volker Berlin
833cd8c80a handle MODULE and PACKAGE constant on the pool (module-info.class) 2019-10-14 21:51:54 +02:00
Volker Berlin
19a119d7f4 fix position of duplicating THIS on virtual method calls 2019-10-05 16:15:18 +02:00
Volker Berlin
be12f047dd move some helper method into the parent 2019-10-02 18:56:35 +02:00
Volker Berlin
ec898cad71 skip ELSE blocks on counting the stack 2019-09-29 13:47:45 +02:00
Volker Berlin
4f40976019 ignore redefinition replacements 2019-09-29 11:44:01 +02:00
Volker Berlin
432baef4b4 fix end detecting of ELSE block and sub structures in the THEN block. 2019-09-25 22:32:41 +02:00
Volker Berlin
40375316e2 detect some optimization of GOTO jumps 2019-09-25 19:24:01 +02:00
Volker Berlin
c29d19178a remove additional parameter from copy/paste 2019-09-24 20:03:28 +02:00
Volker Berlin
a0ddb00a73 pass the method with signature to the VariableManager as fallback 2019-09-23 21:24:46 +02:00
Volker Berlin
d1bb7cac23 pass the method with signature to the VariableManager as fallback 2019-09-23 20:33:21 +02:00
Volker Berlin
53319942ae set initial values of non GC struct values 2019-09-15 15:42:50 +02:00
Volker Berlin
f19423d53a evaluate the JavaScript lazy for more dynamic JavaScript (non GC polyfill) 2019-09-15 15:38:32 +02:00
Volker Berlin
5295096d89 fix parameter order of nonGC polyfill call 2019-09-14 22:59:12 +02:00
Volker Berlin
6ddf5b1c85 write memory/data section also with nonGC polyfill 2019-09-14 21:26:46 +02:00
Volker Berlin
c8e8c09a8e improve NonGC polyfill 2019-09-14 15:22:25 +02:00
Volker Berlin
9293bfa9f2 fix the signatures of the polyfill functions 2019-09-13 21:05:47 +02:00
Volker Berlin
a458fd2c2a Move duplicated code from implementations of writeVirtualFunctionCall() into the caller WasmCallIndirectInstruction 2019-09-13 20:34:44 +02:00
Volker Berlin
d4a2214131 Move duplicated code from implementations of writeVirtualFunctionCall() into the caller WasmCallIndirectInstruction 2019-09-13 20:04:03 +02:00
Volker Berlin
5437ed54ed call ref_eq polyfill in non gc mode 2019-09-11 20:32:36 +02:00
Volker Berlin
09e31f3f5a fix C&P error of return value from ref_eq 2019-09-11 20:01:42 +02:00
Volker Berlin
b2f1fbc195 call ref_eq polyfill in non gc mode 2019-09-10 21:41:50 +02:00
Volker Berlin
50f10f1f47 move debugNames into WasmOptions 2019-09-10 17:52:14 +02:00
Volker Berlin
b4d2f6caa2 use WasmOptions on more places for consistency 2019-09-10 17:49:05 +02:00