Irmen de Jong
|
d9e4f39ddc
|
memset BSS section to zero all at once, less individual var=0 assigns
|
2023-02-21 00:26:21 +01:00 |
|
Irmen de Jong
|
435b9d8973
|
get rid of 'noreinit' option for now, because it resulted in unreliable code
|
2023-02-20 23:29:16 +01:00 |
|
Irmen de Jong
|
0ea70ba656
|
fix proper initialization of zeropagevars with 'noreinit'
|
2023-02-20 23:05:27 +01:00 |
|
Irmen de Jong
|
c3c82282ba
|
reinitGlobals option is clearer than the inverse
|
2023-02-19 19:09:29 +01:00 |
|
Irmen de Jong
|
adc15c24ef
|
introduce bss segments
|
2023-02-19 18:12:37 +01:00 |
|
Irmen de Jong
|
dddf9a9396
|
remove explicit 'bss' from St var, changed to 'uninitialized'
|
2023-02-19 16:50:06 +01:00 |
|
Irmen de Jong
|
9ca6860ffa
|
tweak
|
2023-02-19 15:08:16 +01:00 |
|
Irmen de Jong
|
6012839f0e
|
todo
|
2023-02-16 23:06:09 +01:00 |
|
Irmen de Jong
|
8e9cbab053
|
todo
|
2023-02-16 22:53:16 +01:00 |
|
Irmen de Jong
|
c59df6ec20
|
optimize isZpVar
|
2023-02-16 00:41:20 +01:00 |
|
Irmen de Jong
|
f83752f43b
|
update compiler internals diagram
|
2023-02-09 23:15:19 +01:00 |
|
Irmen de Jong
|
86c22636eb
|
Merge branch 'master' into codegen-on-new-ast
|
2023-02-09 23:05:54 +01:00 |
|
Irmen de Jong
|
edf56d34f8
|
doc about no conditional compilation, fixes #93
also added a note to MEMTOP about 0 result
|
2023-02-06 23:36:19 +01:00 |
|
Irmen de Jong
|
9f0074eef9
|
Merge branch 'master' into codegen-on-new-ast
# Conflicts:
# codeCore/src/prog8/code/ast/AstStatements.kt
|
2023-02-05 16:44:30 +01:00 |
|
Irmen de Jong
|
86210c4513
|
clarification
|
2023-02-01 20:58:40 +01:00 |
|
Irmen de Jong
|
e9ec310d8a
|
upgrade to kotlin 1.8.0
|
2023-01-27 22:14:10 +01:00 |
|
Irmen de Jong
|
4e8ccf0ef3
|
Merge branch 'master' into codegen-on-new-ast
|
2023-01-26 00:38:54 +01:00 |
|
Irmen de Jong
|
f1a7d5ecf7
|
docs
|
2023-01-26 00:37:30 +01:00 |
|
Irmen de Jong
|
9a2df072cc
|
tiny correction
|
2023-01-24 22:48:44 +01:00 |
|
Irmen de Jong
|
5e8f767642
|
6502 codegen on new Pt-AST.
|
2023-01-22 17:10:52 +01:00 |
|
Irmen de Jong
|
58d88f3dd4
|
github action and update tool docs
|
2023-01-21 14:47:32 +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
|
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
|
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
|
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
|
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
|
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 |
|