Commit Graph

236 Commits

Author SHA1 Message Date
drmortalwombat 77010a0ab2 Fix propagation of volatile memory reads in loops 2022-10-15 17:44:49 +02:00
drmortalwombat 4a49456a57 Improve accu train movement 2022-10-09 13:44:59 +02:00
drmortalwombat bd32b38027 Preserve X or Y cross conditions 2022-10-08 11:34:42 +02:00
drmortalwombat 571d60cbb7 Bump version number 2022-10-03 19:41:22 +02:00
drmortalwombat 27a227501a Bump version number 2022-09-29 15:40:22 +02:00
drmortalwombat 121f0476e1 Bump version number 2022-09-24 14:31:09 +02:00
drmortalwombat d1c22573da Bump version number 2022-09-17 23:03:44 +02:00
drmortalwombat 03b5a0655a Bump version number 2022-09-13 22:10:58 +02:00
drmortalwombat 38fab44cca Dump cartridge bank usage to map file 2022-09-13 09:55:38 +02:00
drmortalwombat 612e88456c Bump version number 2022-09-10 16:56:49 +02:00
drmortalwombat 9f1205a6cd bump version number 2022-08-27 22:33:34 +02:00
drmortalwombat da2c0b44ad Bump version number 2022-08-25 18:51:27 +02:00
drmortalwombat 7dd8f4dae3 Fix easyflash placement of auto copied main section 2022-08-25 18:01:58 +02:00
drmortalwombat 4b4c8866dd Optimize multiply of ranges 0..1 2022-08-22 22:00:16 +02:00
drmortalwombat 65fc43c123 More multi path constant folding 2022-08-14 17:52:58 +02:00
drmortalwombat 3d23e7f0b1 Combine partialy constant 16bit adds 2022-08-09 16:39:47 +02:00
drmortalwombat f0deaab394 Add charpad and spritepad import 2022-08-05 18:08:10 +02:00
drmortalwombat ff1377f7bb Optimize simple search loops 2022-07-30 12:36:05 +02:00
drmortalwombat f9f2516a65 Move accu eval trains up to connect them 2022-07-23 14:12:11 +02:00
drmortalwombat 864c8ec9a5 Add samples for 32 and 64 sprite multiplexing 2022-07-18 21:22:12 +02:00
drmortalwombat 0742be3204 Improve dataflow analysis 2022-07-16 14:14:02 +02:00
drmortalwombat 460a1b9d84 Bump version number 2022-07-12 20:07:40 +02:00
drmortalwombat 0bd2ab9e3c Fix global analyzer for global variable arrays of function pointers 2022-07-12 13:08:34 +02:00
drmortalwombat 5f8797b4be Fix regression with open array index by byte generated by a subtract 2022-07-10 10:07:33 +02:00
drmortalwombat 5d51ea13c5 Improve register allocator 2022-07-08 21:30:22 +02:00
drmortalwombat bcc59a9afb Add intermediat code select operator 2022-07-02 14:53:00 +02:00
drmortalwombat fdcaf54666 Add unroll pragma for simple loops 2022-06-30 09:33:11 +02:00
drmortalwombat 350403121d Move load temporary register moves out of loops 2022-06-26 15:15:59 +02:00
drmortalwombat 5dc63248d8 bump version number 2022-06-22 22:23:20 +02:00
drmortalwombat 002c10ad13 Optimize array access and value propagation across simple loops 2022-06-21 20:57:58 +02:00
drmortalwombat 3cdc9032b4 Fix parameter loss in intermediate code branch forwarding 2022-06-19 18:31:07 +02:00
drmortalwombat 657b79cd3f bump version number 2022-06-19 15:25:09 +02:00
drmortalwombat d37980e73c Bump version number 2022-06-12 13:46:19 +02:00
drmortalwombat 05ecc267ef Bump version number 2022-06-06 08:57:17 +02:00
drmortalwombat 0ba2ddf195 Propagate x and y across block boundaries 2022-06-02 22:19:10 +02:00
drmortalwombat a86f5b877a Upstream variant constant propagation 2022-05-29 21:02:57 +02:00
drmortalwombat d833ca6834 Use array of struct assignments for index range validation 2022-05-26 13:55:00 +02:00
drmortalwombat e0f87c676c Eliminate non existing data dependencies 2022-05-21 13:39:12 +02:00
drmortalwombat 9d18aef634 Optimize interval comparison cascades 2022-05-15 22:18:42 +02:00
drmortalwombat 728e707024 Optimize single page 2D array access 2022-05-14 17:57:32 +02:00
drmortalwombat e70162b2cc Forward native code instruction if only used on single outgoing path 2022-05-12 17:55:24 +02:00
drmortalwombat 75e5471dd1 Add support for d64 image creation 2022-05-08 15:37:30 +02:00
drmortalwombat c7de44b015 Optimize signed int with unsigned char comparison 2022-05-08 10:36:02 +02:00
drmortalwombat 29bd0c8d2d Optimizations for global variables 2022-05-07 14:03:56 +02:00
drmortalwombat ea1fa189b2 Add lz compression for embedded assets 2022-05-01 12:55:13 +02:00
drmortalwombat f619c5e0ab More verbose debug output 2022-04-25 07:57:31 +02:00
drmortalwombat 3a689cc7a1 Validate register livetime during peephole optimization 2022-04-23 22:11:25 +02:00
drmortalwombat 4cdc501a34 Bit shift optimizations 2022-04-21 08:26:04 +02:00
drmortalwombat ecb9bbee8a Bump version number 2022-04-17 21:12:54 +02:00
drmortalwombat 72d2fc1fac Reverse integer range limit calculation 2022-04-15 11:06:49 +02:00
drmortalwombat 8f32b87b18 Fix call of function pointers in array 2022-04-13 16:29:36 +02:00
drmortalwombat 417574b4bb Fix volatile copy 2022-04-12 22:08:40 +02:00
drmortalwombat 07afbc4714 Bump version number 2022-04-12 20:25:41 +02:00
drmortalwombat e312dddb12 Bump version number 2022-04-10 22:13:32 +02:00
drmortalwombat 0be3114e7d Bump version number 2022-04-06 19:18:55 +02:00
drmortalwombat c9e1775469 Optimize data forwarding on loop exit 2022-04-04 20:25:05 +02:00
drmortalwombat 9e7139f344 Bump version number 2022-04-03 11:55:52 +02:00
drmortalwombat 48f97b6e60 Optimize compare to boolean variable 2022-03-31 18:16:31 +02:00
drmortalwombat c24cf916db Bump version number 2022-03-27 17:21:23 +02:00
drmortalwombat 0aacc14287 Bump version number 2022-03-26 21:42:54 +01:00
drmortalwombat fc5c9f137a Add indexed const array initializer 2022-03-26 10:29:48 +01:00
drmortalwombat 5f0e0225e1 Loop MSB optimizations 2022-03-22 22:21:59 +01:00
drmortalwombat 4dd31f6c69 Bump version number 2022-03-19 20:05:43 +01:00
drmortalwombat 3d3618876f Bump version number 2022-03-15 18:50:15 +01:00
drmortalwombat ea09c2aa7b Static stack allocations for complex locals in non recursive calls 2022-03-13 15:46:03 +01:00
drmortalwombat 24a17c937b Bump version number 2022-03-12 12:56:30 +01:00
drmortalwombat b43edb2b4c Avoid inlining of native functions into byte code 2022-03-09 20:27:11 +01:00
drmortalwombat c5fc186336 Add horizontal scroll shmup sample game 2022-03-06 21:49:10 +01:00
drmortalwombat d1104e1eb3 Optimize y index progression 2022-03-05 11:25:56 +01:00
drmortalwombat 51d447618b Bump version 2022-03-03 08:11:02 +01:00
drmortalwombat 2719b1156b Fix over eager livetime reduction of X and Y registers 2022-02-26 12:35:59 +01:00
drmortalwombat a2293a0ed1 Native code size reduction 2022-02-23 18:48:31 +01:00
drmortalwombat 2fd8d8673a Oprtimize right shift multiply combination 2022-02-23 15:00:08 +01:00
drmortalwombat ed609f124b Improve loop invariant hoisting 2022-02-20 20:51:05 +01:00
drmortalwombat 6ac606c91b Fix compile order based on dependency graph 2022-02-19 12:58:51 +01:00
drmortalwombat 3aa142957c Fix pointer comparison and interrupt warning 2022-02-16 16:31:03 +01:00
drmortalwombat 1221649a3d Add check for __interrupt attribute on function pointers call from interrupt code 2022-02-15 09:49:46 +01:00
drmortalwombat fdb112a037 Add constant address calculation for struct members 2022-02-14 20:13:30 +01:00
drmortalwombat a52fb469b6 Eliminate some redundant instructions during peephole optimization 2022-02-09 22:20:44 +01:00
drmortalwombat 2f009f129e Add regions replicated in multiple easyflash banks 2022-02-07 18:04:17 +01:00
drmortalwombat a5d5060048 Bump version number 2022-02-06 21:47:08 +01:00
drmortalwombat d4352ef043 Add __hwinterrupt function decoration 2022-02-06 10:28:09 +01:00
drmortalwombat 5147ec6bc9 Fix function pointers in struct consts 2022-02-05 16:52:54 +01:00
drmortalwombat 4831950e61 Optimizing right shifts greater 5 bits by left shifts 2022-02-05 11:37:03 +01:00
drmortalwombat 34220b96e3 Add auto generation of multiplier tables if variable factor is known to be small 2022-02-02 22:05:55 +01:00
drmortalwombat c6133ce7c0 Add error message on crash, fix infinite loop, extend asm listing 2022-02-02 08:58:35 +01:00
drmortalwombat ce6714006c Bump version number 2022-02-01 22:27:09 +01:00
drmortalwombat 5a9f82b147 Add resources for missile command 2022-01-31 21:20:37 +01:00
drmortalwombat 995e39a57d Add missile command sample game 2022-01-31 21:17:14 +01:00
drmortalwombat 18be0dfc0b Optimize dynamic code generation 2022-01-29 21:55:52 +01:00
drmortalwombat 60165a7fc3 Add "*" symbol for current address in inline assembler 2022-01-29 13:33:57 +01:00
drmortalwombat 5ca651bc36 Add games to samples 2022-01-28 22:49:15 +01:00
drmortalwombat 65201f27b6 Bump version number 2022-01-28 14:24:55 +01:00
drmortalwombat 2d41edfc97 Fix byte limit in #embed 2022-01-28 14:13:49 +01:00
drmortalwombat 79a841a422 Mark vic registers as volatile 2022-01-27 16:38:47 +01:00
drmortalwombat f25bf80a0f Fix LF line ending on windows, float and loop optimizations 2022-01-25 14:31:36 +01:00
drmortalwombat 9f41a55a18 Fix static declaration in header files 2022-01-23 21:14:30 +01:00
drmortalwombat 5a8dbfea60 Fix placement of sections in cartridges at other locations than start 2022-01-23 12:03:54 +01:00
drmortalwombat ca93f107c3 Add relocated sections 2022-01-22 18:21:52 +01:00
drmortalwombat 9dd493d20b Add sid and easyflash includes 2022-01-22 11:16:59 +01:00
drmortalwombat 9161b088ee More integer range optimizations 2022-01-16 18:30:38 +01:00
drmortalwombat ed37f360eb New multicolor bitmap library 2022-01-11 18:27:13 +01:00
drmortalwombat 85f99fe411 Bump version number 2022-01-05 20:11:17 +01:00
drmortalwombat 66807c2374 Add samples to windows installer 2021-12-30 17:30:36 +01:00
drmortalwombat 720e532d22 Added scanf and sscanf to stdio 2021-12-24 14:39:03 +01:00
drmortalwombat 4a9c662cc9 Optimize float native code size 2021-12-19 16:53:12 +01:00
drmortalwombat 88c3764f69 Bump version number 2021-12-13 08:16:01 +01:00
drmortalwombat 92e01b6298 Bump version number 2021-11-22 22:29:19 +01:00
drmortalwombat 4017cc386b Add charwin library and matching code generator optimizations 2021-11-18 14:57:43 +01:00
drmortalwombat 594610c302 Bump version number 2021-11-16 21:00:34 +01:00
drmortalwombat d99940a98e Update to version 1.1.45 2021-11-06 20:12:28 +01:00
drmortalwombat 214ebd93f2 Bump version to 1.1.44 2021-10-31 20:39:28 +01:00
drmortalwombat 42e4f483c1 Reduce register spilling on function entry/exit 2021-10-23 22:22:49 +02:00
drmortalwombat 55cd076f7b Bump version to 1.1.42 2021-10-16 19:51:54 +02:00
drmortalwombat 5372d49b50 Petscii translation in stdio and conio 2021-10-12 17:54:10 +02:00
drmortalwombat 6bd3e3ae97 Remove debug code 2021-10-10 20:58:38 +02:00
drmortalwombat 9618762234 Bump version to 1.0.38 2021-10-03 20:39:23 +02:00
drmortalwombat 542cb66693 Fixes to get dhrystone.c to compile and run 2021-10-03 20:35:50 +02:00
drmortalwombat a0df4e7867 Optimize stack frame for simple functions 2021-10-02 20:56:01 +02:00
drmortalwombat e846caaf1f New release version 2021-09-29 21:38:02 +02:00
drmortalwombat f925833884 Move executable into bin folder for windows and linux 2021-09-25 18:20:32 +02:00
drmortalwombat 0681c899ae Bump file version 2021-09-23 08:28:53 +02:00
drmortalwombat 2cd9a55880 Fix various bugs related to byte size operands 2021-09-22 15:46:20 +02:00
drmortalwombat eebc39e53a Fix return type coercion, region based linker 2021-09-21 20:44:19 +02:00
drmortalwombat 3f5f3ee7ea Filenames now full 2021-09-21 15:08:05 +02:00
drmortalwombat d3d20bee26 Prepare section based linker 2021-09-19 22:22:16 +02:00
drmortalwombat 10bb751449 Fix struct over header boundaries 2021-09-19 20:00:36 +02:00
drmortalwombat 3ce8796beb Bump version number 2021-09-19 17:27:07 +02:00
drmortalwombat fae377132f Fix assembler label low/high byte immediate 2021-09-19 16:08:38 +02:00
drmortalwombat 913f0d4190 Change line end to 13 in prints 2021-09-13 20:09:18 +02:00
drmortalwombat bb4680845e Fix float x+x optimisation 2021-09-12 15:18:07 +02:00
drmortalwombat 93b6aca8a3 More native code generator 2021-09-11 15:01:32 +02:00
drmortalwombat 07f797e577 Formatting options in printf 2021-09-10 16:13:47 +02:00
drmortalwombat 83f5d634df Resource version bump to 1.0.22 2021-09-09 09:43:53 +02:00
drmortalwombat 69a44e90e3 Added test for array init 2021-09-07 13:43:22 +02:00
drmortalwombat b17eef9255 Added installer project 2021-09-06 18:44:57 +02:00