Alexey Andreev
fb78377db8
Fix various issues reported by PVS Studio and LGTM
2019-10-31 14:36:37 +03:00
Alexey Andreev
e569eaa8a6
C: write test error to stderr rather than stdout
2019-10-15 11:53:31 +03:00
Alexey Andreev
8038f90fd8
Support new format of debug information in C and WASM
...
This allows to keep proper stack traces in FULL optimization mode,
when aggressive inlining is applied
2019-10-15 11:47:40 +03:00
Alexey Andreev
4ef231c7fa
JS: preserve stack trace items when agressive inlining enabled
2019-10-14 14:05:06 +03:00
Alexey Andreev
e762f26a40
Keep location stack in IR when inlining methods
2019-10-08 16:09:07 +03:00
Alexey Andreev
bffb50f0cd
Implement array bounds checking in JavaScript
2019-10-07 16:55:30 +03:00
Alexey Andreev
fe3436f053
C/Wasm: resizable heap
2019-09-24 17:48:17 +03:00
Alexey Andreev
6e6783f93d
C: regenerate only as small amount of classes as possible during incremental build
2019-09-04 19:04:12 +03:00
Alexey Andreev
9ad0ddd891
C: fix File.mkdirs() on Windows
2019-07-11 18:06:15 +03:00
Alexey Andreev
6e71fa7e87
C: implement file IO in Windows
2019-06-14 15:32:20 +03:00
Alexey Andreev
91de1f6ca7
C: implement native file system
2019-05-31 15:05:23 +03:00
Alexey Andreev
d17b459ecc
C: fix MSVC support
2019-05-28 20:13:14 +03:00
Alexey Andreev
da22256c1f
C: compile into multiple .c and .h files
2019-05-08 17:36:46 +03:00
Alexey Andreev
cd008f8a52
Revert to SIMPLE optimization level when running tests
2019-03-24 12:55:26 +03:00
Alexey Andreev
f33c90f778
Improve <clinit> elimination:
...
* Generate clinit instruction instead of calling <clinit>
directly
* Rename annotation that indicates absence of side effects
* Don't apply this annotation automatically to all JSBody methods
2019-03-24 12:54:06 +03:00
Alexey Andreev
2a1aca98da
Use shared ReferenceCache between different stages of compilation
2019-03-05 19:32:50 +03:00
Alexey Andreev
f080526aca
Update to latest version of HtmlUnit
2018-12-24 18:15:17 +03:00
Alexey Andreev
d74bcbe2b9
Fast dependency analyzer, fix bugs in incremental compiler
2018-12-07 17:41:21 +03:00
Alexey Andreev
1b83519280
Reduce minumus JS runtime a little
2018-12-07 00:52:05 +03:00
Alexey Andreev
1cf3cce076
Reduce minimum runtime size
2018-12-01 23:07:03 +03:00
Alexey Andreev
45d0a13c9b
In HtmlUnit, decode stack traces for all constructed exceptions
2018-11-26 15:58:51 +03:00
Alexey Andreev
1c09a52ef9
Add option to suppress decoding stack when running JUnit tests
2018-11-26 11:41:25 +03:00
Alexey Andreev
3e152f4bb8
JUnit: remove selenium runner
2018-11-23 14:32:35 +03:00
Alexey Andreev
2c8b0b55bb
JUnit: Decode stack traces to StackTraceElement[] instead of string
2018-11-23 14:32:10 +03:00
Alexey Andreev
d50189ea3a
Add decoding of stack trace in JUnit adapter
2018-11-23 12:09:26 +03:00
Alexey Andreev
6d2815bc5c
Support running JUnit3 tests and improve support of JUnit4
2018-11-22 19:51:33 +03:00
Alexey Andreev
148c07336c
Generate entire code inside wrapper IIF
2018-11-15 12:47:25 +03:00
Alexey Andreev
4d2c075c07
Always embed runtime into generated file. Remove 'runtime' build property
2018-10-28 00:15:36 +03:00
Alexey Andreev konsoletyper@gmail.com
4d8f33d994
C backend: few fixes for MVSC
2018-05-14 01:15:29 +03:00
Alexey Andreev
a81eeeee03
Wasm backend: fix hanging tests, make more tests pass, change name generation scheme
2018-05-10 17:41:28 +03:00
Alexey Andreev
b087610c2c
Wasm backend: make JUnit tests work
2018-05-08 23:31:51 +03:00
Alexey Andreev
38267980fb
Run C test compilation in multiple threads
2018-04-21 12:24:31 +03:00
Alexey Andreev
4990dbe8e4
Add support for C backend in TeaVMTestRunner
2018-04-20 22:58:09 +03:00
Alexey Andreev
d3134d3941
Fix running multi-configuration tests in HTMLUnit
2017-11-05 14:53:08 +03:00
Alexey Andreev
de14a57fe1
Change how method resolution work in DCE and devirtualization.
...
Since in Java 8 there are default methods in interface, method
resolution algorithm becomes more complicated. This alseocauses
several related changes.
1. Resolve methods as late as possible; do not resolve
virtual call sites during DCE.
2. Due to several reasons we have to improve linking phase
to preserve super methods that aren't actually ever called,
but present in virtual call sites.
Related issue: #311
2017-10-22 17:56:31 +03:00
Alexey Andreev
4171d468d4
JS: add reflection support for constructors
2017-07-17 22:21:17 +03:00
Alexey Andreev
f86e498898
Speed-up travis build
2017-07-01 15:48:07 +03:00
Alexey Andreev
d5db7270be
Move expected exception handling off test runner.
...
Implement it in launcher genertor instead
2017-04-22 00:26:43 +03:00
Alexey Andreev
6c6e7c0d4d
Fix build in travis. Seems they have old and buggy javac
2017-02-15 21:12:13 +03:00
Alexey Andreev
ccb4dff836
Fix bugs in metaprogramming. In JUnit runner reload about:blank page before every test
2017-02-13 23:43:49 +03:00
Alexey Andreev
9532f9a32b
Refactor phi updater
2017-01-06 21:13:12 +03:00
Alexey Andreev
a5eb9ac800
Add tests for phi updater
2017-01-04 22:09:56 +03:00
Alexey Andreev
ec3b88f77a
Fix test runner behaviour when test fails
2016-12-04 20:53:23 +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
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
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
9143714168
Refactor target API. Add ability to generate wast and C from wasm target
2016-09-17 09:19:32 +03:00
Alexey Andreev
4fd20794c1
Refactoring. Fix checkstyle errors
2016-09-17 09:11:07 +03:00
Alexey Andreev
9fb97fd53f
Refactoring
2016-09-17 09:00:40 +03:00
Alexey Andreev
47997cde87
Rename target package to backend to avoid gitignore
2016-09-17 08:59:00 +03:00
Alexey Andreev
52ace0c252
Refactor TeaVM to support pluggable targets like JavaScript, WebAssembly, LLVM, etc (with only JavaScript target for now)
2016-09-17 08:55:44 +03:00
Alexey Andreev
894e39c59f
Move static fields from class scope to global scope
2016-04-17 13:26:29 +03:00
Alexey Andreev
e557a25a04
Minor fixes
2016-04-12 23:38:45 +03:00
Alexey Andreev
3e562aa08a
Simple metaprogramming test passes
2016-02-27 18:46:27 +03:00
Alexey Andreev
4819eee3ef
Add support of TeaVMProperties annotation
2016-02-27 16:16:37 +03:00
Alexey Andreev
5576275998
Improving JUnit test runner
2016-02-26 23:48:04 +03:00
Alexey Andreev
c808f41a8f
Improving JUnit test runner
2016-02-23 23:27:50 +03:00
Alexey Andreev
d103306c3e
Improving JUnit test runner
2016-02-23 21:40:51 +03:00
Alexey Andreev
2b3cba69bc
Run JUnit tests via JUnit runner instead of Maven plugin
2016-02-23 18:46:32 +03:00