Commit Graph

2948 Commits

Author SHA1 Message Date
Alexey Andreev
6084491119 Add IR parser of different simple instructions 2016-12-04 19:47:10 +03:00
Alexey Andreev
2b94a8b05c Add IR parser of cast instructions 2016-12-04 19:47:09 +03:00
Alexey Andreev
825acfc85a Add IR parser of invoke instructions 2016-12-04 19:47:09 +03:00
Alexey Andreev
c16de76b23 Add IR parser of constant instructions 2016-12-04 19:47:09 +03:00
Alexey Andreev
f6308c1782 Add IR parser of binary operations and phi functions 2016-12-04 19:47:09 +03:00
Alexey Andreev
6148d7a943 Add support of branching instructions to listing parser 2016-12-04 19:47:09 +03:00
Alexey Andreev
e5db8d4afc Add support of goto and return instructions to textual IR parser 2016-12-04 19:47:09 +03:00
Alexey Andreev
93f8c2cf39 Creating textual IR parser 2016-12-04 19:47:09 +03:00
Alexey Andreev
55158c9e13 Move textual IR related things to a separate package 2016-12-04 19:47:09 +03:00
Alexey Andreev
e5fe82f0fe Working on textual IR 2016-12-04 19:47:09 +03:00
Alexey Andreev
6f92dadad5 Fix bugs in nullness checker. Use it in LICM 2016-12-04 19:47:09 +03:00
Alexey Andreev
2894c541f7 Add nullness checker 2016-12-04 19:47:09 +03:00
Alexey Andreev
0b4629d959 Refactor optimization API 2016-12-04 19:47:07 +03:00
Alexey Andreev
b7d760188e When native method returns undefined and Java expects string, produce null. Add $ prefix to local variables to avoid name clashing with global declarations 2016-12-03 14:30:43 +03:00
Alexey Andreev
f96aa54461 Fix attaching source maps to JS file 2016-12-03 14:05:13 +03:00
Alexey Andreev
ad39024795 Prevent PhiUpdater from placing e-phis with source variable equal to receiver 2016-12-03 13:46:02 +03:00
Alexey Andreev
10bb4ef3da Fix range checking in AbstractList.subList. Add RandomAccess to object returned by Arrays.asList 2016-12-03 11:05:33 +03:00
Alexey Andreev
c25dd1a99d Add JUnit test filtering 2016-11-30 00:25:26 +03:00
Alexey Andreev
0b4f8b9898 Fix concurrency issues in TeaVM test runner 2016-11-30 00:06:20 +03:00
Alexey Andreev
86b78b8f5d Avoid creating programs with number of variables less than number of parameters 2016-11-29 22:32:22 +03:00
Alexey Andreev
2e20287f80 JS: fix operator priority when rendering new expression 2016-11-22 22:10:18 +03:00
Alexey Andreev
9364ad943a WASM: add support of 0x0D binary version 2016-11-20 22:22:33 +03:00
Alexey Andreev
24efd1f49c Fix support of async <clinit> when called by getstatic/putstatic 2016-11-20 17:50:47 +03:00
Alexey Andreev
c023ac2053 Change translation of <clinit> invocations 2016-11-20 17:08:46 +03:00
Alexey Andreev
764c9bbb1e Working on support of async <clinit> methods 2016-11-17 23:24:16 +03:00
Alexey Andreev
8e2814f984 IDEA: fix building multi-platform projects (JS, WebAssembly) 2016-11-15 23:07:25 +03:00
Alexey Andreev
df95588d51 Merge pull request #229 from semoro/idea-fix
Fix IDEA Maven Importer to properly create facet on maven update project
2016-11-15 21:58:57 +03:00
Simon Ogorodnik
cf69cf2243 Fix IDEA Maven Importer to properly create facet on maven update project 2016-11-15 04:41:18 +03:00
Alexey Andreev
e93a0f1a6e IDEA: add WebAssembly facet 2016-11-06 22:00:15 +03:00
Alexey Andreev
156e7c98ee Merge branch 'idea-facet' 2016-11-06 21:13:28 +03:00
Alexey Andreev
f61cfb23b5 After inlining remove unreachable basic blocks and unused variables. When removing unreachable basic blocks, remove corresponding phi inputs as well. 2016-11-06 21:12:59 +03:00
Alexey Andreev
eaf28d737e IDEA: replace module configuration with TeaVM facet 2016-11-04 23:41:54 +03:00
Alexey Andreev
aebfe7d165 During node splitting, create copies for previously copied nodes, if necessary. See #219 2016-11-04 16:55:56 +03:00
Alexey Andreev
4b766f7b73 Fix implementation of Tarjan SCC finding algorithm 2016-11-04 16:15:15 +03:00
Alexey Andreev
daf5ada5c6 Fix converting JS floating-point numbers to long (fix #228). 2016-11-04 14:12:51 +03:00
Alexey Andreev
6f5c6cd66e Move VM tests off classlib package 2016-11-04 13:34:25 +03:00
Alexey Andreev
8c3f071f88 Fix updating size in LinkedList.remove (fix #226). 2016-11-04 13:28:34 +03:00
Alexey Andreev
2a3b0cd597 Fix generation of variable names in minified mode (fix #227). JUnit runner can be configured to run tests in minified and optimized modes. Apply these modes to travis config. 2016-11-04 13:21:01 +03:00
Alexey Andreev
dcef7fc996 IDEA: creating facet 2016-10-27 19:46:49 +03:00
Alexey Andreev
1335476abe WASM: Add option to trace all call_indirect opcodes 2016-10-27 19:12:37 +03:00
Alexey Andreev
af10879a81 Remove unnecessary IDEA project files 2016-10-27 12:55:28 +03:00
Alexey Andreev
b3b1b54582 Remove unnecessary dependencies 2016-10-26 15:02:41 +03:00
Alexey Andreev
9fd744f550 Report more details about calling async code from sync method 2016-10-22 17:40:32 +03:00
Alexey Andreev
37d4c3349e Add AbstractInstructionReader, use it instead InstructionReader where possible 2016-10-22 16:25:38 +03:00
Alexey Andreev
3dbca7959b When unexpected exception occurs during optimization, dump IR to stderr. 2016-10-22 15:57:17 +03:00
Alexey Andreev
a30ac3cd83 Fix NPE when omitting WASM binary version in maven plugin 2016-10-20 12:52:31 +03:00
Alexey Andreev
9c33ef686b WASM: fix support of 0xC binary version 2016-10-17 21:53:09 +03:00
Alexey Andreev
d6cc340676 WASM: fix remaining errors in WebAssembly 0xC 2016-10-14 22:32:12 +03:00
Alexey Andreev
56b1f54dda WASM: implementing support of 0xC version 2016-10-12 23:45:13 +03:00
Alexey Andreev
b4916ee4e7 WASM: fix bugs in support of 0xC binary version 2016-10-09 12:57:11 +03:00