Irmen de Jong
|
4b320013cf
|
Merge branch 'master' into new-codegens
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/assignment/PointerAssignmentsGen.kt
# compiler/test/TestPointers.kt
# docs/source/todo.rst
# examples/test.p8
|
2026-08-21 19:14:29 +02:00 |
|
Irmen de Jong
|
6b91a464c0
|
fix spelling errors
|
2026-08-20 23:55:26 +02:00 |
|
Irmen de Jong
|
c81d9b25ac
|
Merge branch 'master' into new-codegens
# Conflicts:
# compiler/test/ast/TestConst.kt
# docs/source/todo.rst
|
2026-08-18 23:52:02 +02:00 |
|
Irmen de Jong
|
3aab457a47
|
fix const evaluation type truncation error for bitwise operations between constants of different types
|
2026-08-18 23:48:06 +02:00 |
|
Irmen de Jong
|
34f0bea4e8
|
fix pointer unit tests, consolidate pointer type selection for target
|
2026-08-17 03:30:17 +02:00 |
|
Irmen de Jong
|
3514bd61ab
|
new syntax feature: const type can be omitted (defaults to long for integers now)
|
2026-08-11 21:27:07 +02:00 |
|
Irmen de Jong
|
c53e72c5b2
|
Merge branch 'master' into new-codegens
# Conflicts:
# compiler/test/TestCompilerOnExamples.kt
|
2026-08-09 23:05:04 +02:00 |
|
Irmen de Jong
|
41c2b9c039
|
fix bit shift code for shifts by 16/32 bits or more
|
2026-08-09 14:26:45 +02:00 |
|
Irmen de Jong
|
b5dfc0cd97
|
fix debug message and tests
|
2026-08-09 00:32:58 +02:00 |
|
Irmen de Jong
|
a5978a913b
|
m68k: added coroutines module
|
2026-08-06 22:08:59 +02:00 |
|
Irmen de Jong
|
1c71f702f4
|
fix invalid const-folding of certain strings char classification routines such as isupper()
|
2026-08-05 02:55:36 +02:00 |
|
Irmen de Jong
|
3d3c567ea6
|
fix memory-byte read sign extension error when the byte was signed
|
2026-08-05 02:54:59 +02:00 |
|
Irmen de Jong
|
82342268da
|
fix too conservative Inliner gates, and possible endinanness problem. Optimized nested msb/lsb on m68k.
|
2026-08-04 21:01:29 +02:00 |
|
Irmen de Jong
|
30e576e253
|
defensive fix for wrong datatype in pointer comparisons
|
2026-08-04 20:44:05 +02:00 |
|
Irmen de Jong
|
a5782c300a
|
fix compiler crash on out of range pointer address values
|
2026-08-04 20:24:50 +02:00 |
|
Irmen de Jong
|
84f720b63b
|
fix pokew/pokel pointer size mismatch
|
2026-08-04 19:46:49 +02:00 |
|
Irmen de Jong
|
b8cded4373
|
revert back to fast (but slightly inaccurate) signed bitshifting for division optimization
|
2026-08-04 19:41:14 +02:00 |
|
Irmen de Jong
|
cf714d8e0c
|
fix invalid optimization of signed division into a shift (wrong rounding result) - 6502 codegen only
|
2026-08-04 16:16:38 +02:00 |
|
Irmen de Jong
|
86c2f711ed
|
fix invalid const-folding of certain strings char classification routines such as isupper()
|
2026-08-04 15:59:08 +02:00 |
|
Irmen de Jong
|
7138ee024b
|
fix memory-byte read sign extension error when the byte was signed
|
2026-08-04 15:45:14 +02:00 |
|
Irmen de Jong
|
fea52c6145
|
uword comparison optimizations not for m68k
|
2026-08-03 22:45:46 +02:00 |
|
Irmen de Jong
|
4b20440efe
|
another bit shift optimization not for m68k
|
2026-08-03 22:30:30 +02:00 |
|
Irmen de Jong
|
c39410afc2
|
x/256 ast optimization not for m68k
|
2026-08-03 22:19:29 +02:00 |
|
Irmen de Jong
|
93b953cf60
|
implement IR ADDIM and SUBIM in the new codegens
|
2026-08-03 21:53:54 +02:00 |
|
Irmen de Jong
|
8405e6f2a3
|
fix endianness issue with msw/lsw on m68k
|
2026-08-03 15:49:39 +02:00 |
|
Irmen de Jong
|
491b28f6b6
|
chained expression splitting is only beneficial on the 6502
|
2026-08-03 15:26:52 +02:00 |
|
Irmen de Jong
|
d144235dc9
|
Merge branch 'master' into new-codegens
|
2026-08-03 14:35:47 +02:00 |
|
Irmen de Jong
|
9cbbf85a85
|
fix chained expression optimization bug
|
2026-08-03 14:22:46 +02:00 |
|
Irmen de Jong
|
2fa82ff3ad
|
fix ast remainder optimization check
|
2026-08-03 13:26:11 +02:00 |
|
Irmen de Jong
|
9936a855ab
|
fix ast remainder optimization check
|
2026-08-03 13:05:26 +02:00 |
|
Irmen de Jong
|
3e03980478
|
tweaking ast optimizations for m68k
|
2026-08-03 12:45:48 +02:00 |
|
Irmen de Jong
|
b6e503a67b
|
fix amiga textio and m68k alignment issues
|
2026-08-03 02:33:19 +02:00 |
|
Irmen de Jong
|
abea7bf329
|
fix const evaluation type problem in bitwise operations
|
2026-07-14 07:28:31 +02:00 |
|
Irmen de Jong
|
9a2851a9d5
|
fix const evaluation type problem in bitwise operations
|
2026-07-14 07:12:52 +02:00 |
|
Irmen de Jong
|
4506a3cb3e
|
pass compilation target to more places to be able to determine correct types
|
2026-07-12 03:52:57 +02:00 |
|
Irmen de Jong
|
f977daafbb
|
value casting now gets passed the compilation target (needed for correct pointer type casting)
|
2026-07-10 22:23:33 +02:00 |
|
Irmen de Jong
|
8a7922ffcc
|
fix split words arrays on m68k to be not split
|
2026-07-10 01:47:18 +02:00 |
|
Irmen de Jong
|
a3d14003cb
|
Enhanced inlining: support subroutines with one simple parameter. NOTE: risky optimization, maybe still broken in obscure cases
also improve parent pointer relinking, fix namespace scoping, and refine assembly checks.
|
2026-06-19 04:57:54 +02:00 |
|
Irmen de Jong
|
b5fc25b2f4
|
Merge branch 'v12.2.1'
# Conflicts:
# compiler/test/TestCompilerOnExamples.kt
# docs/source/_static/symboldumps/skeletons-cx16.txt
|
2026-06-17 19:41:34 +02:00 |
|
Irmen de Jong
|
0f80b695e7
|
Fix invalid optimizer edge cases
|
2026-06-17 01:18:39 +02:00 |
|
Irmen de Jong
|
88a3e5b23f
|
Merge branch 'v12.2.1'
# Conflicts:
# compiler/test/TestCompilerOnExamples.kt
# compiler/test/codegeneration/TestArrayThings.kt
# examples/test.p8
|
2026-06-16 00:48:35 +02:00 |
|
Irmen de Jong
|
19f3b03ac3
|
remove problematic inlining for subroutines having 1 or more parameters, to avoid an endless loop
|
2026-06-16 00:02:05 +02:00 |
|
Irmen de Jong
|
de988f72c6
|
switch from IDEA iml to Gradle build config, this finally fixes Kotest integration as well
|
2026-06-08 20:43:54 +02:00 |
|
Irmen de Jong
|
eb19d00a1e
|
prevent faulty inlining of subs with register-aliased parameters
|
2026-06-02 23:14:55 +02:00 |
|
Irmen de Jong
|
8bf744cc4a
|
fix some bitwise expression optimization bugs
|
2026-05-31 07:35:32 +02:00 |
|
Irmen de Jong
|
6ab74fd51d
|
don't erroneously allow taking the address of const values
|
2026-05-27 00:58:01 +02:00 |
|
Irmen de Jong
|
cdd3d37376
|
update asmsub inlining behavior and tests: improve support for parameterized calls
|
2026-05-22 04:17:43 +02:00 |
|
Irmen de Jong
|
d0bc01d618
|
improve inliner: support slightly more complex return expressions
|
2026-05-22 03:15:57 +02:00 |
|
Irmen de Jong
|
82aa67ffda
|
lineclip module added
|
2026-05-15 17:45:13 +02:00 |
|
Irmen de Jong
|
7c44835772
|
const folding is always done even when -noopt is used
|
2026-05-15 12:22:52 +02:00 |
|