Commit Graph

702 Commits

Author SHA1 Message Date
drmortalwombat f590284ae2 Fix volatile code movement 2023-03-14 20:32:32 +01:00
drmortalwombat 11c624fb4a Optimize loops with shift 2023-03-14 17:49:17 +01:00
drmortalwombat 175520c885 Optimize pointer forwarding with striped addressing 2023-03-14 16:23:37 +01:00
drmortalwombat 83869ad3a0 Shortcut redundant conditional branch sequences 2023-03-13 22:13:02 +01:00
drmortalwombat 718d3ad940 Bump version number 2023-03-12 22:47:19 +01:00
drmortalwombat ecd0fbd364 Fix over eager loop load/store optimizations for values needed after loop 2023-03-12 20:27:00 +01:00
drmortalwombat 7d6f637948 Fix broken volatile check in (),y 2023-03-11 11:29:35 +01:00
drmortalwombat aed086bdb9 Add rom mappers to NES target 2023-03-11 11:01:11 +01:00
drmortalwombat 868564ff08 Add -v3 option for call graph data, change some function in neslib to inline 2023-03-10 17:08:22 +01:00
drmortalwombat 5bd4f4e9a5 Add local labels to listings 2023-03-09 21:04:56 +01:00
drmortalwombat efff725745 Improve labels in disassembler listing, add mlb file for nes 2023-03-09 19:29:46 +01:00
drmortalwombat 2959016496 Fix movement of accu train across JSR that uses the same register 2023-03-09 16:25:51 +01:00
drmortalwombat 30680777f3 Fix neslib oam_spr functions 2023-03-09 14:08:59 +01:00
drmortalwombat dd6f1e0cb6 Fix const cast of functions to void * in struct inits 2023-03-08 20:26:46 +01:00
drmortalwombat 905afd6451 Fix preprocessor concat with macro argument 2023-03-08 18:39:40 +01:00
drmortalwombat 4f89ad7680 Add support for Atari 8 bit systems 2023-03-08 15:51:27 +01:00
drmortalwombat 0f4f0ed297 Improve compiler speed 2023-03-08 08:37:43 +01:00
drmortalwombat be15913bd0 Bump version number 2023-03-07 19:18:33 +01:00
drmortalwombat c3977627e9 Fix calling __interrupt function from __interrupt function 2023-03-07 08:27:54 +01:00
drmortalwombat 9662f5e69f Loop counter depend index optimizations for small xy loops 2023-03-06 20:34:02 +01:00
drmortalwombat e1606ab6e7 Bump version number 2023-03-05 22:11:28 +01:00
drmortalwombat 9bd7b5cd48 Add device libraries for various C computers 2023-03-05 15:13:02 +01:00
drmortalwombat 6189e0cc49 Prepare NES machine type 2023-03-04 14:07:34 +01:00
drmortalwombat f34aa2dcbe Prepare support for VIC20 and C128 2023-03-02 20:19:47 +01:00
drmortalwombat e09361295e Relax zero page value forwarding intersection rules 2023-03-01 18:43:35 +01:00
drmortalwombat df89082846 Track state of fast call parameters across function calls to avoid duplicate push 2023-03-01 08:49:51 +01:00
drmortalwombat 49bfd63033 Bump version number 2023-02-27 15:41:37 +01:00
drmortalwombat 096d9efcd9 Fix over eager taxa range reduction 2023-02-27 15:38:19 +01:00
drmortalwombat 1b31742d3b Bump version number 2023-02-26 15:14:25 +01:00
drmortalwombat 797e235056 Small loop accu optimizations 2023-02-26 15:11:37 +01:00
drmortalwombat 4117c9a553 More functions for reu library 2023-02-25 21:02:06 +01:00
drmortalwombat 0bb470939f Add reu library 2023-02-23 14:19:18 +01:00
drmortalwombat 153c0ef4fa Short loop optimizations 2023-02-22 22:43:35 +01:00
drmortalwombat cddfa5c95f Bump version number 2023-02-20 08:30:04 +01:00
drmortalwombat a91112c05c Pointer in loop optimizations 2023-02-19 18:07:25 +01:00
drmortalwombat 347c336b09 Optimize X vs. Y usage for indexed increment 2023-02-15 22:03:04 +01:00
drmortalwombat 23091a0536 Combining consecutive pointer arithmetic 2023-02-12 20:09:02 +01:00
drmortalwombat 71a071fea4 Loop direction inversion for simple counts 2023-02-11 10:36:46 +01:00
drmortalwombat acbd70a84f Fix XY register propagation for incomming fast parameters 2023-02-10 18:10:41 +01:00
drmortalwombat 5852ca5aea Shortcut conditional branch blocks in intermediate code 2023-02-08 08:51:58 +01:00
drmortalwombat 115b34626e More XY register cross block optimizations 2023-02-07 16:37:41 +01:00
drmortalwombat ff26dffada Optimize alternate XY cross block register use 2023-02-05 12:30:18 +01:00
drmortalwombat 932a65be8c Optimize cross block XY register usage 2023-02-02 20:10:35 +01:00
drmortalwombat d15fd8a451 Fix over eager cross block zp move 2023-01-30 19:27:09 +01:00
drmortalwombat e624011415 Fix crash when compiling address of structs in constants 2023-01-29 10:17:36 +01:00
drmortalwombat dbd0fb6a56 Fix propagate of compare result over potential dual entry empty basic block 2023-01-22 15:18:07 +01:00
drmortalwombat 946b1fe53d Add mouse library 2023-01-22 11:01:03 +01:00
drmortalwombat 0fae7abd72 Optimize simple inline assembler code 2023-01-21 22:41:13 +01:00
drmortalwombat 677de2508b Shuffle temp moves to avoid duplicates 2023-01-21 08:42:22 +01:00
drmortalwombat 16faec8627 Fix loop exit condition broken by Y register lifting 2023-01-19 20:28:02 +01:00