1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-06-10 10:29:36 +00:00
Commit Graph

2172 Commits

Author SHA1 Message Date
Jesper Gravgaard
294bb27eec Updated %nn to 0bnn and $nn to 0xnn. 2024-01-02 19:45:16 +01:00
Jesper Gravgaard
771fa9dbcd Added more CIA addresses. 2024-01-02 18:50:07 +01:00
Jesper Gravgaard
dc65b10ece Added some missing vectors. 2023-12-29 07:58:02 +01:00
Jesper Gravgaard
ef7ab9be16 Added more CIA constants 2023-12-29 07:13:36 +01:00
Jesper Gravgaard
cf13f35eed Fixed tests for running on MacOs Sonoma 2023-11-25 16:22:11 +01:00
jespergravgaard
cec787e91b Upgraded to KickAss 5.25 2023-09-03 14:44:43 +02:00
Jesper Gravgaard
6c8bab90c6 Fixed #827 problem with starting Vice64 on Windows by using ProcessBuilder. 2023-08-27 19:33:52 +02:00
jespergravgaard
2ee4e5c14a main merged 2023-05-21 19:16:51 +02:00
jespergravgaard
a20fd82d2d Merge branch 'master' into 815-procedure-compilation
# Conflicts:
#	src/main/java/dk/camelot64/kickc/passes/Pass0GenerateStatementSequence.java
#	src/main/java/dk/camelot64/kickc/passes/Pass4CodeGeneration.java
#	src/test/ref/printf-17.log
#	src/test/ref/printf-18.log
#	src/test/ref/printf-19.log
2023-05-21 19:01:30 +02:00
jespergravgaard
0e3f56ead9 minor changes 2023-05-21 17:47:00 +02:00
jespergravgaard
ccf880e617 Merged master into branch.
Rolled back main mem only coalesce.
2023-04-24 07:52:42 +02:00
jespergravgaard
153ab54f10 Merge branch 'master' into fix-compiilation-performance-only-coalesce-zeropage 2023-04-24 07:42:41 +02:00
Sven Van de Velde
46079f3ec2 #819 C-code baseline with CX16 developments 2023-04-24 05:27:26 +00:00
jespergravgaard
d4040e30a0 Moved handling of banked param/return to pass 1. 2023-04-24 00:36:36 +02:00
jespergravgaard
11c86793d3 Ensured we do not coalesce across segments. 2023-04-23 23:25:28 +02:00
jespergravgaard
606ea29132 Moved calling distance to bank. 2023-04-23 22:20:13 +02:00
jespergravgaard
8b7afa4ad0 Procedure.bank is now never null. 2023-04-23 22:04:23 +02:00
jespergravgaard
8c7a144579 Refactored calling distance. 2023-04-23 21:07:16 +02:00
jespergravgaard
eb69af8fe7 Refactored calling convention. 2023-04-23 20:54:22 +02:00
jespergravgaard
9f3ca81e6a Refactored proximity. 2023-04-23 20:37:37 +02:00
jespergravgaard
2b1bc3c11d Increased complexity of examples. Fixed A-clobber problems. 2023-04-23 16:00:52 +02:00
jespergravgaard
291ce871c4 Working on far call merge. 2023-04-23 11:54:47 +02:00
jespergravgaard
04c507d047 Merge branch '821-asm-byte-expressions' into far-call-isolated-updates 2023-04-23 10:10:11 +02:00
jespergravgaard
54aa66b96e Treating ASM bytes as expressions. 2023-04-23 10:09:42 +02:00
jespergravgaard
9f75ffdb2a Merging far-call-isolated. 2023-04-23 09:55:20 +02:00
jespergravgaard
93dac7a14c Merge branch 'master' into far-call-isolated
# Conflicts:
#	pom.xml
#	src/main/antlr4/dk/camelot64/kickc/parser/KickCParser.g4
#	src/main/java/dk/camelot64/kickc/preprocessor/CPreprocessor.java
2023-04-23 09:44:05 +02:00
Flight_Control
ca791df458 - Coalesce optimization option implemented:
- nocoalesce: disables coalesce completely.

