Irmen de Jong
|
c1f2ecd413
|
struct assignment from array value now checks number of elements
|
2020-10-02 22:48:39 +02:00 |
|
Irmen de Jong
|
46fbe01df9
|
added codengeration for assigment of array of values to a struct variable (all members at once)
|
2020-10-02 22:37:52 +02:00 |
|
Irmen de Jong
|
8647a8290e
|
fix code generation for using struct vars in arrays and such
|
2020-10-02 22:21:18 +02:00 |
|
Irmen de Jong
|
bac51f4b31
|
fix subtraction error for bytes
|
2020-10-02 21:30:32 +02:00 |
|
Irmen de Jong
|
582aab180a
|
oops
|
2020-10-02 02:39:19 +02:00 |
|
Irmen de Jong
|
5fb714fcb2
|
expression splitter integrated into expression simplifier
|
2020-10-02 01:54:37 +02:00 |
|
Irmen de Jong
|
3994de77d0
|
fix expression splitter handling related to code ballooning
|
2020-10-02 01:49:55 +02:00 |
|
Irmen de Jong
|
24c8d1f1f4
|
expression splitter for vardecls with binexpr init expression
|
2020-10-02 00:34:12 +02:00 |
|
Irmen de Jong
|
110f877dcc
|
binexpr expression splitter for assignments
|
2020-10-02 00:04:21 +02:00 |
|
Irmen de Jong
|
9cd3a9f8e8
|
fix isSameAs for ArrayIndexed expressions, and by extension, assignment.isAugmentable()
|
2020-10-01 23:26:43 +02:00 |
|
Irmen de Jong
|
1464050bf5
|
expression splitter moved to separate optimizer
|
2020-10-01 02:58:12 +02:00 |
|
Irmen de Jong
|
95e9e1b550
|
avoid adding unneeded variable initalization assignments. Improved removal of useless double assignments.
|
2020-10-01 00:39:49 +02:00 |
|
Irmen de Jong
|
bda1c1c1eb
|
reduce slow estack usage by splitting up simple binary expressions
|
2020-09-30 19:57:16 +02:00 |
|
Irmen de Jong
|
d020a7974a
|
reduce slow estack usage by splitting up simple binary expressions
|
2020-09-30 17:51:35 +02:00 |
|
Irmen de Jong
|
a51fad3aab
|
parentheses around binary exprs in source output
|
2020-09-30 16:38:54 +02:00 |
|
Irmen de Jong
|
3cd32778bb
|
don't split expressions referencing the target variable wrongly
|
2020-09-30 01:11:33 +02:00 |
|
Irmen de Jong
|
8d67056f84
|
fixed estack corruption caused by c64 print_f
|
2020-09-29 21:12:16 +02:00 |
|
Irmen de Jong
|
e986973b5e
|
wrong floats
|
2020-09-29 04:05:45 +02:00 |
|
Irmen de Jong
|
448c934cba
|
optimized neg(x) and abs(x)
|
2020-09-29 03:58:17 +02:00 |
|
Irmen de Jong
|
96ef7ba55d
|
fixed ast to source for structs
|
2020-09-29 00:28:11 +02:00 |
|
Irmen de Jong
|
4372de1e7e
|
allow creating arrays of pointers to other arrays. Usefullness is very limited though...
|
2020-09-29 00:03:47 +02:00 |
|
Irmen de Jong
|
af0fb88adf
|
allow creating string arrays. Fixed array index scaling for word arrays.
|
2020-09-28 02:23:36 +02:00 |
|
Irmen de Jong
|
066233eee8
|
todos
|
2020-09-27 22:05:44 +02:00 |
|
Irmen de Jong
|
b6f85d10b0
|
reintroduced system reset at program exit if zeropage is clobbered
|
2020-09-27 22:00:36 +02:00 |
|
Irmen de Jong
|
6f75413c09
|
some more optimizations in expressions with memreads
|
2020-09-27 21:43:40 +02:00 |
|
Irmen de Jong
|
d45fe4ce74
|
fixed invalid eval stack ptr issue
|
2020-09-27 20:55:34 +02:00 |
|
Irmen de Jong
|
e828c013e6
|
fix word+/-byte errors if byte was unsigned
|
2020-09-27 20:23:42 +02:00 |
|
Irmen de Jong
|
988459f744
|
don't generate a byte storage for every single time a register needs saving
|
2020-09-27 16:26:02 +02:00 |
|
Irmen de Jong
|
7c701bdf3f
|
corrections
|
2020-09-27 14:14:45 +02:00 |
|
Irmen de Jong
|
446fc35d5c
|
avoid excessive comparisons for certain comparison expressions against zero
|
2020-09-27 03:55:59 +02:00 |
|
Irmen de Jong
|
bec9cc7047
|
asm store/load same optimizer back....
|
2020-09-27 02:45:59 +02:00 |
|
Irmen de Jong
|
961380acb6
|
optimized float ==0 or 1 comparisons
|
2020-09-27 01:56:08 +02:00 |
|
Irmen de Jong
|
84c0685a60
|
fix faulty comparison optimization
|
2020-09-27 01:40:12 +02:00 |
|
Irmen de Jong
|
629222f103
|
larger
|
2020-09-26 19:59:57 +02:00 |
|
Irmen de Jong
|
8c448e5bc2
|
finished optimized comparison asm generation
|
2020-09-26 19:55:04 +02:00 |
|
Irmen de Jong
|
b5fa6c2d0a
|
library modules imported from embedded resource now contain proper file path (useful for error messages)
|
2020-09-26 19:30:17 +02:00 |
|
Irmen de Jong
|
680b2df08a
|
just call the asmsub
|
2020-09-26 19:14:06 +02:00 |
|
Irmen de Jong
|
09bd47f98b
|
>
|
2020-09-26 19:02:29 +02:00 |
|
Irmen de Jong
|
7f69f9ce4f
|
<=
|
2020-09-26 18:04:43 +02:00 |
|
Irmen de Jong
|
4179b4e543
|
all unsigned comparisons
|
2020-09-26 17:45:35 +02:00 |
|
Irmen de Jong
|
66364554c4
|
new comparisons testprog
|
2020-09-26 16:11:47 +02:00 |
|
Irmen de Jong
|
43f2448789
|
added (u)byte and (u)word '>'
|
2020-09-26 13:15:03 +02:00 |
|
Irmen de Jong
|
130cee1e70
|
tweak '<' code
|
2020-09-26 12:47:40 +02:00 |
|
Irmen de Jong
|
b976360248
|
fix fallthrough problem with 'when'. Fix too greedy asm optimization that caused conditional jumps to fail sometimes because the condition value wasn't loaded.
|
2020-09-26 00:22:55 +02:00 |
|
Irmen de Jong
|
225bfc4164
|
fix 16+8 bit add and sub sign extensions
|
2020-09-25 22:51:59 +02:00 |
|
Irmen de Jong
|
d7ceda4d82
|
removed the automatic system reset at program exit, this did't work with the new init code
|
2020-09-25 22:12:14 +02:00 |
|
Irmen de Jong
|
14d091e60a
|
crashes :(
|
2020-09-24 23:50:20 +02:00 |
|
Irmen de Jong
|
2809668ef4
|
new asm code for (u)word and (u)byte <
|
2020-09-24 23:08:36 +02:00 |
|
Irmen de Jong
|
bafb86e00b
|
new asm code for (n)equals
|
2020-09-24 22:28:24 +02:00 |
|
Irmen de Jong
|
f5db31b8ff
|
do..until condition can now refer to variables defined in the loop's inner scope.
|
2020-09-24 19:26:07 +02:00 |
|