Irmen de Jong
|
a3c0c7c96f
|
Merge branch 'master' into codegen-on-new-ast
# Conflicts:
# codeGenIntermediate/src/prog8/codegen/intermediate/IRCodeGen.kt
# examples/test.p8
|
2023-01-22 18:30:37 +01:00 |
|
Irmen de Jong
|
4403e4ed62
|
optimize node renames
|
2023-01-22 18:26:37 +01:00 |
|
Irmen de Jong
|
9b209823f6
|
simple test
|
2023-01-22 17:10:52 +01:00 |
|
Irmen de Jong
|
b2cb125bd4
|
more 6502 codegen on new Pt-AST.
|
2023-01-22 17:10:52 +01:00 |
|
Irmen de Jong
|
5e8f767642
|
6502 codegen on new Pt-AST.
|
2023-01-22 17:10:52 +01:00 |
|
Irmen de Jong
|
6ee270d9d8
|
make name a var in new ast to allow cheap renames
|
2023-01-22 17:10:04 +01:00 |
|
Irmen de Jong
|
44fa309d20
|
tweak action
|
2023-01-21 15:29:11 +01:00 |
|
Irmen de Jong
|
58d88f3dd4
|
github action and update tool docs
|
2023-01-21 14:47:32 +01:00 |
|
Irmen de Jong
|
e980c23177
|
github action
|
2023-01-21 14:25:17 +01:00 |
|
Irmen de Jong
|
75224321bb
|
github action
|
2023-01-21 14:19:01 +01:00 |
|
Irmen de Jong
|
801af05b20
|
github action
|
2023-01-21 14:02:08 +01:00 |
|
Irmen de Jong
|
7611dbbddc
|
fix action
|
2023-01-21 13:47:09 +01:00 |
|
Irmen de Jong
|
6d40ca15bc
|
github action
|
2023-01-21 13:39:30 +01:00 |
|
Irmen de Jong
|
32c1c19224
|
tweak sys.wait() routines on various targets
add warning to docs about FP usage in IRQ
|
2023-01-20 03:29:10 +01:00 |
|
Irmen de Jong
|
bbf6357222
|
remove workaround for black cursor at boot as this was recently fixed in the kernal rom.
|
2023-01-17 23:27:27 +01:00 |
|
Irmen de Jong
|
dc16629c24
|
todo
|
2023-01-04 23:57:59 +01:00 |
|
Irmen de Jong
|
3718b9d768
|
less joins
|
2023-01-02 02:10:38 +01:00 |
|
Irmen de Jong
|
c25eb088ec
|
redo 8e730ef93d to avoid larger code generated
|
2023-01-01 23:43:33 +01:00 |
|
Irmen de Jong
|
3feb3e52f8
|
optimizing scoped names in zeropage
|
2022-12-31 03:57:51 +01:00 |
|
Irmen de Jong
|
8e730ef93d
|
optimizing scoped names more and fix scoping of identifier names in arrays (pointers) in SymbolTable
|
2022-12-31 03:20:20 +01:00 |
|
Irmen de Jong
|
e0913a39ab
|
optimizing
|
2022-12-30 18:50:45 +01:00 |
|
Irmen de Jong
|
7a27fbc001
|
add params for future changes
|
2022-12-30 17:43:55 +01:00 |
|
Irmen de Jong
|
ee0dbdad35
|
don't reshuffle 'start' routine to the top. Fixes zsound examples.
|
2022-12-30 17:12:01 +01:00 |
|
Irmen de Jong
|
9225f88f89
|
diskio comments
|
2022-12-30 15:49:53 +01:00 |
|
Irmen de Jong
|
a04839dd6b
|
vm: add property for custom breakpoint handler
|
2022-12-30 15:10:13 +01:00 |
|
Irmen de Jong
|
002006517a
|
rewrite bool=bool^1 into bool=not bool
|
2022-12-29 19:42:38 +01:00 |
|
Irmen de Jong
|
f5b202d438
|
fix ast type error in float cast to bool
|
2022-12-28 22:18:21 +01:00 |
|
Irmen de Jong
|
a7df094ff4
|
don't allow ~ on booleans, also introduce SZ and SNZ instructions in IR to complete the conditional-set instruction list.
|
2022-12-28 21:19:38 +01:00 |
|
Irmen de Jong
|
1e6fa77633
|
ir: 4 new instructions to branch on signed <0, >0, <=0, >=0
|
2022-12-28 13:14:20 +01:00 |
|
Irmen de Jong
|
eb4cff202c
|
removed redundant branch opcodes in IR: BLT(S), BLE(S). Just use swapped BGT(S), BGE(S).
|
2022-12-28 12:41:05 +01:00 |
|
Irmen de Jong
|
7ee777f405
|
vm/ir: for loop is now correctly skipped if loopvar>endvar
this is different still in the 6502 codegen, where it wraps around $00!
|
2022-12-27 18:12:41 +01:00 |
|
Irmen de Jong
|
81bd5c784e
|
don't remove consecutive assigns to IO space location
|
2022-12-24 18:01:54 +01:00 |
|
Irmen de Jong
|
b526e132a7
|
better warning + don't remove non-trivial initializer expression for unused variables
|
2022-12-24 17:22:30 +01:00 |
|
Irmen de Jong
|
1860f66de5
|
allow "x not in array" as equivalent to "not x in array"
update antlr parsing lib
|
2022-12-23 17:59:56 +01:00 |
|
Irmen de Jong
|
ded9ada9bc
|
allow "not xx in array" expression in 6502 codegen
fix compiler crash on certain bool to byte casts
|
2022-12-23 17:07:34 +01:00 |
|
Irmen de Jong
|
d0e6a2eb8b
|
fix compiler crash on hoisting certain vardecls from inner scopes
|
2022-12-22 18:49:53 +01:00 |
|
Irmen de Jong
|
4e103a1963
|
making snow example more interesting
|
2022-12-22 13:04:26 +01:00 |
|
Irmen de Jong
|
475e927178
|
version 8.8
|
2022-12-17 23:00:49 +01:00 |
|
Irmen de Jong
|
ca7932c4f0
|
no longer do return value optimization with tempvar, this caused invalid code sometimes.
|
2022-12-14 22:33:16 +01:00 |
|
Irmen de Jong
|
8ab47d3321
|
fix_autostart_square() now preserves X register correctly
|
2022-12-14 01:07:44 +01:00 |
|
Irmen de Jong
|
def7e87151
|
fixed silly if-goto expression code in IR codegen where it used too many branching instructions
|
2022-12-12 22:47:15 +01:00 |
|
Irmen de Jong
|
27568c2bef
|
fixed silly code generated by some NOT-expressions (unused temporary)
|
2022-12-12 21:57:22 +01:00 |
|
Irmen de Jong
|
0694a187d7
|
unsigned>0 now optimized into unsigned!=0
|
2022-12-12 20:37:57 +01:00 |
|
Irmen de Jong
|
832601b36b
|
workaround for black square issue at start
|
2022-12-11 11:48:41 +01:00 |
|
Irmen de Jong
|
578969c34c
|
optimize redundant rts/bra or rts/jmp generation in when statement
|
2022-12-10 17:21:15 +01:00 |
|
Irmen de Jong
|
d1d0115aed
|
removed unused option 'keepIR'
|
2022-12-09 18:44:44 +01:00 |
|
Irmen de Jong
|
c89e6ebfab
|
clarify
|
2022-12-08 22:21:45 +01:00 |
|
Irmen de Jong
|
ca1089b881
|
optimized codegen for logical expressions with simple right operand (such as c64.READST() & $40 )
|
2022-12-06 20:23:56 +01:00 |
|
Irmen de Jong
|
a1d04f2aad
|
added more $03xx vector definitions to C64/C128/CX16 syslib
|
2022-12-06 20:23:56 +01:00 |
|
Irmen de Jong
|
bf0604133c
|
fix error in IR for inline asm and BSS vars.
|
2022-12-04 16:48:44 +01:00 |
|