Irmen de Jong
|
c9a4235669
|
update to kotlin 2.0, fix several code style issues
|
2024-06-04 01:00:46 +02:00 |
|
Irmen de Jong
|
1feead2260
|
tweaks
|
2024-05-29 02:30:06 +02:00 |
|
Irmen de Jong
|
fda8e61be4
|
give better error when using @split wrong
|
2024-05-20 21:51:07 +02:00 |
|
Irmen de Jong
|
62afd3342e
|
void syntax check, fixes #135
|
2024-05-18 17:15:31 +02:00 |
|
Irmen de Jong
|
4a710ecdfc
|
cleanups
|
2024-05-17 18:48:04 +02:00 |
|
Irmen de Jong
|
53df0eb707
|
cleanups
|
2024-04-10 22:04:03 +02:00 |
|
Irmen de Jong
|
42f4b06ac8
|
added options -bytes2float and -float2bytes to be able to do float conversions from the command line
|
2024-04-09 23:59:54 +02:00 |
|
Irmen de Jong
|
db80417bd7
|
fix a problem with const fold optimization in if expressions, and IR compilation of that
|
2024-04-09 22:09:29 +02:00 |
|
Irmen de Jong
|
f5d556a7f9
|
added missing options to doc
|
2024-04-09 19:30:04 +02:00 |
|
Irmen de Jong
|
2aae46d632
|
added -dumpsymbols option to print a dump of all the variables and subroutine signatures
|
2024-04-09 19:19:13 +02:00 |
|
Irmen de Jong
|
19ebc6d6b3
|
better error message for ambiguous multi-var initialization in vardecl
|
2024-04-08 22:36:00 +02:00 |
|
Irmen de Jong
|
cfe3fcc9e7
|
fix symbol table issue
|
2024-04-06 12:53:33 +02:00 |
|
Irmen de Jong
|
731132d4b3
|
check number of result values in return statements
|
2024-04-05 02:13:31 +02:00 |
|
Irmen de Jong
|
98acff802f
|
better checking for number of return values
assignment optimization if return register already is the same as the assignment target
|
2024-04-04 23:47:33 +02:00 |
|
Irmen de Jong
|
5f11f485a2
|
fix compiler error
|
2024-04-04 02:00:55 +02:00 |
|
Irmen de Jong
|
641f6c05d8
|
allow 'void' as dummy assign target in multi-assignment statements
|
2024-03-31 23:43:26 +02:00 |
|
Irmen de Jong
|
788f6b44a6
|
antlr grammar now understands underscores in identifier names
|
2024-03-31 00:31:10 +01:00 |
|
Irmen de Jong
|
3e34a3ef72
|
allow multi-assign to skip any status register result
|
2024-03-29 23:10:08 +01:00 |
|
Irmen de Jong
|
56c1035581
|
Merge branch 'master' into multi-assign
# Conflicts:
# docs/source/todo.rst
# examples/test.p8
|
2024-03-26 22:09:16 +01:00 |
|
Irmen de Jong
|
ba1e907c79
|
fix divmod; out args are written to and should be potential constants
|
2024-03-26 22:04:44 +01:00 |
|
Irmen de Jong
|
edc83305a4
|
allow multiple targets in AssignTarget
|
2024-03-22 21:51:08 +01:00 |
|
Irmen de Jong
|
592becc126
|
allow %breakpoint also in if/else blocks and other anonymous scopes
|
2024-03-19 23:31:21 +01:00 |
|
Irmen de Jong
|
d14c61b160
|
added string.findstr(). string.find() returns 255 if not found.
also fix string assignment bug for sub args.
|
2024-03-17 23:18:33 +01:00 |
|
Irmen de Jong
|
33c8caac8f
|
get rid of containment expression restriction
|
2024-03-12 23:39:54 +01:00 |
|
Irmen de Jong
|
51d708bbdd
|
fix monogfx issue
|
2024-03-12 23:27:15 +01:00 |
|
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
|
eef8ae00b8
|
replace str return type by uword
|
2024-03-09 15:38:46 +01:00 |
|
Irmen de Jong
|
f46896fd74
|
attempt to no longer have BuildVersion.kt in git, blocking easy pulls
(cherry picked from commit bfcf07c1a2 )
|
2024-03-08 23:36:35 +01:00 |
|
Irmen de Jong
|
52649a8e4f
|
conv routines now return the string buffer address.
|
2024-03-08 02:12:46 +01:00 |
|
Irmen de Jong
|
267ea13e8c
|
clearer error msg
|
2024-03-06 20:10:10 +01:00 |
|
Irmen de Jong
|
9826d7c494
|
optimize certain boolean comparisons more
|
2024-03-05 03:09:53 +01:00 |
|
Irmen de Jong
|
c6bf57b390
|
non strict bools should also replace not byte with byte==0
|
2024-03-04 23:25:34 +01:00 |
|
Irmen de Jong
|
bfcf07c1a2
|
attempt to no longer have BuildVersion.kt in git, blocking easy pulls
|
2024-03-04 20:45:59 +01:00 |
|
Irmen de Jong
|
4d7e96d423
|
add monogfx inverted (eor) draw mode
|
2024-03-03 23:28:37 +01:00 |
|
Irmen de Jong
|
607275ec66
|
tweak
|
2024-03-03 19:52:46 +01:00 |
|
Irmen de Jong
|
e55cde2a81
|
more nonstrictbool conversions
|
2024-03-03 19:43:48 +01:00 |
|
Irmen de Jong
|
84afb374e6
|
nostrictbool array conversions
|
2024-03-03 17:48:52 +01:00 |
|
Irmen de Jong
|
af17f903ee
|
fix that if not fcall() wasn't transformed to a conditional branch instruction
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
dba0846866
|
optimize word >, word <=
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
bed629998a
|
fix large code for some compares
|
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
|
a5110b1f96
|
improved De Morgan rewrite rules
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
006713fe13
|
optimize boolean to ubyte assignment (skip type cast)
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
577333f2c4
|
new ifelse codegen
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
7d8cdcbfea
|
more bool fixes and optimizations in codegen
|
2024-03-02 23:19:39 +01:00 |
|
Irmen de Jong
|
10d12f73d6
|
IR/VM: testing the boolean changes, added in-place and/or.
|
2024-03-02 23:19:20 +01:00 |
|
Irmen de Jong
|
cd9119655c
|
IR codegen
|
2024-03-02 23:19:20 +01:00 |
|
Irmen de Jong
|
41afeccd51
|
compiler stuff
|
2024-03-02 23:19:20 +01:00 |
|
Irmen de Jong
|
6b87cbb703
|
optimizers
|
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 |
|