Irmen de Jong
|
e98e951834
|
fix chained assignment and multi-vardecl RHS evaluation
|
2023-12-10 16:44:51 +01:00 |
|
Irmen de Jong
|
ef1c665b9a
|
allow underscores for numerical grouping
|
2023-12-09 13:13:34 +01:00 |
|
Irmen de Jong
|
d56565be25
|
fix multi-var decl
|
2023-12-09 12:32:41 +01:00 |
|
Irmen de Jong
|
e076b3aedc
|
fix multi-var decl in nested scopes
|
2023-12-09 12:07:09 +01:00 |
|
Irmen de Jong
|
ae3b2ddf5f
|
allow multi var declarations for floats too
|
2023-12-08 23:29:13 +01:00 |
|
Irmen de Jong
|
1bdc427d73
|
multi var declarations ubyte x,y,z
|
2023-12-08 22:18:21 +01:00 |
|
Irmen de Jong
|
6a639ce533
|
chained assignments x=y=z=42
|
2023-12-08 01:07:16 +01:00 |
|
Irmen de Jong
|
8e4319cd5a
|
module directive %encoding to set the text encoding for that whole file (iso, petscii, etc.)
|
2023-12-06 23:54:08 +01:00 |
|
Irmen de Jong
|
ee782e92ac
|
fix cast error and vm float parsing
|
2023-12-05 22:51:15 +01:00 |
|
Irmen de Jong
|
b09e0a05bf
|
some tweaks to errors about long integer literals
|
2023-12-03 02:45:26 +01:00 |
|
Irmen de Jong
|
c609e982fe
|
allow const expression intermediate values to be 32 bits integers to avoid needless overflow errors.
|
2023-12-03 01:48:12 +01:00 |
|
Irmen de Jong
|
c45fbe6310
|
continue stmt added
|
2023-11-25 01:14:35 +01:00 |
|
Irmen de Jong
|
62d3f01948
|
fix name check in inline asm
this no longer removes a subroutine that is otherwise only called from inlined asm.
|
2023-11-21 01:26:50 +01:00 |
|
Irmen de Jong
|
7e3b8c2c59
|
fix compiler crash on certain subroutine inlining attempts.
|
2023-11-09 21:16:12 +01:00 |
|
Irmen de Jong
|
3b0d7ea960
|
better const-evaluation of addressOf a memory mapped variable
|
2023-11-08 22:04:41 +01:00 |
|
Irmen de Jong
|
ee2888e744
|
verafx.mult/muls now return upper 16 bits of the result in r0
|
2023-11-06 21:55:58 +01:00 |
|
Irmen de Jong
|
0904712a00
|
remove last trace of getTempVar (arry index expression)
tiny optimization
|
2023-10-27 21:41:52 +02:00 |
|
Irmen de Jong
|
880c0a5da8
|
allow taking address of array element
|
2023-09-18 04:37:41 +02:00 |
|
Irmen de Jong
|
00b0ec58b4
|
update to Antlr 4.13.1
|
2023-09-14 21:11:55 +02:00 |
|
Irmen de Jong
|
6afdd4e6fd
|
preparing next version
|
2023-09-12 21:53:49 +02:00 |
|
Irmen de Jong
|
c15c10a94e
|
fixed 'unroll CONSTANTEXPR' compiler errors
|
2023-09-05 01:03:35 +02:00 |
|
Irmen de Jong
|
525a9b5036
|
prepare parser to allow chained array indexing later
|
2023-09-03 19:06:47 +02:00 |
|
Irmen de Jong
|
66857ca477
|
prepare parser to be more flexible with array indexed expressions
|
2023-08-15 13:07:01 +02:00 |
|
Irmen de Jong
|
f98ee326b4
|
error when doing txt.print('@') where "@" was intended (byte for string parameter)
|
2023-08-14 19:25:31 +02:00 |
|
Irmen de Jong
|
2c9e50873c
|
use math.square for optimized X*X calculation (words only).
Added IR SQUARE instruction.
|
2023-08-14 01:05:17 +02:00 |
|
Irmen de Jong
|
7c0bde7310
|
parser: allow curly brace on next line for asmsub too
downgrade antlr4 one version again to what is used in IntelliJ's antlr plugin, to avoid potential version conflicts
|
2023-08-09 20:01:12 +02:00 |
|
Irmen de Jong
|
c223702ea0
|
code cleanups
|
2023-07-30 18:42:45 +02:00 |
|
Irmen de Jong
|
70c9ab9074
|
upgrade libraries
|
2023-07-06 23:33:58 +02:00 |
|
Irmen de Jong
|
6d1fdf1ba6
|
upgrade to Kotlin 1.9.0
|
2023-07-06 23:03:47 +02:00 |
|
Irmen de Jong
|
0db141eeac
|
todo
|
2023-07-02 21:19:33 +02:00 |
|
Irmen de Jong
|
c544b7f5ba
|
fixing up p8_ prefixing
|
2023-07-02 21:15:05 +02:00 |
|
Irmen de Jong
|
bb95484c8a
|
uniform symbol prefixing with p8_
|
2023-07-02 06:15:09 +02:00 |
|
Irmen de Jong
|
cad18b8a3a
|
uniform symbol prefixing with p8_
|
2023-07-02 06:15:02 +02:00 |
|
Irmen de Jong
|
e7b631b087
|
allow comment lines inside array initializer value
|
2023-06-27 23:30:37 +02:00 |
|
Irmen de Jong
|
bb35a80177
|
%option splitarrays now also at module level
|
2023-05-31 21:50:41 +02:00 |
|
Irmen de Jong
|
bb9d29b061
|
fix an array literal assignment type error for word arrays
|
2023-05-30 22:46:37 +02:00 |
|
Irmen de Jong
|
52a77db60f
|
adding split array type
|
2023-05-26 19:11:07 +02:00 |
|
Irmen de Jong
|
91e1643627
|
update 3rd party libraries
|
2023-05-18 11:47:30 +02:00 |
|
Irmen de Jong
|
1fa2e2e37d
|
3rd party library versions upgrades
|
2023-03-26 21:36:21 +02:00 |
|
Irmen de Jong
|
6218c1c00b
|
fix too greedy expression simplification
could cause problems when variables occur multiple times in the same expression.
Fixes #101
|
2023-03-22 18:25:28 +01:00 |
|
Irmen de Jong
|
1152191f48
|
add optimization: replace simple for loops by repeat loop
|
2023-03-15 21:11:37 +01:00 |
|
Irmen de Jong
|
af1b07ad44
|
add more referencesIdentifier() on ast nodes
|
2023-03-15 20:44:24 +01:00 |
|
Irmen de Jong
|
ff6948cf2d
|
syntax defs for unroll
|
2023-03-14 23:52:07 +01:00 |
|
Irmen de Jong
|
fd25e85d59
|
added unroll loop construct
|
2023-03-14 23:37:49 +01:00 |
|
Irmen de Jong
|
f20ca06f85
|
give correct error when using memory mapped var as array pointer
|
2023-03-11 00:26:19 +01:00 |
|
Irmen de Jong
|
25199dfb43
|
change tokenizer so that A,X,Y now are parsed correctly as identifiers as well
|
2023-03-08 22:57:19 +01:00 |
|
Irmen de Jong
|
fc253237c9
|
fix issues with reporting inlined subroutines as unused
|
2023-03-07 23:47:14 +01:00 |
|
Irmen de Jong
|
b3b380964c
|
remove searchParameter() from lookups
it shouldn't be needed to look up subroutine parameters by scoped name
|
2023-03-04 13:24:33 +01:00 |
|
Irmen de Jong
|
b6e5dbd06c
|
optimized away VarDecl.subroutineParameter
|
2023-02-12 23:19:35 +01:00 |
|
Irmen de Jong
|
6aabbffc62
|
some cleanups
|
2023-02-09 02:34:18 +01:00 |
|