467 Commits

Author SHA1 Message Date
Volker Berlin
ebf3673ef6 Prepare support for SyntheticFunctionName for imported JavaScript functions 2019-09-07 21:24:17 +02:00
Volker Berlin
6ea1955886 Fix the stack value of array new. 2019-08-27 20:41:00 +02:00
Volker Berlin
083ebf263e improve the type handling of arrays 2019-08-21 20:52:12 +02:00
Volker Berlin
0b28099674 Add ArrayType and improve the Java type parser. 2019-08-14 20:07:39 +02:00
Volker Berlin
32e609b32f use GC Feature of the JavaScript host for arrays as replacement for the missing GC feature in WASM 2019-08-11 13:11:22 +02:00
Volker Berlin
7667c1a080 rename ArrayOpertion.LENGTH -> LEN for more consistency 2019-08-11 13:06:31 +02:00
Volker Berlin
615efbd11f use class and method name as default import setting if not set 2019-08-09 21:58:42 +02:00
Volker Berlin
5883adc2af pass the compiler properties to sub classes 2019-08-08 19:28:27 +02:00
Volker Berlin
9faeb626a9 fix file name of JavaScript output with text output format. 2019-08-08 18:23:44 +02:00
Volker Berlin
20d2b7f44e improve error messages 2019-08-08 17:47:57 +02:00
Volker Berlin
c66d7748a4 improve error message 2019-08-04 19:29:36 +02:00
Volker Berlin
fd24d852ee cast only to AnyType 2019-08-04 18:47:02 +02:00
Volker Berlin
ccbc633463 handle complex IF conditions 2019-08-02 22:39:04 +02:00
Volker Berlin
215d8ff70e calculate also the THEN position of an IF control structure 2019-08-02 11:11:10 +02:00
Volker Berlin
be77f59ac0 Add support for OR concatenated IF conditions 2019-07-29 19:15:47 +02:00
Volker Berlin
a019647094 fix && operator in if expression 2019-07-26 23:05:54 +02:00
Volker Berlin
3ec23fa3c9 more predictable function order depending the call dependency 2019-07-25 23:18:34 +02:00
Volker Berlin
d32244c60c fix getPopCount() and getPushValue() 2019-07-23 21:48:31 +02:00
Volker Berlin
b65027f156 fix push/pop value of compare instructions 2019-07-23 18:23:59 +02:00
Volker Berlin
8726bb92d6 use fine() log level because it is not enable by default 2019-07-21 13:55:29 +02:00
Volker Berlin
e37caf06b1 add logging 2019-07-19 22:29:34 +02:00
Volker Berlin
03ed725262 implements abs instruction 2019-07-17 18:45:36 +02:00
Volker Berlin
815cd2eec9 Only write a JS file if the target is a file. 2019-07-14 17:44:23 +02:00
Volker Berlin
588ac6db47 implement reinterpret opcodes and use it in the WatParser. 2019-07-14 12:41:40 +02:00
Volker Berlin
c64c620a38 more math operation for the text format (Watparser) 2019-07-13 15:46:20 +02:00
Volker Berlin
d960ece4a7 Add function signature to error message 2019-07-06 16:45:23 +02:00
Volker Berlin
d9e8b70d06 Use JavaScript imports generated from the imports declarations. 2019-07-03 20:09:22 +02:00
Volker Berlin
3709e9cc55 Generalize the usage of WasmTarget 2019-06-30 14:43:45 +02:00
Volker Berlin
6bcda0daa5 import only the needed functions to reduce the needed JS glue code 2019-06-23 20:50:11 +02:00
Volker Berlin
91ccf92796 If there a replacement method then use it also on scanning in prepare phase. 2019-06-22 11:11:14 +02:00
Volker Berlin
5ea58e30f8 Improve error message 2019-06-21 21:45:49 +02:00
Volker Berlin
0a4d03e974 Mark override methods as needed if the super methods are needed. 2019-06-10 11:39:19 +02:00
Volker Berlin
185e3e98d3 enable virtual methods/functions 2019-06-09 22:40:39 +02:00
Volker Berlin
90126b16da duplicate the this on stack before a virtual method call invoke 2019-06-09 21:09:05 +02:00
Volker Berlin
1ee77584d9 write the vtable of objects to the data section. Use the vtable offset into the data section in the new operation of objects. 2019-06-09 17:17:47 +02:00
Volker Berlin
c410adc636 define the types in the prepare phase. 2019-06-04 18:09:34 +02:00
Volker Berlin
557c348ed7 extract writeMethodParamStart() from writeMethodStart() and prepareImport() 2019-06-02 11:44:28 +02:00
Volker Berlin
748b7e5b89 Api Doc 2019-05-20 22:23:40 +02:00
Volker Berlin
625e5fbef7 pass the type to a virtual function call 2019-05-20 21:28:46 +02:00
Volker Berlin
fd43aca97b Move the analyzing and writing of types in the TypeManager 2019-05-19 15:17:30 +02:00
Volker Berlin
8f09d4d04a detect all needed types in the prepare phase 2019-05-19 11:14:32 +02:00
Volker Berlin
30efaaed95 pass virtual function index 2019-05-18 21:37:19 +02:00
Volker Berlin
5826d6dded add field vtable 2019-05-17 21:40:38 +02:00
Volker Berlin
983d78de54 next step in handling virtual methods 2019-05-14 21:47:49 +02:00
Volker Berlin
f0d3027553 Replace a function name in call with its supper method if real target name does not exists. 2019-05-12 18:38:11 +02:00
Volker Berlin
aa1ed68b3f scanning the Java methods on prepare 2019-05-11 20:53:30 +02:00
Volker Berlin
0b7fa50520 next step for scanning on prepare 2019-05-09 22:13:02 +02:00
Volker Berlin
f52bca35e4 Use a FunctionState in the FunctionManager for later improvements 2019-05-08 19:52:16 +02:00
Volker Berlin
a8d11b5b68 use weak cache for ClassFiles 2019-05-07 21:16:30 +02:00
Volker Berlin
4e98efeb5d prepare the using of call_indirect 2019-05-05 17:25:43 +02:00