145 Commits

Author SHA1 Message Date
Volker Berlin
cde24d98ed Fix Struct.NEW_DEFAULT for GC mode. 2021-01-16 17:38:11 +01:00
Volker Berlin
26ec7ece48 Handle different versions of a class in the library path 2020-12-12 20:42:46 +01:00
Volker Berlin
3e9a8b1460 fix findValueTypeFromStack after a CAST 2020-08-08 23:20:09 +02:00
Volker Berlin
890b3ec0df Adapt some GC changes 2020-06-13 19:51:33 +02:00
JCWasmx86
8cc81dcffe Typo, replaced crlf with lf in some files 2020-05-25 16:40:25 +02:00
Volker Berlin
5eb6f9aad6 enable class initializers (static constructors) 2020-04-26 20:30:49 +02:00
Volker Berlin
b251141f45 Scan also the types of used imports 2020-04-26 00:08:50 +02:00
Volker Berlin
4c5c41eb5c add method name to the WasmException 2020-04-10 22:22:45 +02:00
Volker Berlin
128ac19242 fix cyclic dependencies between static class initializers 2020-04-10 11:40:07 +02:00
Volker Berlin
87f986e30b Also static code from Java VM code must be registered. Disable static code to find a solution for the cyclic dependency between static code. 2020-04-05 21:03:13 +02:00
Volker Berlin
65a1f3ff76 implements support for static class constructors 2020-04-02 21:01:11 +02:00
Volker Berlin
645996ceb0 add support for static constructors, WIP 2020-03-30 22:27:30 +02:00
Volker Berlin
d3f7069cc8 pass the signature from synthetic functions to the wat parser. 2020-03-27 21:10:02 +01:00
Volker Berlin
ae0f1e3410 add FunctionType to differ between real and abstract methods 2020-03-20 20:35:13 +01:00
Volker Berlin
ff5b8f8442 add support for abstract methods, WIP 2020-03-18 21:37:56 +01:00
Volker Berlin
d73612715f recursive scan methods and type hierarchy 2020-03-15 20:51:19 +01:00
Volker Berlin
386c5adf28 Class replacement need also StringManager.stringsMemoryOffset. 2020-03-15 12:00:15 +01:00
Volker Berlin
259a7130f1 improve java.lang.Class replacement, WIP 2020-03-14 23:02:58 +01:00
Volker Berlin
946e911982 implementation of a a replacement for java.lang.Class 2020-03-14 19:21:37 +01:00
Volker Berlin
3d8f49c79a simplify the scan and the compiler structure, remove some old hacks. 2020-02-29 16:14:32 +01:00
Volker Berlin
02696a6488 use a synthetic function call to calculate the function id of a virtual call. 2020-02-25 18:05:12 +01:00
Volker Berlin
2f2c39a07a simplify the initializing 2020-02-24 21:08:29 +01:00
Volker Berlin
f2547bd0d2 duplicate THIS parameter also for interface calls 2020-02-24 18:16:36 +01:00
Volker Berlin
82e5f367b8 fix debug message on error 2020-02-23 20:17:37 +01:00
Volker Berlin
a57d3020f9 fix wrong debug information 2020-02-23 17:50:23 +01:00
Volker Berlin
4872dd137a Add support for partial classes 2020-01-19 15:15:01 +01:00
Volker Berlin
7247623dc6 use also registered replace methods if does not exists an original in the current search path. 2020-01-12 19:13:20 +01:00
Volker Berlin
b1e89a91ca add support for default methods 2020-01-12 17:13:52 +01:00
Volker Berlin
54d2deef4f add option WASM_USE_EH to ignore exception support because currently not supported 2020-01-12 12:42:31 +01:00
Volker Berlin
1998b2b5b2 Instead the static flag we need to handle if there is an additional "this" parameter. 2020-01-11 20:31:05 +01:00
Volker Berlin
396bafa234 api doc 2020-01-11 18:31:07 +01:00
Volker Berlin
8d37faa81d improve the caching of parsed class files 2020-01-07 19:54:05 +01:00
Volker Berlin
0201157ffb Also the throw instruction need the event handling 2020-01-05 21:54:17 +01:00
Volker Berlin
e0c258b6ab use the functions manager for the static flag for more flexibility on method replace 2020-01-03 21:06:46 +01:00
Volker Berlin
d103f97c04 replace also a class with annotation 2020-01-03 19:51:58 +01:00
Volker Berlin
525a2f2f87 change the static ClassFile cache to an instance cache 2020-01-02 15:15:21 +01:00
Volker Berlin
77be20ed57 correct sourceFile and className on writing 2019-12-30 23:02:25 +01:00
Volker Berlin
2ebc771c55 fix param names of instance methods. idx==0 is the this parameter. 2019-12-24 13:22:25 +01:00
Volker Berlin
2037b9e26b print also stacktrace to logger 2019-11-26 19:12:13 +01:00
Volker Berlin
8668d71b6c Fix the memory offset of strings with a dynamic synthetic function. 2019-11-24 14:44:56 +01:00
Volker Berlin
f61cebd285 implements reading from constant strings from memory 2019-11-23 20:39:10 +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
8f36ed4d6d initial checkin for StringManager (WIP) 2019-11-10 12:57:58 +01: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
b4d2f6caa2 use WasmOptions on more places for consistency 2019-09-10 17:49:05 +02:00
Volker Berlin
c1041325b7 add WasmOptions to reduce boilerplate code 2019-09-09 21:07:45 +02:00
Volker Berlin
4e3c11553f prepare the polyfill of struct/Object instruction 2019-09-08 13:55:22 +02:00
Volker Berlin
ebf3673ef6 Prepare support for SyntheticFunctionName for imported JavaScript functions 2019-09-07 21:24:17 +02:00
Volker Berlin
0b28099674 Add ArrayType and improve the Java type parser. 2019-08-14 20:07:39 +02:00