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
|
4a8d5def84
|
code cleanups, pointer TODOs, docs dark mode
|
2025-08-16 11:25:18 +02:00 |
|
Irmen de Jong
|
7c0fb10197
|
fix bug: VM MULR float error, another pointer dependency checker error
|
2025-08-05 22:00:05 +02:00 |
|
Irmen de Jong
|
dee761a99e
|
fix compiler crash on certain pointer assignments
|
2025-08-01 22:22:43 +02:00 |
|
Irmen de Jong
|
88b074c208
|
pointer types should just be uwords in IR
|
2025-07-30 01:07:37 +02:00 |
|
Irmen de Jong
|
c39d570b72
|
make more use of ISubType interface itself rather than casting it to StructDecl all the time
|
2025-07-29 22:59:31 +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
|
08810c2749
|
proper error message for unsupported &&subroutine
|
2025-07-27 23:44:24 +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
|
0b5413ad83
|
Merge branch 'master' into structs
# Conflicts:
# docs/source/todo.rst
# examples/test.p8
|
2025-07-21 20:53:06 +02:00 |
|
Irmen de Jong
|
dd7adde387
|
fix virtual diskio.f_write
|
2025-07-21 20:52:11 +02:00 |
|
Irmen de Jong
|
e14c3f8b59
|
code cleanups
|
2025-07-06 00:52:37 +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
|
08b314c37d
|
IR: fix various register type mismatches
|
2025-05-28 22:15:07 +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 |
|
Irmen de Jong
|
61fe55168a
|
Merge branch 'master' into structs
# Conflicts:
# codeGenIntermediate/src/prog8/codegen/intermediate/AssignmentGen.kt
# codeGenIntermediate/src/prog8/codegen/intermediate/ExpressionGen.kt
# examples/test.p8
|
2025-05-20 22:35:04 +02:00 |
|
Irmen de Jong
|
25d7f8808f
|
IR: added signed multiplication opcodes
|
2025-05-20 21:36:05 +02:00 |
|
Irmen de Jong
|
adf5600a9b
|
simplify
|
2025-05-18 18:37:19 +02:00 |
|
Irmen de Jong
|
913ab03963
|
get rid of invalid ARRAY_STRUCT data type (arrays of struct instance are not yet supported)
|
2025-05-14 20:43:00 +02:00 |
|
Irmen de Jong
|
924e28e9b3
|
Merge branch 'master' into structs
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/AsmGen.kt
# compiler/src/prog8/compiler/astprocessing/CodeDesugarer.kt
# compiler/src/prog8/compiler/astprocessing/SimplifiedAstMaker.kt
# compilerAst/src/prog8/ast/AstToSourceTextConverter.kt
# compilerAst/src/prog8/ast/antlr/Antlr2Kotlin.kt
# compilerAst/src/prog8/ast/walk/AstWalker.kt
# compilerAst/src/prog8/ast/walk/IAstVisitor.kt
# docs/source/todo.rst
# examples/test.p8
# parser/src/main/antlr/Prog8ANTLR.g4
|
2025-05-11 23:23:06 +02:00 |
|
Irmen de Jong
|
31c1bf8bc5
|
added on..goto/call statement
|
2025-05-11 21:37:44 +02:00 |
|
Irmen de Jong
|
59c378089e
|
fix some struct type and symbol lookup errors
|
2025-05-11 00:52:35 +02:00 |
|
Irmen de Jong
|
5de626aab8
|
support comparison operators on pointers
|
2025-05-06 22:26:27 +02:00 |
|
Irmen de Jong
|
701f155951
|
Merge branch 'master' into structs
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/ProgramAndVarsGen.kt
# compiler/test/TestSymbolTable.kt
# docs/source/todo.rst
# examples/test.p8
# intermediate/src/prog8/intermediate/IRFileReader.kt
# intermediate/src/prog8/intermediate/IRFileWriter.kt
# intermediate/src/prog8/intermediate/IRSymbolTable.kt
# simpleAst/src/prog8/code/SymbolTable.kt
# simpleAst/src/prog8/code/SymbolTableMaker.kt
# virtualmachine/src/prog8/vm/VmProgramLoader.kt
|
2025-05-06 17:59:36 +02:00 |
|
Irmen de Jong
|
522958e0e9
|
@dirty variables now actually end up in the uninitialized BSS_NOCLEAR section
|
2025-05-06 01:41:34 +02:00 |
|
Irmen de Jong
|
38949b82c3
|
type check tuning
|
2025-05-05 15:41:32 +02:00 |
|
Irmen de Jong
|
0e0377d1f0
|
IR/VM implemented struct allocations and initialization
|
2025-05-04 14:04:44 +02:00 |
|
Irmen de Jong
|
55e0dbab27
|
preparing for statically allocating struct instances
|
2025-05-03 23:44:29 +02:00 |
|
Irmen de Jong
|
1ba5587404
|
allow syntax for declaring variables with struct instance type
|
2025-05-03 16:14:22 +02:00 |
|
Irmen de Jong
|
e0dea89477
|
added support for ptr[x].field
|
2025-05-02 22:16:20 +02:00 |
|
Irmen de Jong
|
6fc2902895
|
fixing ptr traversal typecheck issues
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
b89bbb9281
|
allow pointers in subroutines params and return values
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
696bf636ed
|
better parsing of directive names results in better error messages when an invalid one is found
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
0162e7a0c1
|
fix the scoping problems on subtypes
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
476a4bac8e
|
IR: LOADI allows r1 and r2 to be the same for pointer chain dereference optimalization
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
e328520588
|
initial struct and typed pointer support
|
2025-05-02 00:41:40 +02:00 |
|
Irmen de Jong
|
4d91f92a2e
|
clearer error message
|
2025-04-25 19:38:45 +02:00 |
|
Irmen de Jong
|
98505d27b1
|
IR: fix invalid removal of label chunks and include asmsubs when looking for labels
|
2025-04-24 23:30:51 +02:00 |
|
Irmen de Jong
|
cd63a58ad9
|
IR: get rid of problematic PREPARECALL pseudo instruction
|
2025-04-24 22:32:40 +02:00 |
|
Irmen de Jong
|
170f8dd092
|
IR: new CALLFAR instructions to support callfar into another bank
|
2025-04-24 21:17:48 +02:00 |
|
Irmen de Jong
|
619dcb6a84
|
fix error in IR register typing
|
2025-04-24 20:50:19 +02:00 |
|
Irmen de Jong
|
1e702439b7
|
avoid JDK 21+/Kotlin method conflict of removeLast()/removeFirst()
background: see https://www.reddit.com/r/androiddev/comments/1gspjrs/dont_use_kotlins_removefirst_and_removelast_when/
https://youtrack.jetbrains.com/issue/KT-71375/Prevent-Kotlins-removeFirst-and-removeLast-from-causing-crashes-on-Android-14-and-below-after-upgrading-to-Android-API-Level-35
it's about Android but the problem also occurs on desktop JDKs for example when running a Java21 compiled prog8 with Java17
|
2025-04-24 18:11:42 +02:00 |
|
Irmen de Jong
|
bd1894580e
|
allow floating point value as part of a multi-value return
|
2025-04-18 22:45:05 +02:00 |
|
Irmen de Jong
|
dd2d466350
|
code cleanups
|
2025-04-17 22:58:02 +02:00 |
|
Irmen de Jong
|
59582f5210
|
added -quiet flag to suppres all compiler and assembler messages
|
2025-04-10 21:16:26 +02:00 |
|