Irmen de Jong
|
d66dc664de
|
work on longs
|
2025-10-03 01:22:24 +02:00 |
|
Irmen de Jong
|
a2b9d78cf3
|
start with introducing LONG datatype (32 bits signed integer)
|
2025-10-03 01:22:24 +02:00 |
|
Irmen de Jong
|
9d3b2f12fd
|
IR code blocks now better SSA basic blocks (ending with single branch instruction)
|
2025-10-01 19:08:44 +02:00 |
|
Irmen de Jong
|
a611406020
|
IR: add compilerversion attribute to p8ir file
|
2025-09-30 22:07:04 +02:00 |
|
Irmen de Jong
|
2c7256a443
|
support assignment to indexed pointer targets
|
2025-09-27 14:52:04 +02:00 |
|
Irmen de Jong
|
97420b28e5
|
preparing to support assignment to indexed pointer targets
|
2025-09-27 11:03:55 +02:00 |
|
Irmen de Jong
|
a71895cbe8
|
optimize pointer.field += 1 into pointer.field INC/DEC
|
2025-09-18 19:27:36 +02:00 |
|
Irmen de Jong
|
f6c8e693a5
|
add offsetof()
|
2025-09-17 23:30:15 +02:00 |
|
Irmen de Jong
|
124ea1230b
|
fix vm to understand struct instances in arrays
|
2025-09-14 19:04:01 +02:00 |
|
Irmen de Jong
|
8b48a295b6
|
allow struct initializers to occur in array literals
|
2025-09-14 18:16:46 +02:00 |
|
Irmen de Jong
|
79419a98d0
|
add if-expression versions for the conditionals if_cc, if_cs, if_vc etc
|
2025-09-11 01:57:30 +02:00 |
|
Irmen de Jong
|
a7e9d8e14b
|
fix struct field offset calculations
|
2025-09-01 18:57:02 +02:00 |
|
Irmen de Jong
|
3ef09d7d9a
|
use LOADFIELD instruction more instead of an extra explicit ADD
add implicit @zp to pointer variables if they don't have a preference
|
2025-08-31 15:53:44 +02:00 |
|
Irmen de Jong
|
5a3aa1bd25
|
optimized IR to return a constant value: use RETURNI
|
2025-08-26 22:54:11 +02:00 |
|
Irmen de Jong
|
79b8bb5c9f
|
Merge branch 'master' into structs6502
|
2025-08-19 01:12:50 +02:00 |
|
Irmen de Jong
|
fc5889ec0b
|
kotlin 2.2.10, kotest
|
2025-08-19 01:04:24 +02:00 |
|
Irmen de Jong
|
f74eeaee0f
|
fix IR address-of for array-indexed pointers (pointer arithmetic)
|
2025-08-18 03:24:32 +02:00 |
|
Irmen de Jong
|
4a8d5def84
|
code cleanups, pointer TODOs, docs dark mode
|
2025-08-16 11:25:18 +02:00 |
|
Irmen de Jong
|
fd9bd23449
|
6502 statementreorderer: str -> ^^ubyte
|
2025-08-13 18:45:29 +02:00 |
|
Irmen de Jong
|
9e85571a7b
|
fix pointer variable usage detection in other block
|
2025-08-05 17:39:22 +02:00 |
|
Irmen de Jong
|
d4e83b28bb
|
error messages and trying to improve support for struct allocs in arrays
added sorting example
|
2025-08-02 19:22:58 +02:00 |
|
Irmen de Jong
|
647cd0fbe1
|
fix pointer[i].field compiler crash
|
2025-08-02 05:29:16 +02:00 |
|
Irmen de Jong
|
88ee7a8187
|
fix expected outcome of function call arg type pointer test
|
2025-08-01 00:23:10 +02:00 |
|
Irmen de Jong
|
c4c5636a81
|
fixing array indexing on pointers
|
2025-07-29 23:41:38 +02:00 |
|
Irmen de Jong
|
23ad540aa5
|
fix IR codegen type error on array pointer dereference
|
2025-07-28 20:25:56 +02:00 |
|
Irmen de Jong
|
624220e9a3
|
fix boolean struct field as if conditional
|
2025-07-27 01:58:18 +02:00 |
|
Irmen de Jong
|
82267b3f56
|
Merge branch 'master' into structs
# Conflicts:
# compiler/test/codegeneration/TestVariables.kt
# docs/source/_static/symboldumps/skeletons-c128.txt
# docs/source/_static/symboldumps/skeletons-c64.txt
# docs/source/_static/symboldumps/skeletons-cx16.txt
# docs/source/_static/symboldumps/skeletons-pet32.txt
# docs/source/_static/symboldumps/skeletons-virtual.txt
# docs/source/todo.rst
# examples/test.p8
|
2025-07-26 12:43:13 +02:00 |
|
Irmen de Jong
|
67fb45a55b
|
don't produce invalid boolean initalization error. Fixes #173
|
2025-07-26 12:35:23 +02:00 |
|
Irmen de Jong
|
817f4f8e7c
|
Merge branch 'master' into structs
# Conflicts:
# compiler/src/prog8/compiler/Compiler.kt
# compiler/src/prog8/compiler/astprocessing/AstExtensions.kt
# compiler/src/prog8/compiler/astprocessing/StatementReorderer.kt
# docs/source/todo.rst
# examples/test.p8
|
2025-07-24 22:27:29 +02:00 |
|
Irmen de Jong
|
866313209b
|
fixed zp vars 0 initialization
|
2025-07-24 00:17:31 +02:00 |
|
Irmen de Jong
|
e14c3f8b59
|
code cleanups
|
2025-07-06 00:52:37 +02:00 |
|
Irmen de Jong
|
54d41b7f6f
|
fixed a[i]^^
|
2025-07-05 23:54:08 +02:00 |
|
Irmen de Jong
|
49a4d9ba37
|
allow str as struct field type (^^ubyte) and strings in struct initializers
|
2025-06-15 00:29:59 +02:00 |
|
Irmen de Jong
|
12abafb917
|
Merge branch 'master' into structs
# Conflicts:
# docs/source/todo.rst
# examples/test.p8
# gradle.properties
|
2025-06-12 00:11:58 +02:00 |
|
Irmen de Jong
|
8dc2e47507
|
fix partial unused code removal in vm target
|
2025-06-11 23:31:29 +02:00 |
|
Irmen de Jong
|
e6bab3ceeb
|
IR: adding LOADFIELD and STOREFIELD instructions
|
2025-06-09 01:41:45 +02:00 |
|
Irmen de Jong
|
1c02179c5c
|
refactor loadIndexReg()
|
2025-05-30 21:39:17 +02:00 |
|
Irmen de Jong
|
77584493fd
|
support a.b.ptr[i]^^.value as expression (RHS)
|
2025-05-30 20:28:10 +02:00 |
|
Irmen de Jong
|
112ca3cc53
|
allow sizeof(&thing), add sys.SIZEOF_POINTER
|
2025-05-29 15:58:29 +02:00 |
|
Irmen de Jong
|
4c0e6e2640
|
fix split/nosplit pointer arrays, replace ubyteptr^^ with @(ubyteptr), fix double dereference
|
2025-05-29 00:36:55 +02:00 |
|
Irmen de Jong
|
08b314c37d
|
IR: fix various register type mismatches
|
2025-05-28 22:15:07 +02:00 |
|
Irmen de Jong
|
86da9d3c7e
|
assigning to plain pointer with array indexing
|
2025-05-28 18:08:53 +02:00 |
|
Irmen de Jong
|
4e61e25c02
|
Merge branch 'master' into structs
# Conflicts:
# compiler/test/TestTypecasts.kt
|
2025-05-27 23:52:59 +02:00 |
|
Irmen de Jong
|
5097d52d99
|
IR codegen for pointer indexing expressions, -assignment
|
2025-05-27 23:41:08 +02:00 |
|
Irmen de Jong
|
09d2185bb1
|
PtArrayIndexer variable is now nullable (because it could be a ptr deref instead)
|
2025-05-25 23:04:32 +02:00 |
|
Irmen de Jong
|
5c02e2bd71
|
fix a ptr indexing case, fix address-of fields
|
2025-05-25 21:32:31 +02:00 |
|
Irmen de Jong
|
fb01389b3d
|
cleaning up pointer deref
|
2025-05-25 18:33:37 +02:00 |
|
Irmen de Jong
|
aaa81210ce
|
cleaning up pointer indexing
|
2025-05-25 02:56:32 +02:00 |
|
Irmen de Jong
|
23a853db1e
|
Merge branch 'master' into structs
# Conflicts:
# compiler/src/prog8/compiler/astprocessing/AstChecker.kt
# examples/test.p8
|
2025-05-23 19:00:59 +02:00 |
|
Irmen de Jong
|
9da430ffeb
|
vm: more complete V-flag handling. somd doc and todo updates.
|
2025-05-23 18:58:14 +02:00 |
|