Commit Graph

229 Commits

Author SHA1 Message Date
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
Alexey Andreev
2e8e3a65bd Add IO bufferization 2017-06-01 16:14:24 +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
6a1dd17af9 IDEA: refactor JPS plugin to allow proper redeployment in javaee plugin 2017-04-12 17:34:14 +03:00
sertic
19b804b5fc #252 WASM binary version was reset to 0x01 for MVP official release
In current browsers and for the official MVP only WASM binary version 0x01 is supported.
All other binary versions are no longer required or supported, hence the generation
logic for them is no longer needed.
2017-04-04 12:48:00 +02:00
Alexey Andreev
9e4e26ae18 Fix bug in metaprogramming API 2017-03-30 17:20:19 +03:00
Alexey Andreev
6c97f8afe3 Refactor code to avoid duplication 2017-03-17 13:57:37 +03:00
Alexey Andreev
891b906a8c Fix serialization of call graph. Fix minor bugs in build daemon 2017-03-17 13:57:37 +03:00
Alexey Andreev
1ae4a95128 Add TeaVM build daemon to IDEA 2017-03-17 13:57:37 +03:00
Alexey Andreev
6b31e13cbb Add abstraction of build strategy. Implement in-process build strategy. Further step is to implement build strategy that communicates with build daemon 2017-03-17 13:57:36 +03:00
Alexey Andreev
6d3b329540 Remove unnecessary comments and eliminate duplicate code 2017-02-26 13:52:06 +03:00
Alexey Andreev
a48e3fbd61 Write debug information via buffered stream 2017-02-26 13:51:19 +03:00
Alexey Andreev
3821d29f1c Don't allow user to change minifier settings via IDEA facet UI 2017-02-26 07:36:07 +03:00
Alexey Andreev
3e3b25bddc Fix serialization of IR to binary format for incremental build 2017-02-26 07:07:02 +03:00
Alexey Andreev
1d0230b4c6 Fix bytecode class renamer. Remove unnecessary files 2017-02-26 00:08:17 +03:00
Alexey Andreev
7d876668c5 Rename org.ow2.asm to org.teavm.asm in class loader during JPS build. Fix IDEA plugin deployment in travis 2017-02-18 23:50:31 +03:00
Alexey Andreev
b3f52409a7 Fix build 2017-02-18 20:35:04 +03:00
Alexey Andreev
0900f82585 Fix build 2017-02-18 20:26:02 +03:00
Alexey Andreev
b4e88988f6 Build IDEA plugin via Maven 2017-02-18 16:57:52 +03:00
Alexey Andreev
55453c9311 Set version to 0.5.0-SNAPSHOT. Add configuration to deploy to bintray. Update version number during Travis build. 2017-02-16 21:48:13 +03:00
Alexey Andreev
7b6013992c Embed metaprogramming implementation into uberjar for IDEA plugin 2017-02-15 22:49:22 +03:00
Alexey Andreev
d5dd608961 Fix ${project.version} in maven archetype. Add default value for optimizationLevel 2017-02-15 22:48:51 +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
16c467f8e2 Merge pull request #244 from davmac314/cli-classaliases
Add a CLI option to set class aliases.
2017-02-15 21:08:13 +03:00
Davin McCall
d4b11e9817 Add a CLI option to set class aliases.
This adds the "--classalias" option which allows specifying a target
alias for a fully qualified class. The format is:

  --classalias fully.qualified.Name:TargetAlias
2017-02-14 00:06:59 +00: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
5e44c13caf Fix bugs in metaprogramming. Add run configuration that rebuilds TeaVM 2017-02-04 18:24:23 +03:00
Alexey Andreev
55836d6ed7 Fix async splitting of blocks with exception handlers in some cases. Fix https://github.com/konsoletyper/teavm/issues/234 2017-01-24 23:36:15 +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
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
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
9364ad943a WASM: add support of 0x0D binary version 2016-11-20 22:22:33 +03:00
Alexey Andreev
8e2814f984 IDEA: fix building multi-platform projects (JS, WebAssembly) 2016-11-15 23:07:25 +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
eaf28d737e IDEA: replace module configuration with TeaVM facet 2016-11-04 23:41:54 +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
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
37d4c3349e Add AbstractInstructionReader, use it instead InstructionReader where possible 2016-10-22 16:25:38 +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
b4916ee4e7 WASM: fix bugs in support of 0xC binary version 2016-10-09 12:57:11 +03:00
Alexey Andreev
386c703459 WASM: implementing support of 0xC binary version 2016-10-06 19:56:45 +03:00
Alexey Andreev
558bcf1137 Fixing building idea plugin 2016-09-17 11:45:15 +03:00
Alexey Andreev
6c5a691fc9 Fixing minor bugs 2016-09-17 10:42:46 +03:00
Alexey Andreev
1b78de9b40 Minor fixes after rebase 2016-09-17 09:59:13 +03:00
Alexey Andreev
7aaf67d16f Fix minor bugs 2016-09-17 09:33:53 +03:00
Alexey Andreev
ed7e8ff7f4 javascript: refactor renderer 2016-09-17 09:21:26 +03:00
Alexey Andreev
6aa8a6366f Fix default output file name 2016-09-17 09:19:33 +03:00
Alexey Andreev
40af27811f Allow to run WASM generator via maven. 2016-09-17 09:19:32 +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
cc9af93021 Keep variable names in generated sources 2016-09-17 09:19:31 +03:00
Alexey Andreev
1c1b0c69fa Propagating variable name via compiler's pipeline 2016-09-17 09:11:59 +03:00
Alexey Andreev
0ac61919d5 Creating Wasm -> C translator 2016-09-17 09:11:10 +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
1be9ffb19e Rename InstructionLocation to TextLocation. Replace NodeLocation by TextLocation 2016-09-17 08:59:03 +03:00
Alexey Andreev
b83c33bcc6 Add support of WASM in TeaVMTool and CLI 2016-09-17 08:59:02 +03:00