drmortalwombat
|
003550337a
|
Fix debug and linux build
|
2024-02-15 13:29:02 +01:00 |
|
drmortalwombat
|
c909995011
|
Reduce compiler memory footprint
|
2024-02-15 09:58:26 +01:00 |
|
drmortalwombat
|
18cfbc713a
|
Force some inline calls in vdc
|
2024-02-14 15:24:01 +01:00 |
|
drmortalwombat
|
806539a2d6
|
add "tan" to intrinsic functions
|
2024-02-13 20:49:11 +01:00 |
|
drmortalwombat
|
bcc20d3986
|
Switch to x64 compiler binary
|
2024-02-13 16:53:44 +01:00 |
|
drmortalwombat
|
7d6eb36ee7
|
Fix assignment of immediates to returned struct
|
2024-02-04 09:43:52 +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
|
2c1a87ce02
|
Control assert with _DEBUG to avoid gcc core dump
|
2024-01-23 16:53:30 +01:00 |
|
drmortalwombat
|
bcc5e9d362
|
Fix propagation of conditions out of loops
|
2024-01-23 09:02:38 +01:00 |
|
drmortalwombat
|
4fc3e019d5
|
Add ranges in case statements (gcc extension)
|
2024-01-21 15:17:46 +01:00 |
|
drmortalwombat
|
8a49ffd111
|
Improve unrolled loops towards zero
|
2024-01-20 13:49:25 +01:00 |
|
drmortalwombat
|
a19469d851
|
Fix exportet variable alignment calculation
|
2024-01-16 08:12:47 +01:00 |
|
drmortalwombat
|
265be6e766
|
Move linker chattyness into -v2
|
2024-01-12 22:51:11 +01:00 |
|
drmortalwombat
|
cac7db4358
|
Fix memory size mismatch in reverse integer range propagation due to register renaming
|
2024-01-10 22:59:45 +01:00 |
|
drmortalwombat
|
d9f81ad653
|
Improve cross function memory aliasing analysis
|
2024-01-03 22:23:20 +01:00 |
|
drmortalwombat
|
34947da898
|
Fix loop integer range propagation
|
2024-01-02 22:21:05 +01:00 |
|
drmortalwombat
|
da20b4d27a
|
Fix atan2, failed in mathtest.c
|
2023-12-30 09:21:17 +01:00 |
|
drmortalwombat
|
a305dbb1cd
|
Improve function placement in linker
|
2023-12-23 10:40:45 +01:00 |
|
drmortalwombat
|
4a8010a3a0
|
Fix loss of zero page dependency in tail code merge
|
2023-12-17 12:40:09 +01:00 |
|
drmortalwombat
|
ae4b48c445
|
Various loop optimizations
|
2023-12-16 21:03:09 +01:00 |
|
drmortalwombat
|
8ab46e29dd
|
Direct parameter forwarding
|
2023-12-02 10:58:20 +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
|
57537cd43a
|
Join common branch code sequences
|
2023-11-26 15:46:59 +01:00 |
|
drmortalwombat
|
eec4ed45d1
|
Fix global array aliasing error
|
2023-11-20 22:53:12 +01:00 |
|
drmortalwombat
|
0309fcb286
|
Fixed copy with offset
|
2023-11-20 08:29:23 +01:00 |
|
drmortalwombat
|
157f9c00e5
|
Fix do while loop with function condition
|
2023-11-16 16:40:11 +01:00 |
|
drmortalwombat
|
44e6921842
|
Change string literal processing to use unsigned chars
|
2023-11-14 15:02:35 +01:00 |
|
drmortalwombat
|
ee03f08f52
|
Fix over eager zp parameter reuse
|
2023-11-11 22:37:35 +01:00 |
|
drmortalwombat
|
3be6d20006
|
Add enum class
|
2023-11-09 16:33:50 +01:00 |
|
drmortalwombat
|
06ab48461b
|
Implement striped unions
|
2023-11-06 21:33:04 +01:00 |
|
drmortalwombat
|
8ea991db81
|
Optimize div/mod unsigned pairs
|
2023-11-03 20:16:23 +01:00 |
|
drmortalwombat
|
8aeddf0316
|
Fix previous fix
|
2023-10-30 19:43:37 +01:00 |
|
drmortalwombat
|
8a27cba1f9
|
Fix inifinite pumping loop in integer range optimizer
|
2023-10-30 18:02:34 +01:00 |
|
drmortalwombat
|
1d4eb70414
|
Optimize struct copies
|
2023-10-29 17:55:26 +01:00 |
|
drmortalwombat
|
d9a8c5ea08
|
Fix template expansion of member functions
|
2023-10-27 14:53:19 +02:00 |
|
drmortalwombat
|
0080a85345
|
Fix deadlock on empty switch statement
|
2023-10-26 07:54:03 +02:00 |
|
drmortalwombat
|
f6536a412e
|
Fix SAR/MUL optimization
|
2023-10-24 21:20:07 +02: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
|
7858e32d12
|
Improve handling of single member structs
|
2023-10-15 20:17:04 +02:00 |
|
drmortalwombat
|
eb16767bdb
|
Optimize wide right shift
|
2023-10-15 13:59:30 +02:00 |
|
drmortalwombat
|
3da58bf1ca
|
Fix line directive off by one error
|
2023-10-15 12:01:24 +02:00 |
|
drmortalwombat
|
d160b2ae65
|
Optimize bitfields
|
2023-10-14 16:51:33 +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
|
2027ac5d4c
|
Fix template expansion in multiple cpp
|
2023-10-12 14:10:34 +02:00 |
|
drmortalwombat
|
6a30a38415
|
Fix multi instantiation of inline constructors
|
2023-10-10 09:02:30 +02:00 |
|
drmortalwombat
|
d4f979b1bc
|
Fix accu return with temp spilling
|
2023-10-08 21:30:53 +02:00 |
|
drmortalwombat
|
e084035a71
|
Common sub expression across if
|
2023-10-03 15:21:33 +02:00 |
|
drmortalwombat
|
078d14861c
|
Some data path optimizations
|
2023-09-30 18:10:03 +02:00 |
|
drmortalwombat
|
9d8c6991e8
|
Add global optimizer for parameter/return optimizations
|
2023-09-23 14:56:04 +02:00 |
|
drmortalwombat
|
a0409002b6
|
Fix pointers in constexpr
|
2023-09-20 14:19:56 +02:00 |
|
drmortalwombat
|
e20c098ab1
|
Fix samples build error
|
2023-09-18 07:41:49 +02:00 |
|
drmortalwombat
|
38274fb4f7
|
Add emplace_back in vector
|
2023-09-17 15:40:05 +02:00 |
|
drmortalwombat
|
06ebf85d9d
|
Recursive variadic templates
|
2023-09-17 10:24:28 +02:00 |
|
drmortalwombat
|
532bf51718
|
Range for loop with reference iteration
|
2023-09-13 17:24:38 +02:00 |
|
drmortalwombat
|
eccb2787dc
|
Add simple range for loop
|
2023-09-12 21:33:59 +02:00 |
|
drmortalwombat
|
2b51f20b1c
|
Add lambda
|
2023-09-12 15:36:24 +02:00 |
|
drmortalwombat
|
c1ecf1c281
|
Added bitfields
|
2023-09-11 08:04:09 +02:00 |
|
drmortalwombat
|
ab273181f5
|
First shot implementing constexpr
|
2023-09-08 20:12:38 +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
|
3a9cd85072
|
Optimize simple const ref to value in functions
|
2023-08-18 13:13:39 +02:00 |
|
drmortalwombat
|
0440f0ef19
|
More template support
|
2023-08-17 14:55:43 +02:00 |
|
drmortalwombat
|
80426d974c
|
Add RValue Reference
|
2023-08-13 20:53:39 +02:00 |
|
drmortalwombat
|
fef6bc29bc
|
Add templates
|
2023-08-11 07:41:27 +02:00 |
|
drmortalwombat
|
07969d1fa6
|
Fix type coercion from empty string pointer to 0
|
2023-08-08 17:33:47 +02:00 |
|
drmortalwombat
|
b7630450f1
|
Improve C++ compliance
|
2023-08-08 14:19:08 +02:00 |
|
drmortalwombat
|
0d95a74813
|
Add cartridge bank lookup for lables in asm file
|
2023-08-07 15:50:01 +02:00 |
|
drmortalwombat
|
f3eb6e19cf
|
Fix linux build
|
2023-08-02 16:52:45 +02:00 |
|
drmortalwombat
|
b1a42e5ecf
|
Fix linux build
|
2023-08-01 15:50:11 +02:00 |
|
drmortalwombat
|
e013142cb1
|
Cross block register optimizations
|
2023-07-30 11:24:19 +02:00 |
|
drmortalwombat
|
0b1d42b7d5
|
Expand global aliasing analysis
|
2023-07-29 22:15:00 +02:00 |
|
drmortalwombat
|
02e7f15810
|
Improve outer loop optimizations
|
2023-07-28 18:51:29 +02:00 |
|
drmortalwombat
|
2b9ae73795
|
Bump version number
|
2023-07-26 19:46:07 +02:00 |
|
drmortalwombat
|
551316fe59
|
Fix autotest assert
|
2023-07-26 18:02:22 +02:00 |
|
drmortalwombat
|
6cfa24b8ad
|
Fix over eager constant propagation
|
2023-07-24 19:03:34 +02:00 |
|
drmortalwombat
|
893aa7effa
|
Add late inlining step
|
2023-07-23 17:41:56 +02:00 |
|
drmortalwombat
|
9b2d90ec58
|
Add autotest for string stream
|
2023-07-23 11:19:26 +02:00 |
|
drmortalwombat
|
9cdfad7d34
|
Improve cpp code generation
|
2023-07-17 07:52:59 +02:00 |
|
drmortalwombat
|
18c21b3fda
|
Optimize long shifts
|
2023-07-15 22:32:07 +02:00 |
|
drmortalwombat
|
6178bb1f9d
|
Shortcut jump cascades
|
2023-07-10 22:12:41 +02:00 |
|
drmortalwombat
|
00ded29b35
|
Improve opp string library
|
2023-07-09 21:35:49 +02:00 |
|
drmortalwombat
|
0bab98ccc6
|
Optimize short signed table access
|
2023-07-08 22:20:42 +02:00 |
|
drmortalwombat
|
ed9aa3503b
|
Added virtual functions
|
2023-07-08 18:53:06 +02:00 |
|
drmortalwombat
|
0b6a9c3584
|
Copy elision on return statements
|
2023-07-05 17:10:23 +02:00 |
|
drmortalwombat
|
7f6cf654f6
|
Implemented new and delete operators
|
2023-07-02 16:34:17 +02:00 |
|
drmortalwombat
|
7858c2135b
|
Add malloc/free as intrinsic
|
2023-07-02 12:00:53 +02:00 |
|
drmortalwombat
|
63ebf6aa7c
|
strlen optimization
|
2023-06-27 15:34:13 +02:00 |
|
drmortalwombat
|
8f39d736d5
|
Fixing member functions with includes
|
2023-06-27 08:12:20 +02:00 |
|
drmortalwombat
|
0b1b4a7d9b
|
Array constructors
|
2023-06-25 22:24:13 +02:00 |
|
drmortalwombat
|
6b753c1418
|
Destructor tracking of temporary variables
|
2023-06-25 14:25:29 +02:00 |
|
drmortalwombat
|
e577791252
|
Constructors with parameter overloading
|
2023-06-20 10:26:49 +02:00 |
|
drmortalwombat
|
8a886f0a60
|
Fix loop invariant error
|
2023-06-14 16:44:03 +02:00 |
|
drmortalwombat
|
c83804a76c
|
Cross function constant propagation
|
2023-06-14 14:40:59 +02:00 |
|
drmortalwombat
|
ab9ae6bf0e
|
Fix error in intermediate code peephole optimizer
|
2023-06-09 21:21:35 +02:00 |
|
drmortalwombat
|
e593e2affb
|
Loop optimizations
|
2023-06-08 20:27:11 +02:00 |
|
drmortalwombat
|
7d3dc493c0
|
Fix inter instruction cross block move
|
2023-05-26 20:16:19 +02:00 |
|
drmortalwombat
|
5564b01d11
|
Fix sample build crash on linux
|
2023-05-23 11:05:29 +02:00 |
|
drmortalwombat
|
e6b46a3acf
|
More aggressive value forwarding with local arrays
|
2023-05-20 13:49:34 +02:00 |
|
drmortalwombat
|
d58e74e19a
|
Bump version number
|
2023-05-19 22:49:54 +02:00 |
|
drmortalwombat
|
2ac276458a
|
Optimize loop invariants in single entry/exit loops
|
2023-05-19 21:25:29 +02:00 |
|
drmortalwombat
|
d4caa6bb71
|
Optimize right shift of byte values with variable shift distance
|
2023-05-16 19:07:59 +02:00 |
|
drmortalwombat
|
8142ed3e72
|
Merge branch 'main' of https://github.com/drmortalwombat/oscar64
|
2023-05-14 19:01:41 +02:00 |
|
polluks
|
1616b9335f
|
Fixed typos
|
2023-05-13 15:57:46 +02:00 |
|
drmortalwombat
|
45963102b8
|
Fix lower bound of byte -- operator
|
2023-05-12 14:17:35 +02:00 |
|
drmortalwombat
|
4aa6b1c47d
|
Improve int dependency in loop analysis
|
2023-05-07 17:46:53 +02:00 |
|
drmortalwombat
|
0639fdc008
|
Unify instruction dependency check in optimizer
|
2023-05-06 18:28:59 +02:00 |
|
drmortalwombat
|
7d12fd4c02
|
Fix same XY optimization
|
2023-05-04 11:32:12 +02:00 |
|
drmortalwombat
|
30b3ed610e
|
Keep unused variable stores if optimization is turned off
|
2023-05-01 17:10:27 +02:00 |
|
drmortalwombat
|
6308f22f25
|
Fix warnings
|
2023-04-12 19:02:27 +02:00 |
|
drmortalwombat
|
e23ab50512
|
Add local variables to debug file
|
2023-04-09 19:19:57 +02:00 |
|
drmortalwombat
|
85df217c50
|
Add warning for const integer truncation
|
2023-04-09 09:45:13 +02:00 |
|
drmortalwombat
|
97bb7981a3
|
Improve struct copy alias analysis
|
2023-04-06 17:14:53 +02:00 |
|
drmortalwombat
|
7803e2ecc4
|
Fix infinite loop in compiler trying to optimize infinite loops
|
2023-04-04 08:37:26 +02:00 |
|
drmortalwombat
|
32ea493c17
|
Prepare per function optimization config using pragmas
|
2023-04-02 19:04:10 +02:00 |
|
drmortalwombat
|
2f1172076a
|
Add source level debug information
|
2023-03-28 21:01:17 +02:00 |
|
drmortalwombat
|
c2c0244990
|
More native code common subexpression elimination
|
2023-03-24 20:23:10 +01:00 |
|
drmortalwombat
|
6af03b34ad
|
Fix infinite optimizer loop
|
2023-03-21 08:09:12 +01:00 |
|
drmortalwombat
|
9c5e018c5a
|
More simple common subexpression elimination in native code
|
2023-03-17 09:32:22 +01:00 |
|
drmortalwombat
|
83869ad3a0
|
Shortcut redundant conditional branch sequences
|
2023-03-13 22:13:02 +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
|
0f4f0ed297
|
Improve compiler speed
|
2023-03-08 08:37:43 +01:00 |
|
drmortalwombat
|
4117c9a553
|
More functions for reu library
|
2023-02-25 21:02:06 +01:00 |
|
drmortalwombat
|
153c0ef4fa
|
Short loop optimizations
|
2023-02-22 22:43:35 +01:00 |
|
drmortalwombat
|
a91112c05c
|
Pointer in loop optimizations
|
2023-02-19 18:07:25 +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
|
932a65be8c
|
Optimize cross block XY register usage
|
2023-02-02 20:10:35 +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
|
29611ec3db
|
Fix striped constant pointer initializer
|
2023-01-19 19:03:02 +01:00 |
|
drmortalwombat
|
0b30258f80
|
Dataflow optimizations
|
2023-01-17 22:42:02 +01:00 |
|
drmortalwombat
|
02db5b5eb1
|
Static call graph analysis for function arguments
|
2023-01-15 18:38:18 +01:00 |
|
drmortalwombat
|
761206d009
|
Propagation of unsigend attribute accross function arguments
|
2023-01-13 20:14:16 +01:00 |
|
drmortalwombat
|
fdb051bd2b
|
Fix right + left shift optimization when shifting from long to int
|
2023-01-13 15:41:21 +01:00 |
|
drmortalwombat
|
ffe07a6a3c
|
Optimize multiplication with short negative constants
|
2023-01-07 13:41:59 +01:00 |
|
drmortalwombat
|
59d77504c8
|
Fix compile time load of const striped array data
|
2023-01-01 18:34:52 +01:00 |
|
drmortalwombat
|
1a06102668
|
Shortcut identical consecutive conditional branches
|
2022-12-25 22:14:12 +01:00 |
|
drmortalwombat
|
5696691a19
|
Bump version number
|
2022-12-23 22:50:13 +01:00 |
|
drmortalwombat
|
9daf4fa621
|
Some more cross block pointer forwarding
|
2022-12-18 20:33:52 +01:00 |
|
drmortalwombat
|
e202f8e5b5
|
Bump version number
|
2022-12-13 20:16:11 +01:00 |
|
drmortalwombat
|
0aa9ca0c70
|
Bump Version number
|
2022-12-10 16:15:04 +01:00 |
|