1
0
mirror of https://github.com/KarolS/millfork.git synced 2024-12-27 19:30:04 +00:00
Commit Graph

1260 Commits

Author SHA1 Message Date
Karol Stasiak
f848bf898c 6502: inline variables to registers swapping addressing modes 2018-12-27 20:49:54 +01:00
Karol Stasiak
46bf726818 Optimize for loops 2018-12-27 20:47:18 +01:00
Karol Stasiak
985663083a 6502: Fix some optimizations 2018-12-27 20:46:58 +01:00
Karol Stasiak
e0cc25c54f Fix syntax colouring 2018-12-27 15:10:21 +01:00
Karol Stasiak
59afc24db6 Fix memset 2018-12-27 14:19:04 +01:00
Karol Stasiak
0ded460840 8080: Test subroutine extraction 2018-12-27 14:18:30 +01:00
Karol Stasiak
9ff254c72d Allow hi() and lo() in inline assembly 2018-12-27 14:17:48 +01:00
Karol Stasiak
4d64bbafac 6502: always fold constants 2018-12-27 14:16:34 +01:00
Karol Stasiak
0843970410 Fix syntax colouring 2018-12-27 14:06:09 +01:00
Karol Stasiak
8cc612976e Fix nonet subtraction warning message 2018-12-27 14:05:38 +01:00
Karol Stasiak
f12463aef0 Optimization refactoring:
– -Of should imply -finline
– certain optimizations should be controllable
– unused global symbols should be removed even if we're not optimizing
2018-12-27 01:18:29 +01:00
Karol Stasiak
b77f9dd5f8 Fix deduplication 2018-12-26 15:28:57 +01:00
Karol Stasiak
0bb662183c Faster comparisons to 0 and $FFFF 2018-12-26 02:05:41 +01:00
Karol Stasiak
9669e4d87d Cache AST typing 2018-12-26 01:26:12 +01:00
Karol Stasiak
bf5639761b Optimize constant comparisons 2018-12-26 01:01:43 +01:00
Karol Stasiak
438d8dbe6e Detection of the default include path. 2018-12-24 02:38:28 +01:00
Karol Stasiak
7bf9616fcb Fix/improve documentation 2018-12-24 01:32:17 +01:00
Karol Stasiak
aebae97cc8 Source file name in preprocessor errors 2018-12-24 01:20:41 +01:00
Karol Stasiak
acaaa5bdfe Implicit ranges in for loops are dumb, remove 2018-12-22 01:30:54 +01:00
Karol Stasiak
84c3406dc7 Fix for over enum 2018-12-22 01:30:39 +01:00
Karol Stasiak
02e91070aa Accept bytes as LHS for >>>> 2018-12-21 22:36:53 +01:00
Karol Stasiak
d62901fb51 6502: Allow more complex expressions 2018-12-21 22:36:29 +01:00
Karol Stasiak
76dd4929a6 6502: Track which pointers need to be on zeropage 2018-12-21 22:36:05 +01:00
Karol Stasiak
36a0065b96 Forbid redefining builtins 2018-12-21 22:35:16 +01:00
Karol Stasiak
e43fb39781 Optimize some stdlib calls 2018-12-21 22:33:27 +01:00
Karol Stasiak
673727b973 Allow empty strings 2018-12-21 22:32:34 +01:00
Karol Stasiak
62575263c2 NEC PC-88: readline 2018-12-20 00:47:42 +01:00
Karol Stasiak
e90483f381 Move hello_world 2018-12-19 22:46:21 +01:00
Karol Stasiak
10492bc534 Updated examples 2018-12-19 22:32:55 +01:00
Karol Stasiak
e13e744167 ZX Spectrum: read_line 2018-12-19 22:30:12 +01:00
Karol Stasiak
98585fcc38 8080: better handling of separate byte pairs 2018-12-19 22:29:49 +01:00
Karol Stasiak
8582f0974d Text codec improvements 2018-12-19 22:27:15 +01:00
Karol Stasiak
60666a6467 8080: Inline assembly fixes 2018-12-19 22:26:57 +01:00
Karol Stasiak
5153bd0551 C264 fixes and improvements 2018-12-19 22:26:10 +01:00
Karol Stasiak
310df1a8de It's Amstrad not Armstrad 2018-12-19 22:21:51 +01:00
Karol Stasiak
e23e9afb86 Update readme and changelog 2018-12-19 19:04:19 +01:00
Karol Stasiak
9f16311aff Preliminary CPC support 2018-12-19 19:02:29 +01:00
Karol Stasiak
05884f2c7b Standard library improvements 2018-12-19 19:01:53 +01:00
Karol Stasiak
30d18fba01 6502: another optimization for comparisons 2018-12-19 18:14:40 +01:00
Karol Stasiak
1e9be50ccb Improve error reporting 2018-12-19 18:14:11 +01:00
Karol Stasiak
960cee5124 Foreach statement; emitting subprocedures 2018-12-19 18:13:38 +01:00
Karol Stasiak
fc10746522 Alias improvements:
– aliases can now override other objects
– take aliases into account when ordering functions for optimizations and inlining
2018-12-19 17:33:51 +01:00
Karol Stasiak
49ee0fd3a2 MInor test suite improvements 2018-12-19 17:28:15 +01:00
Karol Stasiak
0b90addc9a Remove debugging code 2018-12-19 01:30:20 +01:00
Karol Stasiak
1de6f8b75c Do not emit unused runtime objects 2018-12-19 01:16:04 +01:00
Karol Stasiak
cfac41bc3b Perhaps true should be 1? 2018-12-19 01:14:53 +01:00
Karol Stasiak
39a9cde375 Enums cant have more than 256 items 2018-12-19 01:14:02 +01:00
Karol Stasiak
1b8a7c9bb3 8080: Don't stash known constants on stack 2018-12-19 01:13:37 +01:00
Karol Stasiak
735d6c4169 6502: Use colons in assembly labels 2018-12-19 01:12:55 +01:00
Karol Stasiak
453011fb6b 6502: Smarter inlining of variables into A 2018-12-19 01:12:14 +01:00