jespergravgaard
|
613322153e
|
Added synthesis rules suggested by Travis Fisher allowing synthesis of pbuc1_derefidx_vbuxx / pbuc1_derefidx_vbuyy also when C1 is used elsewhere in the fragment.
|
2019-03-31 17:35:16 +02:00 |
|
jespergravgaard
|
d13ca4e03b
|
Implemented block label renumbering ensuring generated ASM labels are slightly more sensible to the reader.
|
2019-03-31 17:10:43 +02:00 |
|
jespergravgaard
|
126813ff4e
|
Implemented local scopes for blocks - enabling reuse of variable names (for instance in for loops). Closes #64
|
2019-03-30 00:15:53 +01:00 |
|
jespergravgaard
|
825e60ed62
|
Shortcut the callgraph thread analysis when max 1 thread in the entire program.
|
2019-03-29 20:58:48 +01:00 |
|
jespergravgaard
|
7fcb6e525a
|
Fixed problem where zeropage allocations inside IRQ and outside could overlap. Closes #154
|
2019-03-29 08:01:02 +01:00 |
|
jespergravgaard
|
c81147f60f
|
Fixed problem with volatile booleans being allocated to registers. Closes #153
|
2019-03-27 22:54:01 +01:00 |
|
jespergravgaard
|
c696d9610e
|
Added parenthesis to negative immediates to AXS.
|
2019-03-27 07:47:31 +01:00 |
|
jespergravgaard
|
667cbde56f
|
Added a lot of optimizing fragments using illegal opcodes (Thanks Travis Fisher!)
Added synth rule for vubc's.Updated tests.
|
2019-03-26 23:49:45 +01:00 |
|
jespergravgaard
|
0993be3f01
|
Added example of music routines.
|
2019-03-26 21:27:36 +01:00 |
|
jespergravgaard
|
022d77fc56
|
Implemented early constant identification to avoid unnecessary variable versioning. Closes #53
|
2019-03-22 19:50:20 +01:00 |
|
jespergravgaard
|
c280a3b14a
|
Fixed NPE when using booleans in if()/while(). Closes #152
|
2019-03-22 07:25:55 +01:00 |
|
jespergravgaard
|
4ad601ce72
|
Added fragment for subtracting unsigned byte from signed word.
|
2019-03-21 22:24:39 +01:00 |
|
jespergravgaard
|
8e2de5f79b
|
Updated fragment tests
|
2019-03-20 21:45:30 +01:00 |
|
Jesper Gravgaard
|
2989f16593
|
Added synthesis for using X/Y registers as intermediates when encountering pb.c1_derefidx_vbuyy/xx.
|
2019-03-20 17:09:22 +01:00 |
|
jespergravgaard
|
e48a4538bc
|
Added updated reference manual.
|
2019-03-20 08:05:49 +01:00 |
|
jespergravgaard
|
9a50e54928
|
Fixed optimization of constant addition in double array indexing. Closes #150
|
2019-03-20 07:20:00 +01:00 |
|
jespergravgaard
|
5791875d2d
|
Added clobber directive to inline kickasm.
|
2019-03-19 07:48:16 +01:00 |
|
jespergravgaard
|
f67a5bc897
|
Added clobber handling to inline ASM. Added clobbers directive to specify what is clobbered. If inline ASM has a JSR and no clobbers directive all registers are assumed to be clobbered. Closes #5
|
2019-03-18 20:54:08 +01:00 |
|
jespergravgaard
|
5cf5d88228
|
Implemented handling of default successor PHI blocks in logical or if()'s. Closes #149
|
2019-03-18 18:25:50 +01:00 |
|
jespergravgaard
|
ff716c0343
|
Implemented handling of deafult successor PHI blocks in
|
2019-03-18 18:24:03 +01:00 |
|
jespergravgaard
|
651bd87eaa
|
Fixed test
|
2019-03-18 02:26:13 +01:00 |
|
jespergravgaard
|
ca697a4ffd
|
Improved a plus fragment to use bcc
|
2019-03-18 02:23:29 +01:00 |
|
jespergravgaard
|
9bb967b33f
|
Implemented ASM fragment synthesis variations searching - looking through different potential fragments when generating ASM containing a constant number that matches multiple potential types.
|
2019-03-18 02:08:32 +01:00 |
|
jespergravgaard
|
d459332be1
|
Updated tests with better ASM
|
2019-03-17 22:52:25 +01:00 |
|
jespergravgaard
|
93d36f25be
|
Updated tests with better ASM
|
2019-03-17 22:49:02 +01:00 |
|
Jesper Gravgaard
|
dc76b2bed0
|
Added a lot of signed word and boolean fragments from Travis Fisher.
|
2019-03-16 17:54:38 +01:00 |
|
Jesper Gravgaard
|
ba560796dd
|
Added uses directive to inline kickasm to allow declaring used constants to prevent that they are optimized away as unused. Closes #147
|
2019-03-16 00:33:16 +01:00 |
|
jespergravgaard
|
f6dd66f3cb
|
Added support for cross-scope references inside inline ASM.
|
2019-03-15 07:59:25 +01:00 |
|
jespergravgaard
|
71743540c6
|
Added support for non-multi labels within inline ASM.
|
2019-03-15 00:30:14 +01:00 |
|
jespergravgaard
|
b4ccdef0f0
|
Problem with constant if() has been fixed!
|
2019-03-15 00:13:24 +01:00 |
|
jespergravgaard
|
4eed4f7659
|
Implemented proper handling of referenced to constants inside inline ASM. Closes #146
|
2019-03-15 00:02:33 +01:00 |
|
jespergravgaard
|
d293c47141
|
Added tests for inline assembler & kickassembler.
|
2019-03-14 23:09:50 +01:00 |
|
jespergravgaard
|
fa6ed8bff6
|
Improved compiler errors - removing exception trace and using proper exit code.
|
2019-03-12 18:14:45 +01:00 |
|
jespergravgaard
|
6adb0c6d2d
|
Improved verbosity for fragment debug output.
|
2019-03-12 17:59:35 +01:00 |
|
jespergravgaard
|
ad6a1910c8
|
Added another 2 word fragments. Added compiler commandline option to show fragment -fragment <signature>. Closes #145
|
2019-03-12 17:53:33 +01:00 |
|
Jesper Gravgaard
|
ea98c9e2eb
|
Added two additional signed word fragments.
|
2019-03-11 11:09:12 +01:00 |
|
jespergravgaard
|
8a560a294b
|
Added two missing signed word fragments.
|
2019-03-11 07:49:41 +01:00 |
|
jespergravgaard
|
3090fe4849
|
Added missing line number to error when encountering symbol that has already been declared.
|
2019-03-10 09:29:02 +01:00 |
|
jespergravgaard
|
241f8bec4d
|
Added two missing fragments and a test.
|
2019-03-10 08:24:30 +01:00 |
|
jespergravgaard
|
c2fb30a776
|
Limited fragment testing to speed it up.
|
2019-03-10 07:57:11 +01:00 |
|
jespergravgaard
|
b04edfb241
|
Added needed synthesis rules.
|
2019-03-10 01:44:47 +01:00 |
|
jespergravgaard
|
c89b4bc6b0
|
Removed rules slowing down the fragment synthesizer awaiting improvements to the synthesizer.
|
2019-03-10 01:14:35 +01:00 |
|
jespergravgaard
|
6bc35f6c34
|
Restructured fragment tests to use less memory.
|
2019-03-09 23:50:50 +01:00 |
|
jespergravgaard
|
980fc0aeb5
|
Working to improve fragment synthesis.
|
2019-03-09 20:58:51 +01:00 |
|
jespergravgaard
|
5a83c1b357
|
Fixed clobber problem that can occur during PHI transitions. Closes #10
|
2019-03-09 18:37:23 +01:00 |
|
jespergravgaard
|
4d8e083a21
|
Improved fragment synthesis of p..z1_deref_vbuaa=... to use TAY when possible.
|
2019-03-09 16:39:24 +01:00 |
|
jespergravgaard
|
a65404d7b6
|
Fixed signed word comparisons. Added tests of word comparisons. Improved fragment synthesis of p..z1_deref_vbuaa=... / p..z1_deref_vbuxx=...
|
2019-03-09 16:24:44 +01:00 |
|
jespergravgaard
|
cb8018b92a
|
Added missing word fragments. Added test of unsigned word comparisons.
|
2019-03-09 14:24:51 +01:00 |
|
jespergravgaard
|
c59f18eb82
|
Added two missing word fragments.
|
2019-03-08 22:00:28 +01:00 |
|
jespergravgaard
|
183494e141
|
Fixed infinite compiler loop when complex loops contain &&. Closes #144
|
2019-03-08 21:43:37 +01:00 |
|