Commit Graph

1257 Commits

Author SHA1 Message Date
Alexey Andreev
54ecf6e00f One step toward further minification 2015-02-12 19:08:44 +04:00
konsoletyper
727c02381a Fix error in JSO alias generator 2015-02-11 23:21:28 +04:00
konsoletyper
90f1f19f08 Avoid unnecessary parenthesis 2015-02-11 23:11:58 +04:00
konsoletyper
857ed9754e Fix code styling 2015-02-10 22:10:06 +04:00
konsoletyper
b69b5b9219 Fix dependency problem in JSO 2015-02-10 21:57:15 +04:00
konsoletyper
6d7d2691ae Merge branch 'async' into shannah_threads 2015-02-09 23:49:10 +04:00
konsoletyper
cf06ee7f87 Fix error building callgraph with JSFunctors 2015-02-09 23:48:22 +04:00
konsoletyper
74a76804fb Merge remote-tracking branch 'origin/shannah_threads' into shannah_threads 2015-02-09 23:14:25 +04:00
konsoletyper
71195c04ce Fix some bugs 2015-02-09 23:04:02 +04:00
Steve Hannah
a1df42878c Changed native functions to use new AsyncCallback approach. 2015-02-09 10:54:06 -08:00
Steve Hannah
9465d24723 Partial merge with async. 2015-02-09 09:49:53 -08:00
Alexey Andreev
dd25ae4759 Further removal of direct JavaScript generation from classlib 2015-02-09 19:36:45 +04:00
konsoletyper
82b110ad4c Fix little bug in $rt_rootInvocationAdapter 2015-02-09 00:00:53 +04:00
konsoletyper
62431c493c Don't insert $rt_asyncAdapter for methods that don't override async
methods
2015-02-08 23:12:33 +04:00
konsoletyper
2ae7b587d1 Most of TClass now uses Platform instead of code generation 2015-02-08 22:35:51 +04:00
Steve Hannah
21468ef419 Fixed issue with the instruction copier. Now it builds ok with synchronized instruction. Getting an error at runtime... 2015-02-07 10:00:48 -08:00
konsoletyper
d93fa6cf41 Start eliminating JavaScript generators in classlib in favour of calling
Platform and JSO
2015-02-07 20:58:47 +04:00
Steve Hannah
d37da2b078 Made small change to statement generator for monitor instructions. 2015-02-07 07:34:02 -08:00
Steve Hannah
68aa193728 Made some changes based on Alexey's comments of previous changes. Still getting same error on build. 2015-02-07 07:22:13 -08:00
konsoletyper
3b1d6851a4 Refactoring. Add AsyncCallback support 2015-02-07 18:36:18 +04:00
konsoletyper
942542df6f Produce less code 2015-02-07 16:57:45 +04:00
konsoletyper
268b66e523 Fix async virtual methods 2015-02-07 15:21:46 +04:00
Steve Hannah
e2b6b7b2df Fixed monitorExit to work with more than one enter/exit. 2015-02-06 17:07:01 -08:00
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
b37c92b02d Merged Alexey's patch for Thread.start 2015-02-03 09:07:46 -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
72cb3973d6 Added some implementations for Object.wait(), Object.notify(), Object.notifyAll(), and Thread.start() to try to emulate the behaviour of multithreaded environments. 2015-02-02 12:45:32 -08:00
Steve Hannah
7c084effb0 Merge branch 'async' of https://github.com/konsoletyper/teavm into threads 2015-02-02 08:26:12 -08:00
Steve Hannah
73a1e95aae Added some missing classes to be able to compile codenameone. 2015-02-02 08:24:57 -08:00
Alexey Andreev
b36c10760c Working on async exception catching 2015-02-02 18:58:44 +04:00
konsoletyper
4496b1ab30 Add sample application to show how CPS generator works 2015-02-01 23:08:42 +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
c0d28a236c Merge remote-tracking branch 'origin/master' 2015-01-29 19:11:16 +04:00