Commit Graph

361 Commits

Author SHA1 Message Date
Steve Hannah
2fbc50e76f Most of the elements are in place for monitors to work... something is wrong tough because I get errors when I try to compile files with synchronized sections. 2015-02-06 16:47:59 -08:00
Steve Hannah
cca4336a15 Merged with latest async branch. Also added MonitorExitInstruction and MonitorEnterInstruction classes, and updated all associated visitors. These don't do anything yet though. 2015-02-06 14:11:07 -08:00
Steve Hannah
d84889798c Merge branch 'async' of https://github.com/konsoletyper/teavm into threads 2015-02-06 13:17:43 -08:00
Alexey Andreev
ce2c625f53 Add test to check async virtual call resolution. Fix bug in async unit
tests support
2015-02-06 19:02:14 +04:00
Alexey Andreev
1f8ef1092c Support async code in junit 2015-02-06 18:51:42 +04:00
Alexey Andreev
484bf61a5c Fix wielding of try/catch blocks 2015-02-06 18:01:20 +04:00
konsoletyper
de7dc645bc Add wielding of try/catch statements 2015-02-06 01:56:39 +04:00
konsoletyper
5dfc8a3ed6 Return back AST optimization of async methods. 2015-02-06 00:53:51 +04:00
Alexey Andreev
73721e5b31 Add exception support to async methods 2015-02-05 17:50:25 +04:00
Steve Hannah
e6e52d1be5 Added preliminary support for keeping track of which thread is currently running. This implementation simply overrides setTimeout() to keep track of the thread that is running. It restores it to the main thread after a thread finishes running. May need to override other async methods e.g. XMLHTTPRequest, but not sure yet. This change may be sufficient if all of our async methods meant to emulate threads use the setTimeout construction. 2015-02-04 13:55:02 -08:00
Steve Hannah
8fa50a0504 Merge branch 'async' of https://github.com/konsoletyper/teavm into threads 2015-02-03 07:07:46 -08:00
Alexey Andreev
8a11239436 Temporarily switch off expression wielding optimization in async
methods.
2015-02-03 11:56:17 +04:00
Steve Hannah
7c084effb0 Merge branch 'async' of https://github.com/konsoletyper/teavm into threads 2015-02-02 08:26:12 -08:00
Alexey Andreev
b36c10760c Working on async exception catching 2015-02-02 18:58:44 +04:00
konsoletyper
071f2bb46c First working prototype of CPS 2015-02-01 22:55:33 +04:00
konsoletyper
62d3e9f40e Further work on CPS generator 2015-02-01 22:08:04 +04:00
konsoletyper
cff91e03ff Add resolving of JSR opcode 2015-02-01 20:40:56 +04:00
konsoletyper
3c9acd8fab Further work on CPS generator 2015-02-01 17:43:21 +04:00
konsoletyper
672de2f111 Fix errors. Generalize AST optimizer to handle async methods 2015-02-01 00:02:20 +04:00
konsoletyper
de85560876 Implement CFG splitting 2015-01-31 00:02:41 +04:00
Alexey Andreev
5593aa074e Start implementing async JS generator 2015-01-30 19:15:12 +04:00
Alexey Andreev
c546af553b Fix slowness 2015-01-30 12:46:10 +04:00
Alexey Andreev
6353fad620 Fix error with properties not available in renderer 2015-01-27 14:29:40 +04:00
konsoletyper
871667cacb Minor bugfixes 2015-01-22 21:04:17 +04:00
Alexey Andreev
67677494b3 Fix error in transforming classes if missing items found 2015-01-22 14:25:40 +04:00
Alexey Andreev
8950121d01 Fix bug with source maps generator 2015-01-20 18:45:20 +04:00
Alexey Andreev
525fd89374 Minor improvements and bugfixes 2015-01-20 18:10:13 +04:00
Alexey Andreev
3935d27f5b Fix bugs 2015-01-19 18:19:38 +04:00
alexey-andreev
8188878488 Add support of new diagnostics API in Eclipse 2015-01-18 19:06:21 +04:00
Alexey Andreev
d55bd862d0 Missing native methods are reported through diagnostics. Better
rendering of problem stack trace.
2015-01-16 18:36:11 +04:00
Alexey Andreev
9154f4eff9 Add post-processor that reports references to missing items and replaces
these references with code that throws error.
2015-01-16 17:47:25 +04:00
Alexey Andreev
4299836ef4 First working version with new diagnostics API 2015-01-14 19:12:06 +04:00
Alexey Andreev
bdf4f7dbae Merge branch 'master' into diagnostics 2015-01-14 17:54:08 +04:00
Alexey Andreev
b3a41892a3 Fix Class.getName(). Fix https://github.com/konsoletyper/teavm/issues/43
Fix Eclipse plugin descriptor
2015-01-13 19:17:18 +04:00
Alexey Andreev
eeddfd1298 Fix bugs that were found by FindBugs. Fix
https://github.com/konsoletyper/teavm/issues/46
https://github.com/konsoletyper/teavm/issues/45
https://github.com/konsoletyper/teavm/issues/44
https://github.com/konsoletyper/teavm/issues/42
2015-01-13 18:25:15 +04:00
Alexey Andreev
1fff443c36 Dependency API supports multiple occurence of reaching events for
different location
2014-12-29 19:16:29 +04:00
Alexey Andreev
316850bbb5 Merge branch 'master' into diagnostics 2014-12-11 18:54:25 +04:00
Alexey Andreev
47f5943e8b Refactor TeaVM core for new diagnostics API 2014-12-11 18:54:15 +04:00
Alexey Andreev
0945c27f16 Further work on diagnostics API 2014-12-09 18:43:23 +04:00
Alexey Andreev
844da6760c Clean-up project 2014-12-09 16:21:14 +04:00
Alexey Andreev
30781bb16e Refuse from CallStack for complete CallGraph 2014-11-23 22:34:12 +03:00
konsoletyper
e736cf09d7 Start implementing diagnostics API 2014-11-05 22:14:41 +03:00
konsoletyper
9be6ce9bbf Fix https://github.com/konsoletyper/teavm/issues/32 2014-11-03 20:31:49 +03:00
konsoletyper
9bdd2f6020 Fix https://github.com/konsoletyper/teavm/issues/27 2014-10-25 13:20:41 +04:00
konsoletyper
3de49d6d54 Fix issues in strict mode 2014-10-19 11:02:56 +04:00
konsoletyper
5420ca89f6 Add support of strict mode 2014-10-18 15:32:43 +04:00
konsoletyper
273fc59182 Switch version to 0.3.0-SNAPSHOT 2014-10-13 17:33:25 +04:00
Alexey Andreev
581cae0ef4 Bugfixes: https://github.com/konsoletyper/teavm/issues/23
https://github.com/konsoletyper/teavm/issues/22
https://github.com/konsoletyper/teavm/issues/21
2014-10-12 18:05:31 +04:00
konsoletyper
9e09c247e6 Replace old code samples with new ones 2014-10-05 15:45:44 +04:00
konsoletyper
71343b910e Fix passing of some DukeScript tests 2014-10-04 17:54:56 +04:00