Alexey Andreev
ea36a1fca8
Fix checkstyle errors
2020-02-27 18:57:45 +03:00
Alexey Andreev
95426e2159
Add per-class compilation when running tests (requires @WholeClassCompilation
annotation)
2020-02-27 18:43:08 +03:00
Alexey Andreev
6790ad0818
Code server: fix proxying gzipped resources
2020-02-26 14:27:58 +03:00
Alexey Andreev
0e7c1e5ef9
Wasm: don't generate class metadata if it's not used. Don't generate names and call site metadata in minified mode
2020-02-21 17:29:31 +03:00
Alexey Andreev
7d95c0fb04
Wasm: fix GC
2020-02-21 16:22:25 +03:00
Alexey Andreev
fecdd6613a
Use tab character to indent stack traces
2020-02-14 10:39:50 +03:00
Alexey Andreev
05ac4b62bf
Add HTTP headers in code server to not cache content
2020-01-23 18:59:05 +03:00
Alexey Andreev
8237403161
Fix build of IDEA plugin
2019-12-04 18:45:22 +03:00
Alexey Andreev
96be75664c
Fix build of IDEA plugin
2019-12-04 18:13:28 +03:00
Alexey Andreev
a36cd51c53
Fix build of IDEA plugin
2019-12-04 17:25:07 +03:00
Alexey Andreev
efa15936da
Fix build of IDEA plugin
2019-12-04 16:56:47 +03:00
Alexey Andreev
0dbc4a22bb
Set proper content type in code server
2019-12-04 16:18:00 +03:00
Alexey Andreev
037acc613c
Update IDEA version to 2018.2.8
2019-12-04 15:29:10 +03:00
Alexey Andreev
b60d57ea73
Fix compilation of IDEA plugin
2019-10-31 15:35:19 +03:00
Alexey Andreev
fb78377db8
Fix various issues reported by PVS Studio and LGTM
2019-10-31 14:36:37 +03:00
Alexey Andreev
3b4cc43e79
C: add option to strip off information about call site locations.
...
This decreases executable size significantly. However, this produces
obfuscated stack traces which can be deobfuscated using JSON symbol table.
2019-10-23 17:34:23 +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
c6f6125622
JS: remove unnecessary link to runtime.js
from archetype HTML
2019-10-08 11:15:55 +03:00
Alexey Andreev
bffb50f0cd
Implement array bounds checking in JavaScript
2019-10-07 16:55:30 +03:00
mauro
9314461fcf
Minor fix for classpath value in CodeServlet
2019-09-26 00:15:41 +03:00
Alexey Andreev
fe3436f053
C/Wasm: resizable heap
2019-09-24 17:48:17 +03:00
Alexey Andreev
f0b6cc2f30
Update version to 0.7.0
2019-09-24 16:26:14 +03:00
Alexey Andreev
f47644d890
Move tool that generates JCL comparison into a separate project. Make this tool compatible with JRE9+
2019-09-05 14:16:11 +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
ed627459c8
Fix issue with async methods in code server
2019-08-23 13:44:03 +03:00
Alexey Andreev
492fd004af
C: add ability to write heap dump when application crashes
2019-08-19 15:51:41 +03:00
Alexey Andreev
90e00f7eb4
C: add option to support exceptions via setjmp/longjmp
2019-07-22 16:53:47 +03:00
Alexey Andreev
9ad0ddd891
C: fix File.mkdirs() on Windows
2019-07-11 18:06:15 +03:00
Alexey Andreev
90a5ad72d5
Fix incremental build on Windows
2019-06-26 20:15:42 +03:00
Alexey Andreev
aeb5f44922
C: allow to change main function name
2019-06-20 17:13:08 +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
fdb3f5edb1
C: improve incremental compiler performance. Generate text file with list of c files to compile
2019-05-24 12:10:18 +03:00
Alexey Andreev
8b3df6f730
C: fix bugs, introduce new virtual table builder
2019-05-23 15:18:25 +03:00
Alexey Andreev
8e08cf6dcd
C: improve generation of string pool for incremental mode
2019-05-16 16:53:40 +03:00
Alexey Andreev
0003ed0bb2
C: generate '#line' preprocessor directive
2019-05-16 11:12:35 +03:00
Alexey Andreev
7a99258cab
C: allow to run external tool after successful incremental build
2019-05-15 16:37:51 +03:00
Alexey Andreev
054db3e8d1
C: incremental code generator
2019-05-15 15:16:18 +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
a8226ef6a3
Decrease memory consumption
2019-03-11 17:27:51 +03:00
Alexey Andreev
94322e5f6e
Get rid of Mapper interface in favour of Function
2019-03-11 13:27:34 +03:00
Alexey Andreev
f08faba3d2
Fix compilation of IDEA plugin
2019-03-11 12:32:15 +03:00
Alexey Andreev
578912056b
Reduce memory used by initial class reader
2019-03-07 19:27:07 +03:00
Alexey Andreev
fcfa998e1c
Reduce memory used by call graph in dev server mode
2019-03-07 16:51:00 +03:00
Alexey Andreev
88dca1bd02
Decrease memory consumption during compilation
2019-03-06 16:51:01 +03:00
Alexey Andreev
2a1aca98da
Use shared ReferenceCache between different stages of compilation
2019-03-05 19:32:50 +03:00
Alexey Andreev
3c9a3bb359
Store AST cash in binary format. Introduce more compact
...
AST serialization format.
Reduce memory consumption of incremental compilation on dev server
2019-03-05 19:06:21 +03:00
Alexey Andreev
e8312021f2
IDEA: don't serialize call graph when dev server completes build
2019-02-27 13:24:12 +03:00
Alexey Andreev
ca017df6c9
Fix incremental compilation on Windows
2019-02-27 13:21:04 +03:00
Alexey Andreev
2095e52dc2
Dev server: fix bug when proxying URLs with characters not allowed in URLs
2019-02-22 17:19:08 +03:00
Alexey Andreev
bd00575219
IDEA: fix dev server run configuration on Windows. Fix CORS issue with stack trace deobfuscator
2019-02-18 13:07:51 +03:00
Alexey Andreev
acc48f4532
JS: fix inability to re-attach to the same debugger
2019-02-13 19:00:37 +03:00
Alexey Andreev
ce13c05342
JS: add ability to set limit for top-level names.
...
The purpose of this option is JS engines are too sensible for number
of methods in closure, while they don't care about methods
in an object.
2019-02-13 17:03:13 +03:00
Alexey Andreev
35ca7fd152
Add lazy compilation pipeline that can work a little bit faster in incremental compiler
2019-01-30 19:00:07 +03:00
Alexey Andreev
e404e2d37f
Fix proxy bug in dev server
2019-01-27 23:00:20 +03:00
Alexey Andreev
78c55437e3
Add stack deobfuscation to dev server
2019-01-24 16:28:30 +03:00
Alexey Andreev
1dd379551c
Produce less names in top level scope in dev server mode in order to improve debugging performance in Chrome
2019-01-23 13:28:39 +03:00
Alexey Andreev
85a71e832b
Fix code server WS proxy issue
2019-01-14 15:19:08 +03:00
Alexey Andreev
97a1db1b79
Allow to delegate requests to dev server to another server
2018-12-29 14:28:06 +03:00
Alexey Andreev
830aa2c9b1
Fix bugs in Chrome extension, rewrite it in ES6
2018-12-26 18:57:30 +03:00
Alexey Andreev
58c19e3abc
Minor fixes in development toolchain
2018-12-25 18:45:26 +03:00
Alexey Andreev
6900fd587c
Fix Float/Double.parse for strings like '123.'
2018-12-24 18:16:05 +03:00
Alexey Andreev
f080526aca
Update to latest version of HtmlUnit
2018-12-24 18:15:17 +03:00
Alexey Andreev
90c23e6686
Allow to customize debug port both in IDEA and Chrome
2018-12-20 12:09:32 +03:00
Alexey Andreev
27d81c4fe6
Send less commands over Chrome RDP
2018-12-20 11:43:04 +03:00
Alexey Andreev
a4b61bac19
Fix bugs in debugger
2018-12-19 19:28:35 +03:00
Alexey Andreev
75295f50e5
Make debugging API asynchronous
2018-12-19 18:13:15 +03:00
Alexey Andreev
66126856a2
IDEA: run debug server when running dev server in debug mode, connect to this server automatically from the web page
2018-12-17 19:31:53 +03:00
Alexey Andreev
b1e04da597
IDEA: improve dev server console
2018-12-17 15:46:29 +03:00
Alexey Andreev
d7d4dc1571
Add IDEA run configuration that runs dev server
2018-12-16 20:42:21 +03:00
Alexey Andreev
bab0cd59a6
Improve performance and stability of development server and incremental compilation
2018-12-13 18:45:44 +03:00
Alexey Andreev
5db4c11e10
Fix bugs in dev server
2018-12-11 16:07:43 +03:00
Alexey Andreev
eec458089f
Implement development server
2018-12-10 19:03:18 +03:00
Alexey Andreev
952ed3f193
Fix diagnostics no printed from teavm-cli. Fix diagnostics of unavailable classes and methods
2018-12-09 19:54:04 +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
753755918d
Update build config to avoid jar hell
2018-11-22 14:49:30 +03:00
Alexey Andreev
c7e7e3b3f0
Fix IDEA plugin build
2018-11-20 15:21:55 +03:00
Alexey Andreev
7588962212
Bind system properties to Maven properties.
...
Add heapSize property
2018-11-20 14:55:04 +03:00
Alexey Andreev
fc799afcda
Add Maven option to run TeaVM in a separate process
2018-11-20 14:22:35 +03:00
Alexey Andreev
0f951f8c86
Fix calculating class name in debugger
2018-11-19 15:29:02 +03:00
Alexey Andreev
148c07336c
Generate entire code inside wrapper IIF
2018-11-15 12:47:25 +03:00
Alexey Andreev
064888c9a1
Support Java 11
2018-11-12 18:59:28 +03:00
Alexey Andreev
d4b145a523
IDEA: update project configuration
2018-11-06 14:49:14 +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
eff86f6239
Less output from Maven. Delete TeaVM artifacts from local repository before caching
2018-10-26 16:10:36 +03:00
Alexey Andreev
16ea944a87
Travis: fix build configuration
2018-10-26 15:21:04 +03:00
Alexey Andreev
7bef0f5bb8
Bump IDEA version to 2017.3
2018-10-25 13:15:28 +03:00
Alexey Andreev
55e0905518
IDEA: add facet option to skip TeaVM compilation
2018-09-04 18:30:15 +03:00
Alexey Andreev
8c35ef0189
IDEA: fix starting daemon with specified amount of memory
2018-08-30 11:11:15 +03:00
Alexey Andreev
773d40aa37
IDEA: fix copying sources from dependant modules
2018-08-30 11:10:51 +03:00
Alexey Andreev
7f46c301bd
IDEA: allow to configure build daemon heap size
2018-07-31 16:31:09 +03:00
Alexey Andreev
544eb4e827
IDEA plugin: don't load dependencies transitively, since IDEA provides all necessary dependencies
2018-06-19 18:53:38 +03:00
Alexey Andreev
d7b57ae938
Update asm version to 6.1.1 and versions of Maven plugins that use old asm in order to support Java 10 bytecode version.
2018-05-15 16:20:20 +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
f079b5fbcc
Fix hppc version in Eclipse plugin
2018-03-20 23:19:31 +03:00
Alexey Andreev
05d0220dcd
C backend: initial commit
2018-03-20 23:18:52 +03:00
Mauro de Wit
2055df55b3
Minor fix for TeaVMRunner 'generate source maps' option ( #325 )
...
Use character 'G' in the parseDebugOptions for sourcemaps
2018-02-16 22:27:04 +03:00
Alexey Andreev
21411cd1d8
Update Scala IDEA plugin download URL
2018-01-22 23:32:33 +03:00
Alexey Andreev
bac8336709
Make set-version script to update Eclipse plugin version
2018-01-11 00:17:16 +03:00
Alexey Andreev
02f61b5d50
Never minify TeaVM output in Eclipse builder
2018-01-10 00:06:55 +03:00
Alexey Andreev
09d857f572
Support preserve-class option in CLI
2018-01-09 23:46:24 +03:00
Alexey Andreev
85c686c72a
Remove outdated methodAliases build parameter
...
Replace classAliases with classesToPreserve
2018-01-09 23:38:30 +03:00
Alexey Andreev
10c706077a
When a value in debugger represents plain JavaScript object, show its native fields in watch window
2018-01-08 14:45:46 +03:00
Alexey Andreev
2ae6c872db
Fix error setting breakpoints. See #308
2018-01-08 14:44:43 +03:00
Alexey Andreev
a24d628603
Fix IDEA debugger exception. See #307
2018-01-08 14:43:53 +03:00
Alexey Andreev
2bbdf6caba
Rename DependencyChecker to DependencyAnalyzer
2017-11-12 23:21:16 +03:00
Alexey Andreev
f401f24521
Revive Eclipse plugin
2017-11-09 20:10:15 +03:00
Alexey Andreev
d3134d3941
Fix running multi-configuration tests in HTMLUnit
2017-11-05 14:53:08 +03:00
Alexey Andreev
ffbfd7df79
Add minor stuff to classlib
2017-10-26 20:17:09 +03:00
Alexey Andreev
fecc087993
Print compilation statistics
2017-10-22 20:22:51 +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
19a003669b
Working on CLI
2017-10-12 00:19:56 +03:00
Alexey Andreev
7f76d31330
Update IDEA files
2017-10-08 21:41:08 +03:00
Alexey Andreev
4171d468d4
JS: add reflection support for constructors
2017-07-17 22:21:17 +03:00
Alexey Andreev
e1234df7e1
Fix positioning error messages in JPS
2017-07-05 00:08:28 +03:00
Alexey Andreev
c84dcd366e
Display breakpoint status in IDEA
2017-07-04 07:18:02 +03:00
Alexey Andreev
1581345e17
Properly report breakpoint hit event
2017-07-04 06:37:17 +03:00
Alexey Andreev
faec413cf0
Remove annoying tab in debug tool window
2017-07-04 00:46:58 +03:00
Alexey Andreev
db97b7f732
Fix various issues in debugger
2017-07-02 16:25:11 +03:00
Alexey Andreev
434a3dd207
Fix IDEA debugger issues
2017-07-01 23:41:21 +03:00
Alexey Andreev
f86e498898
Speed-up travis build
2017-07-01 15:48:07 +03:00
Alexey Andreev
cdec4560ba
Remove dumb comments containing only @author annotation
2017-07-01 13:13:52 +03:00
Alexey Andreev
4948c37419
Fix build daemon not stopping after IDEA shutdown
2017-06-23 23:56:02 +03:00
Alexey Andreev
59e5c16b31
Update version to 0.6.0-SNAPSHOT
2017-06-19 20:50:19 +03:00
Alexey Andreev
6653118dd8
Allow to edit TeaVM build properties from IDEA UI
2017-06-16 00:57:06 +03:00
Alexey Andreev
f0637fda41
Remove obsolete configuration properties
2017-06-12 22:25:13 +03:00
Alexey Andreev
45b0836ac6
Fix updating source map file during incremental build in IDEA
2017-06-11 00:41:06 +03:00
Alexey Andreev
0397bdced1
Report copied source files to JPS as changed files
2017-06-07 14:34:05 +03:00
Alexey Andreev
91a7f69bee
Report error in JPS when TeaVM build crashes
2017-06-06 23:08:31 +03:00
Alexey Andreev
d8913f85d1
Improve incremental compilation in IDEA.
...
Fix bug in source copier.
2017-06-01 19:15:24 +03:00
Alexey Andreev
89eb87e8ca
Improve performance of source file copier
2017-06-01 16:14:25 +03:00
Alexey Andreev
36f2932caa
Add incremental build to JPS
2017-06-01 16:14:25 +03:00