1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-10-22 09:25:49 +00:00
Commit Graph

1642 Commits

Author SHA1 Message Date
jespergravgaard
4ed3621d9e Added STACK parameter push. #316 2019-09-20 08:18:32 +02:00
jespergravgaard
dfcc4beab2 Added first stack fragment. #316 2019-09-19 08:24:10 +02:00
jespergravgaard
25742f1654 Implemented most of stack based parameter fetching inside procedures. #316 2019-09-19 08:22:54 +02:00
jespergravgaard
51d1e6f41f Changed control flow graph to print procedure signatures. 2019-09-18 23:00:34 +02:00
jespergravgaard
6e767862e8 Added ParamValue RValue for retrieving parameter values in procedures. #316 2019-09-18 22:41:46 +02:00
jespergravgaard
70435aec30 Added tests for different reported problems & fixes. 2019-09-18 21:53:32 +02:00
jespergravgaard
caf8ac6421 Working on stack calling convention. #316 2019-09-18 08:55:18 +02:00
jespergravgaard
9d8a2482ea Fixed fragment for Danny Spijksma 2019-09-17 23:34:24 +02:00
jespergravgaard
a50f614d6a Added missing fragment for Danny Spijksma 2019-09-17 23:28:09 +02:00
jespergravgaard
b70ccac9fa Removed extra assignment for return value. #316 2019-09-17 09:12:34 +02:00
jespergravgaard
e83e44675a Removed extra assignment for return value 2019-09-17 09:11:46 +02:00
jespergravgaard
95f97d842a Added syntax for procedure calling conventions - and a pragma changing the current calling convention. Added two tests. Changed Pass1 procedure-stuff to only handle the PHI calling convention. #316 2019-09-17 01:11:51 +02:00
jespergravgaard
63dbe9bc5e Added fragment for ‎Clay Cowgill‎. 2019-09-16 01:09:25 +02:00
jespergravgaard
f16a29f5f7 Added commandline options for disabling uplift and outputting SIZE info. 2019-09-16 00:51:03 +02:00
jespergravgaard
0ce718371e Fixed problem with adding ints to literal string pointers. Closes #315 2019-09-14 11:21:29 +02:00
jespergravgaard
bc1bb7d2e5 Fixed test 2019-09-14 08:09:34 +02:00
jespergravgaard
4f6908ac80 Fixed double emitting of strings inside arrays inside structs. Closes #312 2019-09-13 23:29:42 +02:00
jespergravgaard
edb12d8577 Moved strings into chunk method. 2019-09-13 21:21:32 +02:00
jespergravgaard
00d6cad179 Moved kickasm data to data chunk. 2019-09-13 20:05:31 +02:00
jespergravgaard
d0a9d81abf Moved filled arrays to addDataChunk() 2019-09-13 11:56:05 +02:00
jespergravgaard
8b441f6814 Arrays of structs with arrays now working - with some minor flaws (Size of sub-array is not checked, Const Strings are output as data twice, ASM for indexing into array inside struct by pointer is not optimal). Closes "274" 2019-09-13 01:23:55 +02:00
jespergravgaard
24e40b9083 Fixed signed word greater-than fragments with errors. Progress on structs containing arrays elements. #312 2019-09-12 23:48:12 +02:00
jespergravgaard
f110b86ee1 Fixed _deref(_deref_pptc1) fragments to handle {c1}>255. Added simpler test for struct containing array problem. #312 2019-09-10 00:18:31 +02:00
jespergravgaard
4ab1cac029 Added missing test data 2019-09-09 23:29:18 +02:00
jespergravgaard
5fe5c9f84b Added missing struct-ptr fragments. Added padding to initialization of fixed size arrays with to few elements in the initializer. Closes #311 2019-09-09 23:01:04 +02:00
jespergravgaard
d6ad2c3b9b Added missing fragment. Fixed exception when casting literal string. Closes #309 2019-09-09 15:51:39 +02:00
jespergravgaard
a1f4656f79 Improved selfmod fragments. Added needed fragments that is not self-modifying. Fixed -Wfragment in pass4. 2019-09-09 01:31:21 +02:00
jespergravgaard
8d8dcd78fb Releasing version 0.7.10. 2019-09-09 00:20:55 +02:00
Jesper Gravgaard
f22ebff0fb Moved self-modifying code into the 6502-selfmod feature-set. Closes #307 2019-09-08 22:21:33 +02:00
Jesper Gravgaard
1a6be50c70 Working on CPU/ROM support. #307 2019-09-08 16:26:25 +02:00
jespergravgaard
ce924d03cd Working on CPU/ROM support. #303 #307 2019-09-08 15:28:33 +02:00
jespergravgaard
3d0871f757 Added support for #pragma cpu(). Added test of program without illegal opcodes. Closes #303 2019-09-08 02:29:20 +02:00
jespergravgaard
9f01a27df0 Moved illegal opcode fragments to 6502X. #303 2019-09-08 01:48:56 +02:00
jespergravgaard
62f9d7c9d9 Added initial support for specifying which CPU to compile to. #303 2019-09-08 01:35:38 +02:00
jespergravgaard
32ead9cc87 One more optimization. 2019-09-07 22:31:24 +02:00
jespergravgaard
7fb7d3acf6 Optimized live ranges by statement idx in PassNLiveRangeVariables. Added example of how to use segments to compile code meant for transfer to zeropage. 2019-09-07 18:23:11 +02:00
jespergravgaard
33c39bfd52 Fixed error in fragment doing *(ptr)++ 2019-09-07 16:23:34 +02:00
jespergravgaard
71fc963145 Improved error reporting when generating ASM statement fails. Added missing fragment. Added another test showing problems with number resolving. 2019-09-07 16:14:08 +02:00
jespergravgaard
f09b1616c2 Added -Wfragment option that replaces error with warning when a fragment is missing. 2019-09-06 22:32:18 +02:00
jespergravgaard
01008ccb26 Optimized Pass2AssertSymbols and PassNCalcLiveRangeVariables. 2019-09-06 07:44:09 +02:00
jespergravgaard
daa963dbbb Added missing fragment for Paul Nelsen 2019-09-04 23:30:19 +02:00
jespergravgaard
0bf1363c90 Improved fragment 2019-09-04 23:11:35 +02:00
jespergravgaard
899058ce42 Added fragment for Paul Nelsen. 2019-09-04 23:09:27 +02:00
jespergravgaard
c7fd528709 Removed last GB of memory usage. Closes #306 2019-09-04 00:03:16 +02:00
jespergravgaard
9c5de66830 Removed 1GB of memory usage. #306 2019-09-03 23:11:41 +02:00
Jesper Gravgaard
036ff9259c Fixed problem with recursive aliasses (it was caused by a bad alias-replacement earlier). Closes #305
Fixed literal calculation of constant pointer decrement.
2019-09-03 16:16:07 +02:00
jespergravgaard
42ecee2f94 Working on #304, #305, #306. 2019-09-03 08:35:38 +02:00
jespergravgaard
162b29b2d4 Standardized >> to use hex in fragments. 2019-09-03 00:35:40 +02:00
jespergravgaard
9b113b4bcd Fixed problem with inline ASM culling JMP. Closes #302 2019-09-02 23:35:15 +02:00
jespergravgaard
2afd9bd3c0 Re-added -Onoloophead option. 2019-09-02 22:55:04 +02:00