Commit Graph

181 Commits

Author SHA1 Message Date
drmortalwombat c508d94d7c Fix loop exit value of loop counter derived values 2024-09-19 11:27:30 +02:00
drmortalwombat ce710fca5d Add float long conversion 2024-09-19 09:49:16 +02:00
drmortalwombat ce0ac30280 Fix value propagation in loop dependency analysis 2024-09-19 08:12:04 +02:00
drmortalwombat 5aeec2fad4 Fix function pointer const propagation 2024-09-16 17:16:45 +02:00
drmortalwombat 122dc12d40 Eliminate stores to unused function arguments 2024-08-17 20:55:00 +02:00
drmortalwombat 8a6e3eb924 Add breakpoint intrinsic in oscar.h 2024-08-09 18:05:44 +02:00
drmortalwombat 932c7ec222 Fix static stack in recursion
Fix static stack allocation and placement for non recursive sub trees in a recursive call tree
2024-08-09 16:18:38 +02:00
drmortalwombat 5bb8ca0b89 Improve fix point arithmetic 2024-07-28 14:41:17 +02:00
drmortalwombat c229a27992 Improve cross loop value propagation 2024-07-16 08:36:52 +02:00
drmortalwombat 301431f12a Eliminate duplicate loop counting variables 2024-07-05 10:12:55 +02:00
drmortalwombat bf89d7af33 Improve loop register allocation 2024-07-03 22:23:27 +02:00
drmortalwombat 1c0db235a8 Fix emulator cycle count 2024-06-30 12:29:41 +02:00
drmortalwombat d4a381f71c Fix size heuristic of loop condition slicing 2024-06-20 09:42:22 +02:00
drmortalwombat 5ccfab0342 Fix IEC code for non interrupt usage 2024-06-11 12:12:29 +02:00
drmortalwombat 2e1c020db4 Bump version number 2024-05-26 08:43:14 +02:00
drmortalwombat 4fb35a7af2 Add error when exceeding assembler limits 2024-05-20 09:03:41 +02:00
drmortalwombat 86e0cbf9c2 Alternate forward and backward int value range check 2024-05-19 10:19:42 +02:00
drmortalwombat 9b47a34840 Improve reordering of function arguments 2024-04-28 20:15:17 +02:00
drmortalwombat 611f672b81 Add warning for static buffer overflow 2024-04-15 15:40:37 +02:00
drmortalwombat aa601a5727 Change memset and memclr to intrinsic functions 2024-03-24 11:22:13 +01:00
drmortalwombat 85fad64e9c Optimize post inc/dec while loop conditions 2024-03-21 19:33:50 +01:00
drmortalwombat 6f7efd9efc Optimized long multiply 2024-02-17 12:06:15 +01:00
drmortalwombat c909995011 Reduce compiler memory footprint 2024-02-15 09:58:26 +01:00
drmortalwombat bcc20d3986 Switch to x64 compiler binary 2024-02-13 16:53:44 +01:00
drmortalwombat 80efe2351b Optimize short wait loop handling 2024-01-28 19:09:59 +01:00
drmortalwombat c1083b44dc Optimize constant loops 2024-01-27 10:19:14 +01:00
drmortalwombat 3992b1d547 Add warning for out of bounds accesses 2024-01-24 17:30:03 +01:00
drmortalwombat 8a49ffd111 Improve unrolled loops towards zero 2024-01-20 13:49:25 +01:00
drmortalwombat d9f81ad653 Improve cross function memory aliasing analysis 2024-01-03 22:23:20 +01:00
drmortalwombat ae4b48c445 Various loop optimizations 2023-12-16 21:03:09 +01:00
drmortalwombat 003306f961 Fix noinline, improve cartridge use of bank 0 2023-11-29 20:53:04 +01:00
drmortalwombat cf28c1a618 Move conditions out of loops 2023-11-28 17:40:44 +01:00
drmortalwombat 0309fcb286 Fixed copy with offset 2023-11-20 08:29:23 +01:00
drmortalwombat 1d4eb70414 Optimize struct copies 2023-10-29 17:55:26 +01:00
drmortalwombat 982fe17aed Fix compiler crash when using function result in if condition 2023-10-24 14:29:46 +02:00
drmortalwombat f8f81f6d4c Optimize compile time 2023-10-22 19:35:37 +02:00
drmortalwombat 0f5e933002 Optimize cross block constant propagation 2023-10-18 15:57:59 +02:00
drmortalwombat 3da58bf1ca Fix line directive off by one error 2023-10-15 12:01:24 +02:00
drmortalwombat 9156db9c32 Restart integer range estimation from full state 2023-10-14 13:43:11 +02:00
drmortalwombat ecf8e69cf2 Add restricted pointer attribute to newly allocated memory 2023-10-13 11:18:16 +02:00
drmortalwombat e084035a71 Common sub expression across if 2023-10-03 15:21:33 +02:00
drmortalwombat 9d8c6991e8 Add global optimizer for parameter/return optimizations 2023-09-23 14:56:04 +02:00
drmortalwombat 06ebf85d9d Recursive variadic templates 2023-09-17 10:24:28 +02:00
drmortalwombat c926456560 Add simple return type deduction 2023-09-11 17:49:04 +02:00
drmortalwombat c1ecf1c281 Added bitfields 2023-09-11 08:04:09 +02:00
drmortalwombat 6ff2409596 Fix return register optimization in v table call 2023-08-20 09:26:26 +02:00
drmortalwombat 8dc37e9ab2 Mangling function types in template expansion 2023-08-18 23:03:15 +02:00
drmortalwombat 0440f0ef19 More template support 2023-08-17 14:55:43 +02:00
drmortalwombat f3eb6e19cf Fix linux build 2023-08-02 16:52:45 +02:00
drmortalwombat e013142cb1 Cross block register optimizations 2023-07-30 11:24:19 +02:00