Irmen de Jong
|
a086d6e009
|
allow labels also in blocks instead of only in subroutines
|
2021-04-18 23:03:18 +02:00 |
|
Irmen de Jong
|
c70bbdab26
|
fixed missing type checking in vardecl initializer values. Fixes #29
Also fix wrong assert of 0 const check in assembly gen for if-statement comparisons.
|
2021-04-18 22:46:21 +02:00 |
|
Irmen de Jong
|
3d956ef554
|
fix wrong values for register used in array indexing expressions
added the L/H byte parts of the cx16 virtual registers
|
2021-04-18 13:53:02 +02:00 |
|
Irmen de Jong
|
329f491c30
|
fix compiler crash with scoped const vardecls
|
2021-04-18 01:56:26 +02:00 |
|
Irmen de Jong
|
e93701f50e
|
fix compiler error when initializing var with memory(...) in block scope instead of subroutine
|
2021-04-17 15:49:41 +02:00 |
|
Irmen de Jong
|
e680de05ea
|
workaround for the joystick_get() irq problem
|
2021-04-15 22:56:52 +02:00 |
|
Irmen de Jong
|
56fec674c5
|
actually not simplifying if-code generation, leads to larger code at the moment
|
2021-04-13 00:03:22 +02:00 |
|
Irmen de Jong
|
54d92a027a
|
fix problems with moving vardecls from inner scope to subroutine scope
|
2021-04-12 22:53:25 +02:00 |
|
Irmen de Jong
|
319ac3a641
|
preparing optimizations for if statements
|
2021-04-12 03:34:58 +02:00 |
|
Irmen de Jong
|
0a03c46351
|
preparing optimization plan for if statements
|
2021-04-12 02:37:15 +02:00 |
|
Irmen de Jong
|
ae1b62e147
|
optimized integer comparison expressions some more
|
2021-04-12 01:23:17 +02:00 |
|
Irmen de Jong
|
8d567f6b06
|
added cx16.joystick_get2() for convenience api
|
2021-04-12 01:07:46 +02:00 |
|
Irmen de Jong
|
b1ef09675b
|
fix compiler crash for some struct/array initialization assignment literals containing not just numbers
|
2021-04-10 00:28:32 +02:00 |
|
Irmen de Jong
|
2b7b925090
|
codegen now uses correct machine target's string encoder/decoder. Encoding more robust by checking upper case mapping if lowercase mapping fails.
|
2021-04-09 23:33:32 +02:00 |
|
Irmen de Jong
|
e0454e95db
|
warn about for-loop wrapped iteration if loop range is inverted from normal
|
2021-04-08 22:54:47 +02:00 |
|
Irmen de Jong
|
91e421d961
|
optimize x % p where p=power-of-2, into just x & (p-1)
|
2021-04-08 22:21:16 +02:00 |
|
Irmen de Jong
|
c853afe769
|
fix compiler crash due to certain redundant typecast expressions
|
2021-04-08 19:45:44 +02:00 |
|
Irmen de Jong
|
1a64cb38d5
|
fix compiler crash with assigning certain array values as vardecl initializer
|
2021-04-08 19:21:17 +02:00 |
|
Irmen de Jong
|
ccebd22856
|
callgraph: mark start() also in use
|
2021-04-08 02:43:59 +02:00 |
|
Irmen de Jong
|
a1f3b82333
|
vtui update
|
2021-04-08 01:36:25 +02:00 |
|
Irmen de Jong
|
3dda29781e
|
changed MEMTOP2 into cx16.numbanks() to query the number of RAM banks installed
|
2021-04-08 01:05:38 +02:00 |
|
Irmen de Jong
|
a9d297ee31
|
fix inlining of sub with var that has default initialization
|
2021-04-08 00:35:02 +02:00 |
|
Irmen de Jong
|
e5ff61f201
|
allow inlining of subroutines with parameters, and fix inlining of subroutines with variables
|
2021-04-07 23:38:25 +02:00 |
|
Irmen de Jong
|
d116eb7655
|
paranoid, be sure to not kill carry
|
2021-04-06 23:55:20 +02:00 |
|
Irmen de Jong
|
bc726c6334
|
optimized slow evaluation of byte-to-wordarray assignment
|
2021-04-06 22:50:16 +02:00 |
|
Irmen de Jong
|
123473dfc8
|
cleanup
|
2021-04-06 00:16:29 +02:00 |
|
Irmen de Jong
|
d9eccd4fba
|
set correct rom banks when using floats
|
2021-04-05 23:21:07 +02:00 |
|
Irmen de Jong
|
5b890847e5
|
make sure BASIC rom is banked in again when program exits
|
2021-04-05 23:12:10 +02:00 |
|
Irmen de Jong
|
64c85b9617
|
fix cx16 rom v39 float changes
|
2021-04-05 22:54:40 +02:00 |
|
Irmen de Jong
|
3e3b0bcd8b
|
callgraph improved unused node checking
|
2021-04-05 20:45:18 +02:00 |
|
Irmen de Jong
|
4c1eb1b12a
|
callgraph
|
2021-04-05 20:32:30 +02:00 |
|
Irmen de Jong
|
530d03d284
|
callgraph
|
2021-04-05 18:50:46 +02:00 |
|
Irmen de Jong
|
619fa9b65e
|
callgraph
|
2021-04-05 18:03:36 +02:00 |
|
Irmen de Jong
|
0032235933
|
tweak to fix for windows line ending (\r\n) parse errors
|
2021-04-05 01:49:52 +02:00 |
|
Irmen de Jong
|
61d1f1ea87
|
oops
|
2021-04-05 01:18:22 +02:00 |
|
Irmen de Jong
|
238d27acdc
|
more pleasing bob image and pattern
|
2021-04-05 01:14:55 +02:00 |
|
Irmen de Jong
|
2f62271453
|
callgraph
|
2021-04-05 00:55:27 +02:00 |
|
Irmen de Jong
|
75d5117a2d
|
fix struct flattening parent node mismatch
|
2021-04-05 00:30:42 +02:00 |
|
Irmen de Jong
|
b4700af2f5
|
fix windows line ending (\r\n) parse errors
|
2021-04-05 00:12:04 +02:00 |
|
Irmen de Jong
|
374e2b311d
|
refactoring unused code removal and noModification
|
2021-04-04 16:36:33 +02:00 |
|
Irmen de Jong
|
49036abbaf
|
docs
|
2021-04-04 12:55:29 +02:00 |
|
Irmen de Jong
|
38ccbac97c
|
stop after a couple of parse errors (it's not useful to continue for long if there are parse errors)
|
2021-04-04 12:29:56 +02:00 |
|
Irmen de Jong
|
6b4896b8f5
|
doc
|
2021-04-02 21:28:23 +02:00 |
|
Irmen de Jong
|
d582d1cc42
|
fix inlining subroutines multiple times
|
2021-04-02 21:23:40 +02:00 |
|
Irmen de Jong
|
9e2b8a2aa9
|
fix ast node duplication/reference bug in certain optimizers
|
2021-04-02 19:01:46 +02:00 |
|
Irmen de Jong
|
6fdc733941
|
inlining subroutines that contain variable declarations is now possible (gives a warning though)
|
2021-04-02 18:30:32 +02:00 |
|
Irmen de Jong
|
422b390c48
|
fix ast node duplication/reference bug in certain optimizers
|
2021-04-02 16:56:52 +02:00 |
|
Irmen de Jong
|
67a9d1285c
|
some words about how the X register can't or can be used
|
2021-04-02 00:19:46 +02:00 |
|
Irmen de Jong
|
8e26e38ecc
|
fix RTS-issue with inlined return statement
|
2021-04-01 23:30:19 +02:00 |
|
Irmen de Jong
|
02e12d8575
|
improvements for inlined subroutines: fix identifier scoping
|
2021-04-01 23:16:04 +02:00 |
|