Irmen de Jong
|
3770a4fe0c
|
easier datatype notation by just using the type objects directly
|
2025-03-18 23:33:04 +01:00 |
|
Irmen de Jong
|
7668a3c660
|
use kotest tempdir instead of hardcoded output directory
|
2025-03-14 01:18:33 +01:00 |
|
Irmen de Jong
|
e55ce5504e
|
added %option romable to enable romable mode, but only generate a bunch of warnings for problematic codegeneration atm
|
2025-02-20 23:40:44 +01:00 |
|
Irmen de Jong
|
9e79722a7f
|
fix rangeexpression value type casting
|
2025-02-11 22:23:07 +01:00 |
|
Irmen de Jong
|
7a13f57ab0
|
enforce variable init values are only strings or arrays
|
2025-01-20 01:25:17 +01:00 |
|
Irmen de Jong
|
2ab2130000
|
renamed "intermediate AST" to "simplified AST"
|
2025-01-10 20:33:44 +01:00 |
|
Irmen de Jong
|
37c2c1bf0b
|
support &, &< and &> on array elements from split word arrays, not just on the array as a whole
|
2024-12-30 00:00:31 +01:00 |
|
Irmen de Jong
|
512ddd1694
|
cleanups
|
2024-12-20 22:59:20 +01:00 |
|
Irmen de Jong
|
02f3f5d0f5
|
@split is back to force splitting of word arrays
|
2024-12-16 14:51:32 +01:00 |
|
Irmen de Jong
|
8f799567cf
|
make word arrays split by default (w.i.p.)
|
2024-12-15 08:12:34 +01:00 |
|
Irmen de Jong
|
1a1ab0dac6
|
changed the data type system to composite types
|
2024-12-05 21:48:51 +01:00 |
|
Irmen de Jong
|
84f5ffa426
|
fix generated labels prefix and filtering in the vice symbol dump file
|
2024-11-10 15:34:35 +01:00 |
|
Irmen de Jong
|
f89f1a84d0
|
@initonce variable tag to skip variable reinitialization
|
2024-11-08 19:03:48 +01:00 |
|
Irmen de Jong
|
3b798097b9
|
added memtop to machine definition and asm source code check
added %memtop directive
|
2024-11-02 00:59:07 +01:00 |
|
Irmen de Jong
|
c9535049c8
|
%align directive and @align64
|
2024-10-26 20:58:35 +02:00 |
|
Irmen de Jong
|
1cd754f05d
|
adding @alignword/page on individual variables
|
2024-10-26 17:00:38 +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
|
edc83305a4
|
allow multiple targets in AssignTarget
|
2024-03-22 21:51:08 +01:00 |
|
Irmen de Jong
|
eef8ae00b8
|
replace str return type by uword
|
2024-03-09 15:38:46 +01:00 |
|
Irmen de Jong
|
4bb2b8ca9b
|
make isArray a computed property by simply checking the datatype
|
2023-12-26 19:58:08 +01:00 |
|
Irmen de Jong
|
1bdc427d73
|
multi var declarations ubyte x,y,z
|
2023-12-08 22:18:21 +01:00 |
|
Irmen de Jong
|
f68b46fc60
|
add a %zpallowed option to specify the range of zeropage register that can be used
|
2023-11-03 00:19:25 +01:00 |
|
Irmen de Jong
|
b7a622c68e
|
fix alignment of uninitialized arrays in aligned blocks (make them initialized with zeros so they don't end up in the BSS section)
fix alignment of uninitialized arrays in aligned blocks (make them initialized with zeros so they don't end up in the BSS section)
|
2023-10-04 00:12:36 +02:00 |
|
Irmen de Jong
|
880c0a5da8
|
allow taking address of array element
|
2023-09-18 04:37:41 +02:00 |
|
Irmen de Jong
|
c223702ea0
|
code cleanups
|
2023-07-30 18:42:45 +02:00 |
|
Irmen de Jong
|
8c617515ba
|
don't prefix 3-letter symbols too aggressively (could cause some compilation errors)
|
2023-06-23 23:36:59 +02:00 |
|
Irmen de Jong
|
c94e292176
|
more split array stuff
|
2023-05-27 12:47:11 +02:00 |
|
Irmen de Jong
|
fc253237c9
|
fix issues with reporting inlined subroutines as unused
|
2023-03-07 23:47:14 +01:00 |
|
Irmen de Jong
|
b95608f68a
|
new common ICodeGeneratorBackend interface for all code generator classes
|
2023-02-12 23:52:54 +01:00 |
|
Irmen de Jong
|
b6e5dbd06c
|
optimized away VarDecl.subroutineParameter
|
2023-02-12 23:19:35 +01:00 |
|
Irmen de Jong
|
4914609485
|
local varnames and fix uninitialized parents
|
2023-02-12 16:00:58 +01:00 |
|
Irmen de Jong
|
c75b1581d2
|
lookup via new ST
|
2023-02-05 01:15:23 +01:00 |
|
Irmen de Jong
|
0f5cd22bb7
|
more codegen fixes
|
2023-01-31 22:57:26 +01:00 |
|
Irmen de Jong
|
5b6534bb28
|
fix symbol lookup in new ast and minor codegen errors
|
2023-01-31 00:18:21 +01:00 |
|
Irmen de Jong
|
b2cb125bd4
|
more 6502 codegen on new Pt-AST.
|
2023-01-22 17:10:52 +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
|
f470576822
|
it's now possible to use symbols that are the same name as 6502 instructions
because these are now prefixed internally before generating assembly.
|
2022-11-30 18:39:56 +01:00 |
|
Irmen de Jong
|
7c1bdfe713
|
ir: uninitialized vars remain empty, bss section classifier (unused for now as there are no segements yet)
|
2022-09-28 16:56:50 +02:00 |
|
Irmen de Jong
|
965340ff90
|
logical and/or/xor/not all replaced by bitwise &,|,^,~ (ast, codegens)
this also fixed some invalid outcomes of logical expressions!
|
2022-07-02 00:38:17 +02:00 |
|
Irmen de Jong
|
eea09f4de5
|
fix invalid asm label sometimes generated for multiple loops in same subroutine
|
2022-06-24 02:26:45 +02:00 |
|
Irmen de Jong
|
ba614801ee
|
cleanup
|
2022-05-22 23:11:22 +02:00 |
|
Irmen de Jong
|
ff57c5e9d3
|
working on vm and new ast
|
2022-03-21 01:36:11 +01:00 |
|
Irmen de Jong
|
7d2bf892b1
|
added start of virtual machine compilation target
|
2022-03-19 00:57:35 +01:00 |
|
Irmen de Jong
|
92737bb695
|
better handling of loadAddress
|
2022-03-13 16:21:02 +01:00 |
|
Irmen de Jong
|
3961f26635
|
consolidating modules
|
2022-03-11 20:45:39 +01:00 |
|
Irmen de Jong
|
e51c274a18
|
reducing dependencies
|
2022-03-11 20:32:35 +01:00 |
|
Irmen de Jong
|
e75d0c58a9
|
reducing dependencies
|
2022-03-10 23:46:43 +01:00 |
|
Irmen de Jong
|
9a798360f4
|
introduced codeAst and codeCore modules to reduce dependencies
|
2022-03-10 22:38:16 +01:00 |
|
Irmen de Jong
|
251b6fcf70
|
reducing dependencies
|
2022-03-10 02:09:34 +01:00 |
|
Irmen de Jong
|
f7aa0c45df
|
optimize imports
|
2022-03-05 15:54:42 +01:00 |
|