jespergravgaard
|
0f5d8f906b
|
Added support for comma-expressions (and fixed non-working unused variable elimination). Closes #157
|
2019-04-15 14:03:50 +02:00 |
|
jespergravgaard
|
f5afa992c1
|
Updated testdata.
|
2019-04-15 11:53:07 +02:00 |
|
jespergravgaard
|
aecf1ea7b2
|
Optimized unrolled plasma to ~16.500 cycles per screen.
|
2019-04-15 11:31:15 +02:00 |
|
jespergravgaard
|
8234877eeb
|
Fixed error where classic for() failed when init was empty. Closes #163
|
2019-04-15 10:44:18 +02:00 |
|
jespergravgaard
|
50c54e2d36
|
Fixed error where classic for() failed when increment was empty. Closes #160
|
2019-04-15 10:37:00 +02:00 |
|
jespergravgaard
|
21f65d7ddf
|
Rewrote many example routines to use multiply/divide instead of shifts.
|
2019-04-15 10:20:55 +02:00 |
|
jespergravgaard
|
056289aaaf
|
Rewrote d018/dd00 routines to use multiply/divide.
|
2019-04-15 09:54:48 +02:00 |
|
jespergravgaard
|
dfe6663082
|
Added handling of *1 / /1.
|
2019-04-15 09:44:32 +02:00 |
|
jespergravgaard
|
38d67ea581
|
Merge remote-tracking branch 'origin/master'
|
2019-04-15 09:33:59 +02:00 |
|
jespergravgaard
|
5f1496e33d
|
Implemented rewriting of multiply/divide by powers of 2 to shifts. Closes #165
|
2019-04-15 09:33:49 +02:00 |
|
Jesper Gravgaard
|
dd99f73b8e
|
Merge remote-tracking branch 'origin/master'
|
2019-04-11 22:24:25 +02:00 |
|
Jesper Gravgaard
|
c8cfb3406c
|
Changed comparison rewriting to only rewrite when comparing to bytes (not words).
|
2019-04-11 22:24:07 +02:00 |
|
jespergravgaard
|
c61b1556cd
|
Optimized imports etc.
|
2019-04-11 21:17:43 +02:00 |
|
Travis Fisher
|
c9cce92509
|
make live range analysis use statement index instead of statement where it helps with speed
|
2019-04-11 00:14:31 -04:00 |
|
Travis Fisher
|
b81349b3de
|
make StatementInfos map control flow block objects instead of labelRef's (~5% compiler speedup)
|
2019-04-10 22:22:17 -04:00 |
|
Travis Fisher
|
1f54a91463
|
use static array of short number strings (~3% test speedup)
|
2019-04-10 19:47:54 -04:00 |
|
Jesper Gravgaard
|
97f88fb128
|
Fixed comparison optimization to ignore 0
|
2019-04-10 16:06:03 +02:00 |
|
Jesper Gravgaard
|
15acdc3752
|
Merged with master.
|
2019-04-10 13:52:57 +02:00 |
|
Jesper Gravgaard
|
070fb7937d
|
Implemented comparison rewriting optimization.
|
2019-04-10 11:12:49 +02:00 |
|
jespergravgaard
|
c9768022af
|
Optimized unrolled plasma more by moving x-value lookup outside the unrolled loop.
|
2019-04-10 08:27:36 +02:00 |
|
Travis Fisher
|
073845093b
|
store symbol full names instead of constructing on demand. (~5% overall compiler speed improvement)
|
2019-04-09 23:09:42 -04:00 |
|
jespergravgaard
|
fa2024296b
|
Added more pointer cast tests
|
2019-04-09 22:58:42 +02:00 |
|
jespergravgaard
|
9a707c250e
|
Added pointer cast test
|
2019-04-09 21:30:21 +02:00 |
|
jespergravgaard
|
82b394a80f
|
Minor syntax changes.
|
2019-04-09 01:40:38 +02:00 |
|
jespergravgaard
|
23e3533064
|
Merged Travis Fishers upstream optimizations. Closes #92
|
2019-04-09 01:22:47 +02:00 |
|
jespergravgaard
|
bce68180ef
|
Merge branch 'master' of https://gitlab.com/tfisher98/kickc
|
2019-04-09 00:59:19 +02:00 |
|
jespergravgaard
|
756d5c22d5
|
Strings zer now zero-terminated by default. To avoid zero-termination use suffix z - eg. "qwe"z is not zero-terminiated. Closes #137
|
2019-04-09 00:51:53 +02:00 |
|
Travis Fisher
|
7454027829
|
update reference results
|
2019-04-08 18:25:03 -04:00 |
|
Travis Fisher
|
0bc03ffdb0
|
add deep nesting test program
|
2019-04-08 18:05:25 -04:00 |
|
Travis Fisher
|
68a737cf0f
|
Merge branch 'master' of https://gitlab.com/camelot/kickc
|
2019-04-08 17:31:16 -04:00 |
|
jespergravgaard
|
c3849c78b0
|
Added support for void parameter lists. Closes #161
|
2019-04-08 23:27:05 +02:00 |
|
jespergravgaard
|
9a9e4f456e
|
Added more fragments.
|
2019-04-08 21:25:54 +02:00 |
|
jespergravgaard
|
44a5f66a7c
|
Added fire sample from CC65. (~100.000 cycles per update in KickC vs ~300.000 in CC65). Fixed tests. Added some signed fragments.
|
2019-04-08 20:54:23 +02:00 |
|
jespergravgaard
|
b2a0b629e3
|
Changed plasma routines to use standard C types.
|
2019-04-08 16:33:52 +02:00 |
|
jespergravgaard
|
63f10a28de
|
Added support for standard C types (char, short, int, long). Closes #108
|
2019-04-08 16:26:39 +02:00 |
|
jespergravgaard
|
c613edf2b2
|
Updated test data.
|
2019-04-08 09:12:00 +02:00 |
|
jespergravgaard
|
41029fec17
|
Added plasma with unrolled inner loop for ~50fps.
|
2019-04-08 09:00:48 +02:00 |
|
Travis Fisher
|
47d2f74690
|
put caches associated to pass n variable reference infos back out of control flow block class
|
2019-04-08 01:16:31 -04:00 |
|
Travis Fisher
|
b7b01a89a8
|
speed improvement in pass n variable reference infos
|
2019-04-07 23:57:38 -04:00 |
|
Travis Fisher
|
7393d095b9
|
speed improvement in pass n variable reference infos
|
2019-04-07 23:09:50 -04:00 |
|
jespergravgaard
|
7b23951eb2
|
Fixed tests after adding fragment.
|
2019-04-08 01:42:00 +02:00 |
|
jespergravgaard
|
35659a67be
|
Ported plasma sample from CC65 to KickC.
|
2019-04-08 00:44:09 +02:00 |
|
Travis Fisher
|
2ee07b0806
|
store compiled regexes for speed
|
2019-04-07 16:05:34 -04:00 |
|
jespergravgaard
|
23b1f15101
|
Added support for more complex ternary expressions.
|
2019-04-07 18:35:50 +02:00 |
|
jespergravgaard
|
67b97130b7
|
Implemented ternary operator. Closes #77
|
2019-04-07 17:59:44 +02:00 |
|
jespergravgaard
|
e1cf957b2f
|
Pointers to pointers working. Closes #156
|
2019-04-07 13:35:23 +02:00 |
|
jespergravgaard
|
a334855da8
|
Pointers to noargs functions working pretty well. Closes #120
|
2019-04-07 11:08:39 +02:00 |
|
jespergravgaard
|
ca9453346b
|
Added missing RTS after jsr main
|
2019-04-06 11:53:56 +02:00 |
|
Travis Fisher
|
d3b4e895dc
|
use cheaper hash function for speed improvement
|
2019-04-04 21:47:37 -04:00 |
|
jespergravgaard
|
9ccc5d828f
|
Improved pointer-to-pointer functionality significantly.
|
2019-04-05 01:05:15 +02:00 |
|