Irmen de Jong
|
80f39e8097
|
Merge branch 'booleans'
# Conflicts:
# compiler/res/prog8lib/cx16/monogfx.p8
# compiler/res/prog8lib/virtual/monogfx.p8
# compiler/src/prog8/compiler/astprocessing/BoolRemover.kt
# compiler/test/TestTypecasts.kt
# docs/source/todo.rst
# examples/cx16/highresbitmap.p8
# examples/test.p8
# httpCompilerService/src/prog8/http/TestHttp.kt
|
2024-03-11 01:00:48 +01:00 |
|
Irmen de Jong
|
2a8b65e29c
|
test str to uword change in function params
|
2024-03-10 23:48:58 +01:00 |
|
Irmen de Jong
|
eef8ae00b8
|
replace str return type by uword
|
2024-03-09 15:38:46 +01:00 |
|
Irmen de Jong
|
84afb374e6
|
nostrictbool array conversions
|
2024-03-03 17:48:52 +01:00 |
|
Irmen de Jong
|
f29d24e96a
|
fixup split words array comparisons
|
2024-03-02 23:19:55 +01:00 |
|
Irmen de Jong
|
dba0846866
|
optimize word >, word <=
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
2a1fec2ed2
|
fix codegen error for comparisons
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
b941d6f1e4
|
new comparison tests
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
37b346740b
|
fix 6502 casting uword and float to bool
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
fe9a9fc5cb
|
new if tests
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
a1574a7187
|
added txt.print_bool, several fixes
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
a5110b1f96
|
improved De Morgan rewrite rules
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
bc2b38daf4
|
added PtBool and other changes to intermediate Ast
|
2024-03-02 23:19:20 +01:00 |
|
Irmen de Jong
|
f40b7b62bb
|
updated unit tests and some basic changes for them
|
2024-03-02 23:19:20 +01:00 |
|
Irmen de Jong
|
01bbc2234e
|
fix absorption law optimization, add 2 additional optimizations
|
2024-02-14 23:12:54 +01:00 |
|
Irmen de Jong
|
4dc50cb551
|
fix unused subroutine removal not removing all unused subs
|
2024-02-10 21:26:53 +01:00 |
|
Irmen de Jong
|
5522a305ab
|
add -dumpvars option to dump all allocated variables (zp, normal ram, etc)
|
2024-02-10 18:42:31 +01:00 |
|
Irmen de Jong
|
d7f72056fc
|
rest of the array copying
|
2024-02-10 17:16:06 +01:00 |
|
Irmen de Jong
|
906d9d858c
|
implementing the array copys
|
2024-02-10 01:40:36 +01:00 |
|
Irmen de Jong
|
386a391fd9
|
added string.lstripped() and string.ltrimmed()
|
2024-02-07 23:07:45 +01:00 |
|
Irmen de Jong
|
d33aed4ed5
|
added txt.petscii2scr() and txt.petscii2scr_str()
|
2024-02-07 22:36:43 +01:00 |
|
Irmen de Jong
|
358215e4dd
|
removed postIncrDecr (still allow ++/-- to be parsed into +=1/-=1)
|
2024-02-06 18:50:08 +01:00 |
|
Irmen de Jong
|
b0f5b6925d
|
getting rid of pointer[idx] in ast, instead always use @(ptr+idx)
|
2024-02-03 19:22:04 +01:00 |
|
Irmen de Jong
|
78b4288005
|
avoid git's line ending translation for this test...
|
2024-02-03 14:57:25 +01:00 |
|
Irmen de Jong
|
680f5d21ee
|
normalize DOS line endings to just \n, fixes source lines in asm for \r\n source files
|
2024-02-03 12:53:21 +01:00 |
|
Irmen de Jong
|
932035cdc5
|
flag "returning a statement" as a syntax error
|
2024-01-31 21:36:39 +01:00 |
|
Irmen de Jong
|
1816bda7ea
|
extra check
|
2024-01-26 00:12:31 +01:00 |
|
Irmen de Jong
|
d4a2031c07
|
fix certain assignment data type mismatch crash
|
2024-01-25 21:14:20 +01:00 |
|
Irmen de Jong
|
64c132ee0a
|
changed -breakinstr option so that you now specify the exact instruction to use for a %breakpoint.
also fixed a IR issue with x=not x.
|
2024-01-22 22:01:47 +01:00 |
|
Irmen de Jong
|
a8c09d6144
|
removed a problematic bitshift replacement in the const evaluator
|
2024-01-21 23:05:51 +01:00 |
|
Irmen de Jong
|
87c46ba730
|
check boolean array size mismatch.
check for weird string assignment.
check for X16 problematic cpu instructions rmb, smb, bbr, bbs.
tweak number node equality wrt bool type
|
2024-01-21 19:15:22 +01:00 |
|
Irmen de Jong
|
fdbbd181ea
|
fixes for address-of uword pointer array expressions
|
2024-01-17 22:51:15 +01:00 |
|
Irmen de Jong
|
69075376dc
|
get rid of the noshortcircuit fallback
|
2024-01-17 21:24:41 +01:00 |
|
Irmen de Jong
|
504d1440cc
|
fixed rol(),rol2(),ror(),ror2()
|
2024-01-17 21:02:17 +01:00 |
|
Irmen de Jong
|
0cfcc5cd29
|
fix VM sgn() function for floats
|
2024-01-16 01:34:55 +01:00 |
|
Irmen de Jong
|
e0de662f8e
|
fix signed word bitshift right (>8 shifts)
|
2024-01-16 01:08:16 +01:00 |
|
Irmen de Jong
|
968609d06d
|
IR: fix problems with symbol offsets and unused subroutines/chunks
|
2024-01-13 16:43:41 +01:00 |
|
Irmen de Jong
|
3b199a2a87
|
added cx16 example: automatons.
added debug mode and RTC to cx16 emulator launchers.
dt error details.
|
2024-01-12 21:40:30 +01:00 |
|
Irmen de Jong
|
bc3f2db3de
|
Fix call graph to no longer mark subroutines unused, that still get their variables referenced somewhere.
Revert palette.default_colors_16[] back to palette.set_default16.colors.
|
2024-01-11 22:12:01 +01:00 |
|
Irmen de Jong
|
45a9751217
|
fix type of optimized lsb() / mkword() arguments when signed.
printast1 command line option now also works in case of compilation errors.
|
2024-01-10 23:57:44 +01:00 |
|
Irmen de Jong
|
f27e3478b9
|
fix const value of AddressOf for certain types
|
2024-01-09 22:10:25 +01:00 |
|
Irmen de Jong
|
f8084e7955
|
fix const replacement optimization error on memory mapped variable
|
2024-01-07 18:48:18 +01:00 |
|
Irmen de Jong
|
d85c347a6c
|
optimize /256 more, and fixed a unsigned byte word cast error
|
2024-01-07 02:34:05 +01:00 |
|
Irmen de Jong
|
f2daa17b92
|
tweak some not optimizations
cleanup IR typestring
|
2024-01-05 17:49:56 +01:00 |
|
Irmen de Jong
|
6d9fccacb1
|
boolean not expression tweaks and optimizations
|
2024-01-05 13:32:16 +01:00 |
|
Irmen de Jong
|
37638e7ed0
|
added Absorption laws optimization
|
2024-01-05 00:36:47 +01:00 |
|
Irmen de Jong
|
8a0e650511
|
apply De Morgan's laws for logical not, results in smaller code
|
2024-01-04 23:45:46 +01:00 |
|
Irmen de Jong
|
56ba24962c
|
fixed 'not not x' optimization to just 'x'
|
2024-01-04 15:02:21 +01:00 |
|
Irmen de Jong
|
242a3eec63
|
fix data type difference error on range from and to values
|
2024-01-03 21:46:22 +01:00 |
|
Irmen de Jong
|
6aed7e429a
|
allow containment check in a range expression ("run time" range expression)
|
2024-01-03 01:17:13 +01:00 |
|