Commit Graph

1638 Commits

Author SHA1 Message Date
Irmen de Jong
4d929e00f5 restructure codegen 2018-03-06 22:30:56 +01:00
Irmen de Jong
44c0d243ef astnode properties fix 2018-03-06 22:06:30 +01:00
Irmen de Jong
6696887f0e more vm opcodes 2018-03-06 21:36:41 +01:00
Irmen de Jong
bcc1a6b91f memory mapped i/o (charin, charout) 2018-03-05 23:13:19 +01:00
Irmen de Jong
7a5813d3be comment 2018-03-04 17:03:49 +01:00
Irmen de Jong
12ae95bbbc timer irq changes 2018-03-04 16:45:52 +01:00
Irmen de Jong
8bfe21dd65 typing 2018-03-04 15:11:45 +01:00
Irmen de Jong
ab84b6012b timer things 2018-03-03 12:13:25 +01:00
Irmen de Jong
27e6749533 vm tweaks 2018-03-03 00:07:44 +01:00
Irmen de Jong
0603b93f47 call/return 2018-03-02 02:49:43 +01:00
Irmen de Jong
8e7c504a88 optimized opcode dispatch 2018-02-28 02:40:16 +01:00
Irmen de Jong
13273ce6cc timer 'irq' in vm 2018-02-28 01:26:24 +01:00
Irmen de Jong
e9b5bc8200 tinyvm 2018-02-27 21:11:08 +01:00
Irmen de Jong
ed8267b1ec tinyvm 2018-02-25 16:43:00 +01:00
Irmen de Jong
ac2ed0528f augassign dealings with value > 255 2018-02-22 01:22:32 +01:00
Irmen de Jong
e41efef204 fixed some incrdecr optimization issues 2018-02-21 00:50:09 +01:00
Irmen de Jong
920b6ca51e got rid of multi-assignments 2018-02-20 01:16:16 +01:00
Irmen de Jong
de3bca0763 const folding cleanups and explicit notion of assignment LHS 2018-02-20 00:08:41 +01:00
Irmen de Jong
a171bb998d first part of goto codegen 2018-02-16 16:43:21 +01:00
Irmen de Jong
191978c8fb slightly optimized the most called function 2018-02-16 13:59:18 +01:00
Irmen de Jong
daca1cce37 fix some errors 2018-02-16 12:42:13 +01:00
Irmen de Jong
4134400059 fix some errors 2018-02-16 00:55:58 +01:00
Irmen de Jong
5d7e31ed74 fix some errors 2018-02-13 23:11:36 +01:00
Irmen de Jong
79283a4117 cleanups 2018-02-13 22:14:59 +01:00
Irmen de Jong
fb1a4aa4ea character literals (strings of len 1) are no longer automatically converted to byte integers 2018-02-11 15:11:14 +01:00
Irmen de Jong
780443ddab character literals (strings of len 1) are no longer automatically converted to byte integers 2018-02-11 14:18:22 +01:00
Irmen de Jong
890fcffdfa fixes 2018-02-08 23:35:50 +01:00
Irmen de Jong
4dc214199f restructure 2018-02-08 21:56:43 +01:00
Irmen de Jong
a30b2894cd restructure 2018-02-08 21:10:52 +01:00
Irmen de Jong
3852a79e31 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	il65/optimize.py
#	il65/plyparse.py
#	tests/test_parser.py
2018-02-08 20:44:20 +01:00
Irmen de Jong
ca5f2f3607 constant folding is now also done in regular compiler not only when optimizing (it's too valuable to skip) 2018-02-07 23:29:56 +01:00
Irmen de Jong
7b2af25a42 much improved constant folding by actually evaluating const expressions 2018-02-07 23:01:47 +01:00
Irmen de Jong
e0628c7814 much improved constant folding by actually evaluating const expressions 2018-02-07 02:10:52 +01:00
Irmen de Jong
938c541cc2 codegen 2018-02-04 22:47:50 +01:00
Irmen de Jong
d18876ee70 incrdecr codegen 2018-02-03 02:23:06 +01:00
Irmen de Jong
a560982b7e incrdecr codegen 2018-02-03 01:44:14 +01:00
Irmen de Jong
76755cf57d stuff 2018-02-02 22:42:09 +01:00
Irmen de Jong
43a59817bf expression float consts 2018-02-02 00:12:17 +01:00
Irmen de Jong
dba4dd780a coerce values put back mostly 2018-02-01 01:56:36 +01:00
Irmen de Jong
f06721a4ce fixed ZP merge errors 2018-01-31 23:32:21 +01:00
Irmen de Jong
dd96cd506d fixed some optimization destroying parent 2018-01-31 01:38:55 +01:00
Irmen de Jong
9b23bfb85c builtin functions are now defined as BuiltinFunction in topmost scope 2018-01-30 22:30:05 +01:00
Irmen de Jong
d299742ddf fixed ast parent pointers 2018-01-30 01:38:37 +01:00
Irmen de Jong
4d70e3d42f more explicit use of Expression, fixed some optimizations 2018-01-29 23:39:01 +01:00
Irmen de Jong
f82ceab969 more optimizations 2018-01-29 21:36:01 +01:00
Irmen de Jong
2a662ba256 more optimizations 2018-01-28 23:13:29 +01:00
Irmen de Jong
197a4e503e improved const var evaluation, more tests, added const_num_val() on certain nodes 2018-01-27 01:07:00 +01:00
Irmen de Jong
baf3adfa8a more optimizations 2018-01-24 01:27:38 +01:00
Irmen de Jong
31c6186245 zero division checks and more optimizations 2018-01-24 00:41:50 +01:00
Irmen de Jong
6573368a69 more semantic checks and codegen 2018-01-23 22:47:35 +01:00