1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2025-02-27 01:29:37 +00:00

478 Commits

Author SHA1 Message Date
jespergravgaard
8adbdd59e4 Fixed test 2018-10-17 23:23:54 +02:00
jespergravgaard
fabc107cd1 Merge remote-tracking branch 'origin/master' 2018-10-17 23:01:24 +02:00
jespergravgaard
5050452e23 Fixed infinite loop during optimization when aliase candidates end up with one single element. 2018-10-17 23:00:54 +02:00
Jesper Gravgaard
688df931f0 Working 16bit signed fast multiplication - with test. 2018-10-17 13:42:52 +02:00
jespergravgaard
0b4cb53d07 Added signed fast 16bit multiply. 2018-10-17 12:11:42 +02:00
jespergravgaard
e9892219b6 Added fast 16bit unsigned multiplication. 2018-10-17 01:40:56 +02:00
Jesper Gravgaard
75b923e11e Fixinf windows newlines in fragments 2018-10-07 12:03:45 +02:00
Jesper Gravgaard
7d2c09ea68 Fixed Win/Linux difference for fragment test 2018-10-07 11:36:52 +02:00
Jesper Gravgaard
287ffb46ed Some test work 2018-10-07 03:10:48 +02:00
Jesper Gravgaard
2b5f6b8856 Rearraning source files to bring KC/REF and fragment files out of the JARS. 2018-10-07 02:32:09 +02:00
jespergravgaard
4373150634 Reinstated tests. 2018-10-02 02:14:12 +02:00
jespergravgaard
32d224589a Added kickc.sh executor and examples of kickc code to release. 2018-10-01 01:15:00 +02:00
jespergravgaard
66b1249336 Refactored to a single CI task - with a single artifact 2018-09-30 15:51:15 +02:00
Jesper Gravgaard
84c2e54085 Hoping to create beter release ZIP 2018-09-29 12:24:57 +02:00
jespergravgaard
fcd3902090 Added test for default interrupt type (KERNEL_MIN). 2018-09-26 22:44:40 +02:00
jespergravgaard
c70801ee85 Added option for controlling uplift combinations. 2018-09-26 22:01:15 +02:00
jespergravgaard
7cecb2fb71 Added rudimentary bitwise not. 2018-09-13 12:08:11 +02:00
jespergravgaard
9816e4cba1 Fixed test 2018-09-01 00:03:45 +02:00
jespergravgaard
e335a956e7 Added inline hello world 2 2018-08-31 23:43:37 +02:00
jespergravgaard
17ad45d453 Moved some KC-files to stdlib. Added option for multiple include paths. 2018-08-31 22:52:10 +02:00
jespergravgaard
8efb7f9f2f Added example of (non-working) calls inside unrolled loop.
Refactored hyperscreen to use c64.kc.
2018-08-23 22:14:39 +02:00
jespergravgaard
6dca0ada51 Added few comments and a few new constants 2018-08-23 00:35:19 +02:00
jespergravgaard
63badba136 Removed a bit more logging. 2018-08-23 00:24:33 +02:00
jespergravgaard
2c6fab8fe4 Removed a bit more logging. 2018-08-22 22:38:40 +02:00
jespergravgaard
126c8f6e0d Added detection of non-constant loops. 2018-08-22 22:23:43 +02:00
jespergravgaard
a223abdf6e Now also simplifying +0 and *0 in constant values. 2018-08-22 12:40:19 +02:00
jespergravgaard
105510a9ae Now consolidating constant integer increments eliminating xx+1+1+1 expressions in the output. 2018-08-22 11:36:38 +02:00
jespergravgaard
42bc31126a Decreased default logging. 2018-08-22 11:10:10 +02:00
jespergravgaard
2a5cdfb064 A bit more inlining 2018-08-22 10:17:58 +02:00
jespergravgaard
5fe09eefde Fixed test ref (and added failing infinite unroll loop) 2018-08-22 02:45:38 +02:00
jespergravgaard
a78960a823 Using loop unrolling in logo scroller. 2018-08-22 02:34:03 +02:00
jespergravgaard
1d339804da Added a double unroll loop 2018-08-22 02:19:27 +02:00
jespergravgaard
be18a84d98 Working loop unrolling! There are probably still a lot of non-working cases - and the lack of loop unroll limit will definitely cause infinite loops. 2018-08-22 01:42:00 +02:00
jespergravgaard
b19bf2246e Created "loop-unroll" branch. 2018-08-19 21:48:26 +02:00
jespergravgaard
a87da922f8 Centralized getting all entry point blocks in the program into ControlFlowGraph 2018-08-12 01:03:44 +02:00
Jesper Gravgaard
75a8749db4 Moved interrrupt registers into c64.kc 2018-08-11 12:04:52 +02:00
Jesper Gravgaard
129de6c3ec Refactored most casts to pointers to use the generic OperatorCastPtr. 2018-08-11 11:30:19 +02:00
Jesper Gravgaard
fe7950798e Added call-graph recursion in clobber-analysis for interrupt hardware clobber. 2018-08-11 11:08:43 +02:00
jespergravgaard
9a9eeec129 Fixed tests. 2018-08-11 00:52:02 +02:00
jespergravgaard
f33d7018ba Implemented clobber analysis to ensure that hardware clobber interrupts only save the registers clobbered. 2018-08-11 00:48:15 +02:00
jespergravgaard
9ef574f32d Fixed tests 2018-08-10 20:33:17 +02:00
jespergravgaard
df224c70b6 Fixed tests 2018-08-10 20:32:45 +02:00
jespergravgaard
f8ec74dc14 Implemented hardware & kernel interrupt types. 2018-08-10 12:46:44 +02:00
jespergravgaard
6a20fc33c7 Improved comments 2018-08-06 00:41:29 +02:00
jespergravgaard
044282e523 Added 2 Raster IRQ tests. 2018-08-06 00:37:40 +02:00
jespergravgaard
238cd2a531 Added volatile keyword and initial implementation ensuring that volatiles are not constant-optimized or put into registers. 2018-08-05 22:40:13 +02:00
jespergravgaard
b23029760a IRQ referencing outside const. 2018-08-05 17:50:45 +02:00
jespergravgaard
b8841a90f5 Added forward reference support yo procedure references. 2018-08-05 17:46:42 +02:00
jespergravgaard
b755cd4297 Added interrupt types (kernel, hardware). 2018-08-05 17:28:02 +02:00
Jesper Gravgaard
f463606742 Implemented interrupt procedures and pointers to procedures initial support. 2018-08-05 13:33:23 +02:00