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
|
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
|
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
|
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 |
|
Irmen de Jong
|
fbf52d773f
|
various fixes
|
2018-01-21 18:17:39 +01:00 |
|
Irmen de Jong
|
ab71a15007
|
optimizer
|
2018-01-21 13:38:53 +01:00 |
|
Irmen de Jong
|
eb58119b97
|
compiler
|
2018-01-21 03:44:04 +01:00 |
|
Irmen de Jong
|
3ea0723c3e
|
compiler
|
2018-01-21 01:32:50 +01:00 |
|
Irmen de Jong
|
67f1941766
|
expressions
|
2018-01-18 23:42:07 +01:00 |
|
Irmen de Jong
|
861379c4d7
|
generalized Ast node tree by giving all classes .nodes attribute
|
2018-01-18 22:31:16 +01:00 |
|
Irmen de Jong
|
9b77dcc6b8
|
more semantic code checks
|
2018-01-16 01:47:55 +01:00 |
|
Irmen de Jong
|
db97be69fe
|
fix subroutine usage scanning
|
2018-01-15 21:12:17 +01:00 |
|
Irmen de Jong
|
8fc6a5ada9
|
convert bool to 1/0 and single char to byte
|
2018-01-15 02:26:36 +01:00 |
|
Irmen de Jong
|
afc4ba8ff0
|
fixed a bunch of issues
|
2018-01-15 00:46:27 +01:00 |
|
Irmen de Jong
|
10d0dbe80b
|
improved sourceref column calculation when dealing with tabs, added more error checks
|
2018-01-14 18:02:39 +01:00 |
|
Irmen de Jong
|
07387f501a
|
restructure code generator
|
2018-01-14 15:18:50 +01:00 |
|
Irmen de Jong
|
ee9a5716b0
|
vars init
|
2018-01-14 02:32:03 +01:00 |
|
Irmen de Jong
|
faa08133a8
|
memset fixed
|
2018-01-13 22:42:07 +01:00 |
|
Irmen de Jong
|
1990f75e98
|
removed most old stuff
|
2018-01-13 16:20:26 +01:00 |
|
Irmen de Jong
|
7218c17689
|
var inits
|
2018-01-13 16:02:41 +01:00 |
|
Irmen de Jong
|
1df28c8091
|
var dimensions check
|
2018-01-13 02:13:32 +01:00 |
|
Irmen de Jong
|
62dfdace71
|
zp variable allocation
|
2018-01-13 01:19:45 +01:00 |
|
Irmen de Jong
|
e6804b2bf9
|
symbol table fixes
|
2018-01-12 23:54:50 +01:00 |
|
Irmen de Jong
|
614f90fc35
|
tweaks
|
2018-01-12 00:55:47 +01:00 |
|
Irmen de Jong
|
534bf2f252
|
codegen vars
|
2018-01-11 23:46:31 +01:00 |
|
Irmen de Jong
|
29060f3373
|
expression
|
2018-01-10 23:45:10 +01:00 |
|
Irmen de Jong
|
0bb5f98768
|
code generation
|
2018-01-10 00:12:25 +01:00 |
|
Irmen de Jong
|
14e36a8708
|
code generation v2 started
|
2018-01-09 21:38:19 +01:00 |
|
Irmen de Jong
|
b8506ee7d4
|
optimize, tests, refactor
|
2018-01-09 00:05:55 +01:00 |
|
Irmen de Jong
|
7d8c2bf161
|
optimize
|
2018-01-08 03:18:38 +01:00 |
|
Irmen de Jong
|
12c3ddd207
|
renames
|
2018-01-07 23:48:31 +01:00 |
|
Irmen de Jong
|
68c1d2af4c
|
comp
|
2018-01-07 20:39:39 +01:00 |
|
Irmen de Jong
|
9b68722df3
|
attr
|
2018-01-07 14:38:52 +01:00 |
|
Irmen de Jong
|
18526469ed
|
plyparsing more or less done
|
2018-01-07 04:39:21 +01:00 |
|
Irmen de Jong
|
16b95cf3e9
|
plyparsing more or less done
|
2018-01-07 04:01:06 +01:00 |
|
Irmen de Jong
|
d9c62c2149
|
endl parsing
|
2018-01-06 04:13:21 +01:00 |
|
Irmen de Jong
|
d92f91f22f
|
fix syntax errors
|
2018-01-05 20:48:34 +01:00 |
|
Irmen de Jong
|
c587125674
|
print parse tree
|
2018-01-05 02:41:38 +01:00 |
|
Irmen de Jong
|
3c70790fbf
|
ply
|
2018-01-04 04:53:15 +01:00 |
|
Irmen de Jong
|
6511283bb8
|
refactor
|
2018-01-02 02:19:34 +01:00 |
|
Irmen de Jong
|
8a99844140
|
register preserve is no longer the default
|
2018-01-01 23:24:39 +01:00 |
|
Irmen de Jong
|
5bfca554a4
|
shifting by more than 1 bit possible
|
2018-01-01 18:57:12 +01:00 |
|
Irmen de Jong
|
57bc7d49bc
|
incr decr fixes
|
2018-01-01 18:09:59 +01:00 |
|
Irmen de Jong
|
aa2f3dd169
|
screen scroll
|
2018-01-01 16:41:08 +01:00 |
|
Irmen de Jong
|
50db122525
|
multiple parse errors
|
2018-01-01 05:49:12 +01:00 |
|
Irmen de Jong
|
6922ea2a0b
|
float incr/decr
|
2018-01-01 05:17:16 +01:00 |
|
Irmen de Jong
|
3dcfa42574
|
float incr/decr by 1
|
2017-12-31 16:07:52 +01:00 |
|
Irmen de Jong
|
3b0d6e969b
|
ast refactor
|
2017-12-31 04:45:27 +01:00 |
|
Irmen de Jong
|
1ab253b4a1
|
ast refactor
|
2017-12-31 04:10:27 +01:00 |
|
Irmen de Jong
|
2f6ef28c80
|
rename
|
2017-12-31 03:30:38 +01:00 |
|
Irmen de Jong
|
a5283bfc7b
|
allow floats in ZP, if_pos and if_neg added, ZP allocations more flexible
|
2017-12-31 00:54:06 +01:00 |
|
Irmen de Jong
|
e67e4c0b13
|
allow just ? in sub return spec
|
2017-12-30 21:36:42 +01:00 |
|
Irmen de Jong
|
be40cdd8aa
|
math
|
2017-12-30 20:03:19 +01:00 |
|
Irmen de Jong
|
a7465f480a
|
various
|
2017-12-30 16:28:36 +01:00 |
|
Irmen de Jong
|
a5b4849058
|
fixes
|
2017-12-29 14:17:51 +01:00 |
|
Irmen de Jong
|
52d685b0fc
|
fix clobberzp and zp config only once
|
2017-12-29 12:34:09 +01:00 |
|
Irmen de Jong
|
739f5b9659
|
fix reg2reg and incr decr 16 bits
|
2017-12-29 02:30:21 +01:00 |
|
Irmen de Jong
|
68a3b34374
|
fix 16 bit inc dec
|
2017-12-29 01:16:39 +01:00 |
|
Irmen de Jong
|
e30ba696db
|
options
|
2017-12-29 00:36:35 +01:00 |
|
Irmen de Jong
|
5e16b82418
|
fixing conditional calls
|
2017-12-28 22:27:13 +01:00 |
|
Irmen de Jong
|
4e4baff9e0
|
augmented assignments
|
2017-12-28 04:33:55 +01:00 |
|
Irmen de Jong
|
ff39d15a01
|
fix conditional expression parse
|
2017-12-28 01:00:34 +01:00 |
|
Irmen de Jong
|
e1ef9ff611
|
unary operator ~ (bitwise invert)
|
2017-12-28 00:44:17 +01:00 |
|
Irmen de Jong
|
f5c7573fb3
|
Vice labels and breakpoints
|
2017-12-27 23:46:56 +01:00 |
|
Irmen de Jong
|
44065597ff
|
conditional gotos
|
2017-12-27 21:19:57 +01:00 |
|
Irmen de Jong
|
a3faf07c8c
|
if statement
|
2017-12-27 12:57:42 +01:00 |
|
Irmen de Jong
|
be76d3321b
|
fix return value clobbering
|
2017-12-26 01:55:29 +01:00 |
|
Irmen de Jong
|
4a9d3200cd
|
fixed arg parsing
|
2017-12-25 23:54:10 +01:00 |
|
Irmen de Jong
|
c78cbc4a33
|
add SI register
|
2017-12-25 21:43:06 +01:00 |
|
Irmen de Jong
|
a0a561cfb6
|
avoid needless saving of A register
|
2017-12-25 19:24:22 +01:00 |
|
Irmen de Jong
|
afaf8e9beb
|
subroutine usage tracking
|
2017-12-25 19:09:10 +01:00 |
|