1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-12-19 15:29:48 +00:00
Commit Graph

2984 Commits

Author SHA1 Message Date
jespergravgaard
9fc9d525cf Added test. 2021-09-25 21:33:23 +02:00
jespergravgaard
063512c3f1 When fixing long branch fails the compile stops with KickAss error output. 2021-09-25 21:22:20 +02:00
jespergravgaard
075974063a Added -vfixlongbranch to give more info about the fix long branch pass. 2021-09-25 19:59:45 +02:00
Jesper Gravgaard
5d6fcca6c2 Allocation of zp/memory to variables is now prioritized by the calculated weight of the variable. This ensures that the most used variables are kept on zeropage when variables spill over into main memory. Closes #712 2021-09-23 08:24:56 +02:00
Jesper Gravgaard
1f91617ad1 Renamed non-relocatable variables to hardware/hardcoded. #712 2021-09-23 07:49:19 +02:00
Jesper Gravgaard
74cc8bd1f6 Added support for non-relocatable main memory variables. #712 2021-09-23 07:43:24 +02:00
jespergravgaard
d09f4e2219 added test refs 2021-09-03 17:56:28 +02:00
jespergravgaard
be69833ff2 Added test with working work-around for #717. 2021-09-02 07:56:03 +02:00
jespergravgaard
1f133e34e9 Added very naive support for zeropage overflow to main memory upon exhaust. TODO - overflow low priority variables. #712 2021-08-17 07:48:58 +02:00
jespergravgaard
1294d0b7a2 Fixed multiplication rewriting to shift/add to also support const*var. Closes #201 2021-08-15 00:47:58 +02:00
jespergravgaard
db4fe786a7 Fixed multiplication rewriting to shift/add to also support const*var. Closes #201 2021-08-15 00:47:48 +02:00
jespergravgaard
31ecd6a2c5 Added support for passing NULL-parameters. Closes #706 2021-08-15 00:02:46 +02:00
jespergravgaard
93d19035ca Added test demonstrating problem with NULL parameter. #706 2021-08-14 23:24:13 +02:00
jespergravgaard
39f79b668b Fixed test. Added struct_model to platform .TGT-file. Closes #716 2021-08-13 22:50:09 +02:00
jespergravgaard
940e0813be Added sprintf(). Closes #715 2021-08-13 22:31:54 +02:00
jespergravgaard
5e18953517 Added test. 2021-08-13 22:03:52 +02:00
jespergravgaard
48f4e99826 Added support for snprintf(). Closes #698 2021-08-13 21:22:17 +02:00
jespergravgaard
ea760e4731 Added support for snprintf(). Closes #698 2021-08-13 20:06:59 +02:00
jespergravgaard
72471bbcd0 Rewrote printf() to use a putc() function pointer. Working on #698 2021-08-13 09:19:33 +02:00
jespergravgaard
728a5ae7e3 Removed ASM directive keywords (resource/uses/clobbers/bytes/cycles). Closes #696 2021-08-11 00:55:08 +02:00
jespergravgaard
650592fc66 Added commandline option -struct_model to specify the struct model. Closes #707 2021-08-11 00:25:57 +02:00
jespergravgaard
8a38c2a887 Using C declaration format for types in logs, errors, comments and more. 2021-08-10 17:48:55 +02:00
jespergravgaard
ac9dbc88a8 Added toCDecl() that cn print variables and types in standard C declaration format. 2021-08-10 00:54:20 +02:00
jespergravgaard
dfa0109613 Added advanced call fragment. 2021-08-09 01:54:22 +02:00
jespergravgaard
d3ed5f774f Added support for advanced indirect calls. Calls are now fragments. Added support for @outside_flow ASM tag placing ASM at the end of the current scope. Added support for expanding label names in ASM fragments. Closes #708 2021-08-09 01:48:50 +02:00
jespergravgaard
92755c6287 Added support for indirect calls to advanced expressions through a new fragment type. Closes #708 2021-08-09 00:51:28 +02:00
jespergravgaard
66a1222fdb Added support for indirect calls to advanced expressions through a new fragment type. Closes #708 2021-08-08 17:45:56 +02:00
jespergravgaard
77db0e8701 Added support for calling a pointer to function without(*). Closes #692 2021-08-08 13:47:48 +02:00
jespergravgaard
8514c9942e Updated test data. 2021-08-08 09:25:10 +02:00
jespergravgaard
bcc46fd8ff Added support for automatically converting function names to function pointers. Closes #702 2021-08-08 02:15:02 +02:00
jespergravgaard
6cd1b4928e Added memcmp() to <string.h>. Closes #699 2021-08-08 00:50:34 +02:00
jespergravgaard
912f93b93b Added strncmp() and strcmp() to <string.h>. Closes #700 2021-08-08 00:29:59 +02:00
jespergravgaard
f60e1240e2 Added support for sizeof without parenthesis. Closes #695 2021-08-07 17:21:47 +02:00
jespergravgaard
1deb381c57 Added support for labels and goto. Closes #687 2021-08-07 17:05:09 +02:00
jespergravgaard
5ee8749d06 Removes space 2021-08-07 10:41:06 +02:00
jespergravgaard
5439910ae3 Improved parameter type errors to show expected and actual types. Closes #703 2021-08-07 10:32:20 +02:00
jespergravgaard
8c27abb7e0 Fixed problem where SymbolTypeInference gave error messages without any line number - by removing all error messages - and leaving the responsibility with the caller. 2021-08-06 16:17:48 +02:00
jespergravgaard
ce8e34b16a Fixed problem with automatic C-file loading included the same file twice. Closes #697 2021-08-06 11:03:16 +02:00
jespergravgaard
f01db23d0d Added another test for structs with char* members. Closes #397 2021-08-06 09:41:43 +02:00
jespergravgaard
41f50629c4 Added support for names of preprocessor macros with parameters to be used. Closes #693 2021-08-06 01:59:25 +02:00
jespergravgaard
c5c6a2dcdb Merge remote-tracking branch 'origin/master' 2021-08-05 22:33:54 +02:00
jespergravgaard
dddf6db181 Added support for int main(int argc, char **argv). Closes #562 2021-08-05 22:33:46 +02:00
jespergravgaard
45410860ad Added a few missing fragments. 2021-08-05 16:29:34 +02:00
jespergravgaard
e58bff087e Fixed problem with escaping double quotes correctly in chars. Closes #645 2021-08-05 12:17:40 +02:00
jespergravgaard
8c83c21a0f Added support for character escape sequence '\\'. Closes #504 2021-08-04 17:08:40 +02:00
jespergravgaard
66b73ddd56 Added support for character escape sequence '\0'. Closes #642 2021-08-04 16:50:51 +02:00
jespergravgaard
3757733876 Added support for structs larger than 256 bytes. sizeof() now also changes to word when >256 bytes. Added some memcpy/memset fragmenst for large structs. Closes #588 2021-08-03 01:52:06 +02:00
jespergravgaard
7493c4041c Updated fragment caches. 2021-08-03 00:42:42 +02:00
jespergravgaard
3d7e569820 Updated fragment caches. 2021-08-03 00:42:33 +02:00
jespergravgaard
e3fdefd2ae Added missing fragments. 2021-08-03 00:38:16 +02:00