1
0
mirror of https://github.com/KarolS/millfork.git synced 2024-12-24 15:29:23 +00:00
Commit Graph

110 Commits

Author SHA1 Message Date
Karol Stasiak
51a4fe5859 More pointer space for C64/C128 2018-02-27 11:58:18 +01:00
Karol Stasiak
ee18fecedf Optimize variables only written once 2018-02-27 01:20:42 +01:00
Karol Stasiak
747925f8fd Added new -O1 optimization preset 2018-02-26 17:57:16 +01:00
Karol Stasiak
a2b6a392a5 Lazy flow analysis 2018-02-26 17:12:12 +01:00
Karol Stasiak
b9eb59ad51 Replace pointless LAX and ANC with their legal equivalents 2018-02-26 16:45:01 +01:00
Karol Stasiak
0f354d2f14 Fix for a bug in the variable-to-register optimization 2018-02-26 16:44:28 +01:00
Karol Stasiak
3c3ac9d70e Simple loop unrolling; --blast-processing command line option 2018-02-26 12:22:10 +01:00
Karol Stasiak
6f9ee33514 Added -Of and -Os command line options 2018-02-26 02:41:18 +01:00
Karol Stasiak
42818df340 Updated changelog 2018-02-26 01:20:50 +01:00
Karol Stasiak
7b480ea876 Even more optimizations 2018-02-26 01:07:23 +01:00
Karol Stasiak
03c400a356 More diagnostic messages after compilation 2018-02-26 01:06:09 +01:00
Karol Stasiak
7cd13332a3 More optimizations using illegal opcodes 2018-02-25 00:46:21 +01:00
Karol Stasiak
6dd4a0c5ce Smarter reverse flow analyser 2018-02-25 00:45:46 +01:00
Karol Stasiak
fa56d31cb4 Fixes for pointee incrementing and decimal addition 2018-02-25 00:45:25 +01:00
Karol Stasiak
8d482ca8bf .ini parsing fix 2018-02-25 00:43:31 +01:00
Karol Stasiak
ca6534c3a7 Fix for common index subexpression elimination optimization 2018-02-22 13:36:56 +01:00
Karol Stasiak
9f54a4d111 Macros should also accept indexed expressions as actual params 2018-02-22 13:36:19 +01:00
Karol Stasiak
d6f38ba87b More optimizations 2018-02-14 22:50:34 +01:00
Karol Stasiak
54e7139e84 Refactoring 2018-02-11 18:55:21 +01:00
Karol Stasiak
2665f18c77 Macro expansion fix, improved constant folding 2018-02-03 17:49:29 +01:00
Karol Stasiak
0ca1be0c00 Tons of things:
– changed `inline` to `macro`
– added support for parameters for macros written in Millfork
– added `inline`, `noinline`, `register` hints
– added <<<< operator
– pointer dereference expressions are now supported more widely
– C64 library fixes
– added `-O1` command line option as an alias for `-O`
2018-02-01 22:39:38 +01:00
Karol Stasiak
c599db0068 Inline assembly improvements 2018-02-01 00:22:53 +01:00
Karol Stasiak
9410b8f9e3 Interrupt handler optimization 2018-01-31 22:27:11 +01:00
Karol Stasiak
341466b198 Decimal multiplication, decimal right shift fixes 2018-01-31 22:26:20 +01:00
Karol Stasiak
fdcf3dc8c8 Typo fixes 2018-01-31 22:25:06 +01:00
Karol Stasiak
f7247ab7d8 Fixed some typos 2018-01-30 17:43:18 +01:00
Karol Stasiak
c26d36f974 Added return dispatch statements. 2018-01-30 17:38:32 +01:00
Karol Stasiak
ac51bcaf6c Optimizing pointless sign extensions 2018-01-30 17:37:37 +01:00
Karol Stasiak
49d126ffa0 RLE decoding test 2018-01-29 12:08:44 +01:00
Karol Stasiak
7bbf655e6f Optimization bugfixes 2018-01-29 12:08:21 +01:00
Karol Stasiak
17920cee26 Zeropage variable optimizations 2018-01-29 11:55:15 +01:00
Karol Stasiak
50d4823e0a Switching to snapshot versioning 2018-01-29 11:49:42 +01:00
Karol Stasiak
9f57c88473 Version 0.1 2018-01-24 17:47:20 +01:00
Karol Stasiak
7e46c4457a
Minor change to examples description 2018-01-23 14:24:12 +01:00
Karol Stasiak
c7f45ebddc Preliminary Apple II support 2018-01-23 13:37:03 +01:00
Karol Stasiak
f870a0c381 Readme update 2018-01-21 21:55:44 +01:00
Karol Stasiak
e67109a2f8 Rasterbar and softscroll examples 2018-01-21 21:55:01 +01:00
Karol Stasiak
c5d4665c92 Inlining variables into accumulator; flag behaviour preservation when inlining variables 2018-01-21 21:54:37 +01:00
Karol Stasiak
7c4570766a More loop-related optimizations 2018-01-21 21:06:28 +01:00
Karol Stasiak
d29eb6e177 Logo 2018-01-21 01:24:56 +01:00
Karol Stasiak
6ad022782b Release package should contain a license 2018-01-20 23:50:08 +01:00
Karol Stasiak
474639760a Release package building script 2018-01-20 23:32:34 +01:00
Karol Stasiak
5d6be83499 Fix tests running in headless JVMs 2018-01-20 22:43:12 +01:00
Karol Stasiak
4e80236a65 For-to loop fixes 2018-01-20 22:32:57 +01:00
Karol Stasiak
c8c6ec83fc New examples: echo.mfk and calculator.mfk 2018-01-20 22:10:04 +01:00
Karol Stasiak
6f2a157de0 More C64 I/O routines 2018-01-20 22:03:56 +01:00
Karol Stasiak
430051635d Tail-call optimization shouldn't move discard pseudoinstructions 2018-01-20 22:03:19 +01:00
Karol Stasiak
7e04312462 More optimizations 2018-01-20 20:00:51 +01:00
Karol Stasiak
91acbfae2f Using short jumps whenever possible 2018-01-20 18:51:49 +01:00
Karol Stasiak
8d818f7624 Early name check improvements 2018-01-20 02:12:12 +01:00