- Removed the coalesce testing if both classes were equal, as this does not make any sense ...
2023-04-20 10:47:41 +02:00
Flight_Control
4aeed59d0e - Code improvements for CallingDistance and CallingProximity 2023-04-18 10:15:23 +02:00
Flight_Control
3735b248c3 - Objects.equals(bankLocation, procedure.bankLocation) 2023-04-18 08:36:22 +02:00
Flight_Control
23903b34c6 - Removed TODO 2023-04-18 08:02:39 +02:00
Flight_Control
70012690dd Revert "- Resolved issue of nobank without parameters. Now it works ... The CPreprocessor adds () and the KickCParser.g4 demands brackets as part of the syntax. But you can write without in the code. - Retested all test cases."
This reverts commit 82a6c56e
2023-04-13 13:07:30 +02:00
jespergravgaard
2478ea034f #816 Pragma with no parameter and no parenthesis 2023-04-12 07:50:52 +02:00
Sven Van de Velde
3916ee3413 - Fixed a silly mistake where the banked close call fragment sequence was wrong. I first need to read the current bank, store it in the stack, then change the current bank. After jsr return, pop the old bank from the stack and store it. 2023-04-12 07:35:45 +02:00
Sven Van de Velde
02d9eaf081 - Added banking signature to procedures in the comments of the assembler output file.
- Update test cases and reference data.
- Cleaned old test cases for stack calls.
2023-04-12 06:57:25 +02:00
Sven Van de Velde
82a6c56e0a - Resolved issue of nobank without parameters. Now it works ... The CPreprocessor adds () and the KickCParser.g4 demands brackets as part of the syntax. But you can write without in the code.
- Retested all test cases.
2023-04-11 21:48:26 +02:00
Sven Van de Velde
5c5ffd2736 - Removed unnecessary tests and logic for bank directive parsing.
- Retested all test cases.
2023-04-11 14:44:35 +02:00
Sven Van de Velde
477499b97b - Fixed #pragma nobank parameter issue.
- Optimized logic for #pragma bank.
- Updated test cases and references.
- Made #pragma NAME parameters optional.
- Retested all test cases.
2023-04-11 13:41:14 +02:00
Sven Van de Velde
0393958154 Merge remote-tracking branch 'origin/far-call-isolated' into far-call-isolated-#508 2023-04-11 10:14:10 +02:00
Sven Van de Velde
8bb0ae904f - processed some of the comments.
- documentation fixes.
2023-04-11 10:13:41 +02:00
Jesper Balman Gravgaard
e7d717e915 Apply 2 suggestion(s) to 2 file(s) 2023-04-11 08:02:06 +00:00
Jesper Balman Gravgaard
8b7beac0c1 ok 2023-04-11 07:42:41 +00:00
Sven Van de Velde
f2bf3484ad - testing and regeneration of fragment references
- implementation of near, close, far through AsmFragmentSignature
- fragment consolidation (removal of prepare, execute, finalize)
- stackcall banked throws error + test cases
- overall test cases for phi
- implementation of fragments
2023-04-11 08:35:53 +02:00
Sven Van de Velde
b62430bfc3 - near, close, far implementation using fragments for phi calls
- fragment consolidation
- removal of platform
- stackcall banked throws error
- testing
2023-04-11 08:35:18 +02:00
jespergravgaard
18f6923e4f Improved inline ASM checking 2023-04-10 11:49:51 +02:00
jespergravgaard
9dc17caab2 Made statement loops simpler. 2023-04-10 11:37:50 +02:00
jespergravgaard
55bec51f09 Made statement loops simpler. 2023-04-10 11:19:32 +02:00
jespergravgaard
c78b8c59b1 #815 working on moving control flow graphs into procedure compilation. 2023-04-10 10:23:00 +02:00
Sven Van de Velde
a52b5dc4a9 Banking progress
(cherry picked from commit d0abf45529c34e14ed3ce43b9be3a140f78bc4a9)
2023-04-10 07:22:06 +02:00
jespergravgaard
40182a6ad6 #815 working on moving control flow graphs into procedure compilation. 2023-04-10 00:08:44 +02:00
jespergravgaard
dfbeba7805 #815 working on moving control flow graphs into procedure compilation. 2023-04-09 23:59:49 +02:00