Irmen de Jong
|
8b48a295b6
|
allow struct initializers to occur in array literals
|
2025-09-14 18:16:46 +02:00 |
|
Irmen de Jong
|
8bb927b483
|
fix compiler crash with on..call statement in nested scope
|
2025-09-13 06:44:49 +02:00 |
|
Irmen de Jong
|
1af4cd0d63
|
fix struct initializer error checking
|
2025-09-12 19:55:12 +02:00 |
|
Irmen de Jong
|
db2f28c4cd
|
add struct and pointer benchmark to benchmark program (btree, subscore=654, total 7420)
fix nullpointer in array initalizer
|
2025-09-12 17:09:44 +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
|
6de95f7a3b
|
new static struct initializer syntax ^^Node : [1,2,3]
avoids confusion with function calls
|
2025-09-10 13:47:12 +02:00 |
|
Irmen de Jong
|
82839a2d82
|
fix alias error and byte to word assignment error
|
2025-09-09 15:05:02 +02:00 |
|
Irmen de Jong
|
e5fc9b3132
|
fix 6502 pointer arithmetic optimization that led to increased code size
|
2025-09-09 14:06:41 +02:00 |
|
Irmen de Jong
|
ced4c5944a
|
fix broken optimization for wordvar - value expressions
|
2025-09-09 08:05:51 +02:00 |
|
Irmen de Jong
|
d4c460072b
|
don't place library and subroutine parameter pointers in ZP automatically, to save ZP space
|
2025-09-09 06:25:40 +02:00 |
|
Irmen de Jong
|
0b9384b556
|
fix typecasted byte-to-word pointer assignment, some more asm optimizations
|
2025-09-09 05:56:55 +02:00 |
|
Irmen de Jong
|
6c3277e3e3
|
fix more alias bugs
|
2025-09-09 02:28:05 +02:00 |
|
Irmen de Jong
|
e178097735
|
support more struct instance assignments via memcopy()
|
2025-09-08 13:18:50 +02:00 |
|
Irmen de Jong
|
a1ab8ed208
|
fixing alias bugs
|
2025-09-07 22:52:13 +02:00 |
|
Irmen de Jong
|
6ababbf8f4
|
support more struct instance assignments via memcopy()
|
2025-09-07 00:29:18 +02:00 |
|
Irmen de Jong
|
79629befc1
|
fix pointer arithmetic error in struct instance assignments (that get turned into a memcopy call)
|
2025-09-06 00:28:59 +02:00 |
|
Irmen de Jong
|
c39acc5031
|
fix mistakes
|
2025-09-04 00:30:00 +02:00 |
|
Irmen de Jong
|
f54a29c415
|
small 6502 pointer arithmetic expression rewrite that produces smaller code
|
2025-09-03 23:54:10 +02:00 |
|
Irmen de Jong
|
783b111059
|
pointer to uword casts should not be removed
optimized addUnsignedByteOrWordToAY a tiny bit (but needs more)
|
2025-09-03 23:09:11 +02:00 |
|
Irmen de Jong
|
28df08eea8
|
introduce P8ZP_SCRATCH_PTR temporary zp pointer to avoid clobbering W1,W2
|
2025-09-01 23:56:31 +02:00 |
|
Irmen de Jong
|
a7e9d8e14b
|
fix struct field offset calculations
|
2025-09-01 18:57:02 +02:00 |
|
Irmen de Jong
|
08f3abe5bf
|
prefer to put pointer variables into zeropage (add implicit @zp)
|
2025-08-31 17:06:14 +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
|
a9142b9ce5
|
slightly optimize certain pointer indexing calculation, fix invalid deref optimization
|
2025-08-31 13:40:28 +02:00 |
|
Irmen de Jong
|
ff9bec90ec
|
fix struct pointer array indexing field dereferencing
the pointers/sorting example now actually works on the 6502 too
|
2025-08-30 12:24:30 +02:00 |
|
Irmen de Jong
|
5eb2fc8d86
|
fix a bad pointer arithmetic optimization
|
2025-08-29 19:36:57 +02:00 |
|
Irmen de Jong
|
221a093e5f
|
optimize some pointer arithmetic, fix pointer arithmetic for ptr-value
|
2025-08-28 23:08:06 +02:00 |
|
Irmen de Jong
|
0285a4cce1
|
avoid needless pointer arithmetic multiplication by struct size 1
|
2025-08-27 21:50:09 +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
|
0f79351de9
|
support word size indexing on typed pointers
|
2025-08-25 22:58:48 +02:00 |
|
Irmen de Jong
|
3cdb25ce8e
|
fix invalid string comparisons being generated for regular pointer value comparison
|
2025-08-24 16:19:42 +02:00 |
|
Irmen de Jong
|
10ff6a0095
|
Merge branch 'master' into structs6502
|
2025-08-24 14:34:15 +02:00 |
|
Irmen de Jong
|
17bdb22e4f
|
converting untyped to typed pointers in c64,c128,pet32 libraries
|
2025-08-24 14:21:51 +02:00 |
|
Irmen de Jong
|
a68209be37
|
converting untyped to typed pointers in cx16 libraries
|
2025-08-24 14:13:02 +02:00 |
|
Irmen de Jong
|
7b40eade44
|
added txt.rvs_on() and txt.rvs_off(), added txt.color() support for virtual target
|
2025-08-24 13:29:29 +02:00 |
|
Irmen de Jong
|
aa72ded21e
|
add sorting module to symboldump, moved shared cbm textio routines to shared module
|
2025-08-24 13:05:38 +02:00 |
|
Irmen de Jong
|
8e53c83844
|
optimize certain ptr+value expression on 6502
|
2025-08-24 05:46:49 +02:00 |
|
Irmen de Jong
|
e2a2db1256
|
converting untyped to typed pointers in libraries
|
2025-08-22 22:47:19 +02:00 |
|
markjreed
|
2afd2d4dae
|
Make PET PLOT routine more efficient (#174)
* feat: take advantage of KERNAL vars to implement PLOT
* fix: tabs
* fix: update TBLX too, so cursor change sticks after output
* fix: formatting
|
2025-08-22 21:28:21 +02:00 |
|
Irmen de Jong
|
fad17cc094
|
support a few other simple cases of struct instance assignment
|
2025-08-21 00:04:30 +02:00 |
|
Irmen de Jong
|
f93d957999
|
proper warning for struct instance assignment (not yet supported)
|
2025-08-20 20:35:29 +02:00 |
|
Irmen de Jong
|
8db0344cee
|
Merge branch 'master' into structs6502
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/assignment/AssignmentAsmGen.kt
|
2025-08-19 23:10:15 +02:00 |
|
Irmen de Jong
|
32e531f951
|
test
|
2025-08-19 23:09:33 +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
|
826fb3e9c2
|
implemented assign indexed ptr byte
|
2025-08-17 13:21:31 +02:00 |
|
Irmen de Jong
|
a3d7b8a899
|
fix detection of string comparisons (make it aware of new pointer types equivalent to STR)
|
2025-08-16 17:04:59 +02:00 |
|
Irmen de Jong
|
0cc36ed6e4
|
pointer TODO's all as stub methods in the PointerAssignmentsGen class
|
2025-08-16 16:21:06 +02:00 |
|
Irmen de Jong
|
4a8d5def84
|
code cleanups, pointer TODOs, docs dark mode
|
2025-08-16 11:25:18 +02:00 |
|
Irmen de Jong
|
729efb04e1
|
fix code size regressions
|
2025-08-14 23:59:59 +02:00 |
|