jespergravgaard
|
793a776b04
|
Clean-up of pass 1 log to avoid modifying log-files evey time stdlib is modified.
|
2020-04-25 20:10:49 +02:00 |
|
jespergravgaard
|
6a2937aa29
|
Casts are now inlined during parse - so they can be used for struct unwinding and more. They are then de-inlined around pass 1. This fixes problem with passing struct constructor as parameter to function. Closes #413
|
2020-04-19 11:05:54 +02:00 |
|
jespergravgaard
|
db6f8b5a36
|
Added variable nomodify/volatile information to log.
|
2020-03-29 21:00:25 +02:00 |
|
jespergravgaard
|
ae1536f429
|
Merged simpler live range calculation to master. Improved scope weight calculation to combine call graph depth and loop depth. Added missing fragments.
|
2020-03-23 00:10:07 +01:00 |
|
jespergravgaard
|
6b3b4bec5a
|
Working on live range effective simple. Fixed aliasing and parameters. There is still problems with functions calling functions - such as print_w(), print_sw() and print_char().
|
2020-03-22 22:26:39 +01:00 |
|
jespergravgaard
|
d1ec933032
|
Fixed error in recursive caller code.
|
2020-03-08 23:26:49 +01:00 |
|
jespergravgaard
|
7dacbb2c75
|
Fixed code for __ma.
|
2020-02-15 09:30:27 +01:00 |
|
jespergravgaard
|
7b81b51bc0
|
Rewrote constant identification to allow nested arrays/structs. TODO: function-as-array
|
2020-01-01 18:27:53 +01:00 |
|
jespergravgaard
|
4c443c1034
|
Updated test data.
|
2019-12-21 10:38:44 +01:00 |
|
jespergravgaard
|
ecccf55a08
|
Moving array properties from type to variable. A few tests still failing.
|
2019-11-18 22:02:29 +01:00 |
|
jespergravgaard
|
fa5f96221d
|
Removed inferedType from Variable.
|
2019-11-17 19:58:06 +01:00 |
|
jespergravgaard
|
09c504e693
|
Working on catching all declared constants in parse 0.
|
2019-11-17 01:51:42 +01:00 |
|
jespergravgaard
|
0b477d24ae
|
Identifying declared constants already during Pass0.
|
2019-11-03 17:05:55 +01:00 |
|
jespergravgaard
|
82d3cc7e68
|
Improved ASM name shortening to remove labels representing the same variable with different versions and the same allocation. Closes #209
|
2019-10-20 01:43:51 +02:00 |
|
jespergravgaard
|
85676bc83a
|
Implemented support for fixed address main memory variables using __mem(0x1000) directive.
|
2019-10-14 00:51:19 +02:00 |
|
Jesper Gravgaard
|
70aa2836da
|
Improved printing register ZP.
|
2019-10-12 11:40:36 +02:00 |
|
jespergravgaard
|
bfdd2fb0a5
|
Optimizing constant detection - avoiding versions.
|
2019-09-29 22:36:02 +02:00 |
|
jespergravgaard
|
587027397d
|
Variable storage strategy implementation almost done.
|
2019-09-29 20:57:28 +02:00 |
|
jespergravgaard
|
3aad07f4e1
|
Disabled constant loop head optimization by default (until the two known issues have been fixed.)
|
2019-08-25 22:21:58 +02:00 |
|
Jesper Gravgaard
|
ce5e3cf19a
|
Added constant loop head optimization, that detects when the condition is constant in the first loop iteration. Closes #246
|
2019-08-07 13:22:05 +02:00 |
|
jespergravgaard
|
dacd25ac5f
|
Added constant loop-head detection to a switchable optimization option -Oloophead. #246
Implemented for()-loop condition checking before body. Closes #183
|
2019-08-07 11:27:56 +02:00 |
|
jespergravgaard
|
f8dfe3743b
|
Implemented light-weight zeropage coalesce. Closes #237
|
2019-07-31 13:47:22 +02:00 |
|
Jesper Gravgaard
|
660d2a8979
|
Changed print_cls() to use memset(). Fixed error in fragment.
|
2019-07-18 01:54:16 +02:00 |
|
Jesper Gravgaard
|
9e66c01b6c
|
Changed RADIX enum values.
|
2019-07-17 23:46:07 +02:00 |
|
Jesper Gravgaard
|
31ede3c794
|
Added utoa() implementation handling binary/octal/decimal & hexadecimal.
|
2019-07-17 23:38:09 +02:00 |
|
jespergravgaard
|
a7ac33a653
|
Changed HEAP to grow down from $a000. Fixed inner increment problem. Closes #216
|
2019-07-09 11:40:56 +02:00 |
|
jespergravgaard
|
1d092962b3
|
Added center-based plasma, some fragments and some synth rules.
|
2019-07-07 00:17:00 +02:00 |
|