drmortalwombat
|
4901e015f6
|
Undo JSR optimization for testing
|
2024-01-27 17:48:30 +01:00 |
|
drmortalwombat
|
fdb52bcdc6
|
Limit JSR->JMP forwarding
|
2024-01-27 17:43:08 +01:00 |
|
drmortalwombat
|
974688a8a5
|
Fix overlay prg file save
|
2024-01-27 17:11:10 +01:00 |
|
drmortalwombat
|
2ad71ef867
|
Bump version number
|
2024-01-27 10:26:22 +01:00 |
|
drmortalwombat
|
c1083b44dc
|
Optimize constant loops
|
2024-01-27 10:19:14 +01:00 |
|
drmortalwombat
|
b0dc6fdd1e
|
Add save as .prg for overlay files
|
2024-01-27 09:37:48 +01:00 |
|
drmortalwombat
|
7f51d6330e
|
Fixed 1 - i for bytes, wrong operand order
|
2024-01-26 12:41:13 +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
|
529618ffa4
|
Changed error format to "oscar64:" when error outside of source file
|
2024-01-23 15:58:47 +01:00 |
|
drmortalwombat
|
bcc5e9d362
|
Fix propagation of conditions out of loops
|
2024-01-23 09:02:38 +01:00 |
|
drmortalwombat
|
6444ba58cf
|
bump version number
|
2024-01-21 15:39:26 +01:00 |
|
drmortalwombat
|
4fc3e019d5
|
Add ranges in case statements (gcc extension)
|
2024-01-21 15:17:46 +01:00 |
|
drmortalwombat
|
dcebdeaa5f
|
Fix parsing of trailing comma in initializer list
|
2024-01-21 09:25:34 +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
|
4eaa6c8b1e
|
Add immediate variable address parameter in inline assembler
|
2024-01-10 12:22:46 +01:00 |
|
drmortalwombat
|
5634abdba4
|
Fix compiler warnings on linux/macos
|
2024-01-09 20:04:40 +01:00 |
|
drmortalwombat
|
a6b3533e61
|
Fix struct volatile cast
|
2024-01-08 20:41:48 +01:00 |
|
drmortalwombat
|
1abdd1476e
|
Fix error message when propagating invalid function parameter to const
|
2024-01-08 18:20:55 +01:00 |
|
drmortalwombat
|
0bc4e7cda6
|
Fix inc/mov of absolute values
|
2024-01-07 16:13:01 +01:00 |
|
drmortalwombat
|
36d6fc6760
|
Fix placement of proxy variables for unused parameters
|
2024-01-06 20:00:55 +01:00 |
|
drmortalwombat
|
7ea4356361
|
Fix function end location in dbj file
|
2024-01-06 17:07:10 +01:00 |
|
drmortalwombat
|
d676ccc1bd
|
Fix dbj file reference with optimized variable
|
2024-01-06 14:03:29 +01:00 |
|
drmortalwombat
|
1c1d7fefaa
|
Add c128e target machine
|
2024-01-06 09:09:52 +01:00 |
|
drmortalwombat
|
a7d7db37df
|
Bump version number
|
2024-01-04 17:56:42 +01:00 |
|
drmortalwombat
|
5d51cf75e8
|
Fix cross block zp move optimization
|
2024-01-04 14:14:28 +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 |
|
Ralf Horstmann
|
fc6c83e9cd
|
Fix out of bounds access to LinkerObjectTypeNames
One entry was missing, causing segmentation fault on some platforms.
|
2024-01-01 14:16:02 +01:00 |
|
drmortalwombat
|
940cb4a5b9
|
Add declaration to reference list in dbj
|
2023-12-31 13:30:29 +01:00 |
|
drmortalwombat
|
c138c0f2ae
|
Fix loss of zp dependency on diamond register propagation
|
2023-12-31 10:29:59 +01:00 |
|
drmortalwombat
|
5a3cbff259
|
Add references to dbj file
|
2023-12-30 12:17:46 +01:00 |
|
drmortalwombat
|
da20b4d27a
|
Fix atan2, failed in mathtest.c
|
2023-12-30 09:21:17 +01:00 |
|
drmortalwombat
|
064bf0f8e5
|
Bump Version Number
|
2023-12-23 10:45:00 +01:00 |
|
drmortalwombat
|
a305dbb1cd
|
Improve function placement in linker
|
2023-12-23 10:40:45 +01:00 |
|
drmortalwombat
|
59b1d971d0
|
Changes sprintf to snprintf
|
2023-12-18 13:00:54 +01:00 |
|
drmortalwombat
|
ef6598e94b
|
Fix unnamed structs
|
2023-12-18 07:40:31 +01:00 |
|
drmortalwombat
|
04518e4ff3
|
Add error message for unnamed structs
|
2023-12-17 22:45:21 +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
|
6cf8466dfd
|
Fix overeager lda/sta join of tail blocks
|
2023-12-12 22:39:22 +01:00 |
|
drmortalwombat
|
6bbf325720
|
Add BIT instruction for sign check, add inlay sections in linker
|
2023-12-12 11:08:59 +01:00 |
|
drmortalwombat
|
ee67c6dec1
|
Add more HEAPCHECK
|
2023-12-10 12:41:37 +01:00 |
|
drmortalwombat
|
16810b63d4
|
Fix over eager lda/sta movement
|
2023-12-10 09:48:23 +01:00 |
|
drmortalwombat
|
1e0450cd8a
|
Optimize sprite multiplexer
|
2023-12-09 13:40:58 +01:00 |
|
drmortalwombat
|
1d337f1244
|
Fix accu train movement to end of block
|
2023-12-07 14:22:05 +01:00 |
|
drmortalwombat
|
cce2f272ef
|
Add optimization section to readme
|
2023-12-06 13:55:38 +01:00 |
|
drmortalwombat
|
d48da32586
|
Improve placement of "if" cascades
|
2023-12-04 22:09:33 +01:00 |
|
drmortalwombat
|
8a33fe3e60
|
Bump version number
|
2023-12-02 11:04:20 +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
|
8fd560a643
|
Bump version number
|
2023-11-26 22:41:17 +01:00 |
|
drmortalwombat
|
d5026ed9b0
|
Fix join common branch sequence
|
2023-11-26 21:34:06 +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
|
a9fc83d63c
|
Add xname attribute to .dbj file
|
2023-11-20 17:28:48 +01:00 |
|
drmortalwombat
|
a5f4cf3252
|
Fix default constructor with classes in header file
|
2023-11-20 17:03:34 +01:00 |
|
drmortalwombat
|
6995f5a683
|
Decorate vcall multiplexer
|
2023-11-20 13:07:29 +01:00 |
|
drmortalwombat
|
0309fcb286
|
Fixed copy with offset
|
2023-11-20 08:29:23 +01:00 |
|
drmortalwombat
|
38e1cd0bab
|
Fix join entry loadstore zp if accu is used cross block
|
2023-11-16 21:52:06 +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
|
a59f55c1f3
|
Fix block join target move zp
|
2023-11-10 20:53:20 +01:00 |
|
drmortalwombat
|
3be6d20006
|
Add enum class
|
2023-11-09 16:33:50 +01:00 |
|
drmortalwombat
|
70c6fb23cc
|
Fix for stack virtual call
|
2023-11-08 15:35:45 +01:00 |
|
drmortalwombat
|
e43c086545
|
Add enum to int conversion in function call overload
|
2023-11-07 08:08:44 +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
|
d9c84e3a15
|
Disable vtable dispatcher inlining
|
2023-11-02 08:18:09 +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
|
f808309058
|
Fix wrong string mangling for auto param names
|
2023-10-30 13:17:23 +01:00 |
|
drmortalwombat
|
ae15eca0ef
|
Fix array to pointer cast in const initializer
|
2023-10-29 20:00:38 +01:00 |
|
drmortalwombat
|
781bb83dd1
|
Bump version number
|
2023-10-29 17:57:32 +01:00 |
|
drmortalwombat
|
1d4eb70414
|
Optimize struct copies
|
2023-10-29 17:55:26 +01:00 |
|
drmortalwombat
|
75301fa12d
|
Fix crash with array new
|
2023-10-28 12:02:28 +02:00 |
|
drmortalwombat
|
f541cf3848
|
Fix per tile color in charpad import
|
2023-10-27 17:59:37 +02: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
|
0a3ad006b7
|
Fix simple struct member optimization for array cases
|
2023-10-22 19:50:26 +02:00 |
|
drmortalwombat
|
f8f81f6d4c
|
Optimize compile time
|
2023-10-22 19:35:37 +02:00 |
|
drmortalwombat
|
3377ac04fc
|
Fix const use and vtable incompatibility
|
2023-10-22 12:34:26 +02:00 |
|
drmortalwombat
|
6e4bf52781
|
Optimize switch case tree
|
2023-10-19 21:15:01 +02:00 |
|
drmortalwombat
|
6cb15fd7d9
|
Improve incompatible type error message
|
2023-10-19 17:27:09 +02:00 |
|
drmortalwombat
|
f7d6b52074
|
Fixed striped auto pointer
|
2023-10-18 20:26:11 +02:00 |
|
drmortalwombat
|
0f5e933002
|
Optimize cross block constant propagation
|
2023-10-18 15:57:59 +02:00 |
|
drmortalwombat
|
9e3b014927
|
Eliminate some simple dead X/Y loops
|
2023-10-16 21:51:20 +02:00 |
|
drmortalwombat
|
f5c13c02af
|
Some native code opts
|
2023-10-16 21:29:42 +02:00 |
|
drmortalwombat
|
63725f3511
|
Fix const eval of sin/cos
|
2023-10-16 17:24:35 +02:00 |
|
drmortalwombat
|
da5326cc5f
|
Fix local multi dim array init
|
2023-10-16 15:01:30 +02:00 |
|
drmortalwombat
|
19e2498cc8
|
Fix member constructor for multi dim array members
|
2023-10-16 14:13:20 +02:00 |
|
drmortalwombat
|
7858e32d12
|
Improve handling of single member structs
|
2023-10-15 20:17:04 +02:00 |
|
drmortalwombat
|
454c4f5dbe
|
Bump version number
|
2023-10-15 14:22:59 +02:00 |
|
drmortalwombat
|
eb16767bdb
|
Optimize wide right shift
|
2023-10-15 13:59:30 +02:00 |
|
drmortalwombat
|
6e6e3b2adb
|
Fix line directive over consumption
|
2023-10-15 12:26:32 +02:00 |
|
drmortalwombat
|
3da58bf1ca
|
Fix line directive off by one error
|
2023-10-15 12:01:24 +02:00 |
|
drmortalwombat
|
4e76b34f53
|
constexpr constructor
|
2023-10-14 18:50:27 +02:00 |
|
drmortalwombat
|
d160b2ae65
|
Optimize bitfields
|
2023-10-14 16:51:33 +02:00 |
|
drmortalwombat
|
4f76ffa311
|
Implement #line directive
|
2023-10-14 15:19: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
|
2027ac5d4c
|
Fix template expansion in multiple cpp
|
2023-10-12 14:10:34 +02:00 |
|
drmortalwombat
|
020afb8722
|
bump version number
|
2023-10-10 09:06:31 +02:00 |
|
drmortalwombat
|
6a30a38415
|
Fix multi instantiation of inline constructors
|
2023-10-10 09:02:30 +02:00 |
|
drmortalwombat
|
312914d78c
|
Bump version number
|
2023-10-08 21:44:30 +02:00 |
|
drmortalwombat
|
d4f979b1bc
|
Fix accu return with temp spilling
|
2023-10-08 21:30:53 +02:00 |
|
drmortalwombat
|
33d692194a
|
Add iterators to string
|
2023-10-08 16:27:52 +02:00 |
|
drmortalwombat
|
e084035a71
|
Common sub expression across if
|
2023-10-03 15:21:33 +02:00 |
|
drmortalwombat
|
313b6dcf93
|
Fix struct assign in constexpr
|
2023-10-03 12:47:24 +02:00 |
|
drmortalwombat
|
4e6769d81c
|
Add <new> header file
|
2023-10-02 18:43:58 +02:00 |
|
drmortalwombat
|
c53a288d0b
|
Optimize index chains
|
2023-10-01 21:48:09 +02:00 |
|
drmortalwombat
|
235437be56
|
Fix absolute address high byte propagation error
|
2023-09-30 22:22:33 +02:00 |
|
drmortalwombat
|
078d14861c
|
Some data path optimizations
|
2023-09-30 18:10:03 +02:00 |
|
drmortalwombat
|
c98ff08f56
|
Fix infinite loop eating the entry block
|
2023-09-27 18:53:35 +02:00 |
|
drmortalwombat
|
619c4f8962
|
Join consecutive functions in linker
|
2023-09-24 22:22:48 +02:00 |
|
drmortalwombat
|
da29a87477
|
Fix address of array in const declaration to return correct pointer type
|
2023-09-24 11:03:54 +02:00 |
|
drmortalwombat
|
bba8931860
|
Fix const node polution in const param optimization
|
2023-09-23 18:52:26 +02:00 |
|
drmortalwombat
|
cda66f3ec4
|
Function pointer forwarding
|
2023-09-23 18:01:28 +02:00 |
|
drmortalwombat
|
9d8c6991e8
|
Add global optimizer for parameter/return optimizations
|
2023-09-23 14:56:04 +02:00 |
|
drmortalwombat
|
c7f919e22e
|
Bump version number
|
2023-09-20 18:06:48 +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
|
f211eef837
|
Add fold expressions for argument packs
|
2023-09-17 20:34:42 +02:00 |
|
drmortalwombat
|
38274fb4f7
|
Add emplace_back in vector
|
2023-09-17 15:40:05 +02:00 |
|
drmortalwombat
|
c674fc9a8b
|
Add variadic sizeof...
|
2023-09-17 11:39:18 +02:00 |
|
drmortalwombat
|
06ebf85d9d
|
Recursive variadic templates
|
2023-09-17 10:24:28 +02:00 |
|
drmortalwombat
|
935a38607b
|
Bump version number
|
2023-09-14 19:45:55 +02:00 |
|
drmortalwombat
|
d9106be820
|
Lambda in constexpr
|
2023-09-14 12:03:28 +02:00 |
|
drmortalwombat
|
0e6cb5557a
|
Auto parameters in lambdas
|
2023-09-14 10:30:52 +02:00 |
|
drmortalwombat
|
64b3bfa30f
|
Optimize temporary object livetime
|
2023-09-13 19:05:33 +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
|
d94d52b852
|
fix assert in linux autotest
|
2023-09-12 15:44:16 +02:00 |
|
drmortalwombat
|
2b51f20b1c
|
Add lambda
|
2023-09-12 15:36:24 +02:00 |
|
drmortalwombat
|
c926456560
|
Add simple return type deduction
|
2023-09-11 17:49:04 +02:00 |
|
drmortalwombat
|
ab49281b0d
|
Implement operator()
|
2023-09-11 16:19:11 +02:00 |
|
drmortalwombat
|
1b50baf852
|
Fix wrong unicode character in error message
|
2023-09-11 13:03:07 +02:00 |
|
drmortalwombat
|
c1ecf1c281
|
Added bitfields
|
2023-09-11 08:04:09 +02:00 |
|
drmortalwombat
|
3374544ced
|
Fix base type compare in template check
|
2023-09-10 10:28:25 +02:00 |
|
drmortalwombat
|
bd37877c8c
|
Add heap support to constexpr
|
2023-09-09 12:09:05 +02:00 |
|
drmortalwombat
|
4dd3cd967a
|
Add switch, break and continue to constexpr
|
2023-09-08 21:03:18 +02:00 |
|
drmortalwombat
|
ab273181f5
|
First shot implementing constexpr
|
2023-09-08 20:12:38 +02:00 |
|
drmortalwombat
|
cb352fcc7c
|
Bump version number
|
2023-09-04 22:23:00 +02:00 |
|
drmortalwombat
|
e9afd5e284
|
Fix template function included multiple ways
|
2023-08-31 20:17:39 +02:00 |
|
drmortalwombat
|
da9b8f2a42
|
Fix return of const array as pointer
|
2023-08-31 14:13:43 +02:00 |
|
drmortalwombat
|
5b4e5b545d
|
Add or/and/shift to inline assembler
|
2023-08-20 19:06:24 +02:00 |
|
drmortalwombat
|
54296bdd71
|
Add friend classes
|
2023-08-20 15:06:51 +02:00 |
|
drmortalwombat
|
4732f76bd5
|
Add static member variables
|
2023-08-20 14:17:40 +02:00 |
|
drmortalwombat
|
07dc6dc4db
|
Optimize simple virtual with const return to table lookup
|
2023-08-20 12:02:06 +02:00 |
|
drmortalwombat
|
6ff2409596
|
Fix return register optimization in v table call
|
2023-08-20 09:26:26 +02:00 |
|
drmortalwombat
|
bd3c7571c5
|
bump version number
|
2023-08-19 21:57:44 +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
|
b7daafcac8
|
Add list and iterators to opp
|
2023-08-16 16:16:04 +02:00 |
|
drmortalwombat
|
952d087a2b
|
Add using with list of names
|
2023-08-15 13:16:39 +02:00 |
|
drmortalwombat
|
69b46c4b7b
|
Fix namespaces for templates
|
2023-08-15 12:46:57 +02:00 |
|
drmortalwombat
|
50cc2afb52
|
Add template algorithm sort
|
2023-08-15 11:05:52 +02:00 |
|
drmortalwombat
|
ae2fbb6256
|
Global object initialization
|
2023-08-14 18:09:35 +02:00 |
|
drmortalwombat
|
80426d974c
|
Add RValue Reference
|
2023-08-13 20:53:39 +02:00 |
|
drmortalwombat
|
61f8b68c2f
|
Fix duplicate member cons/destructor if class included from multiple cpp
|
2023-08-13 11:00:02 +02:00 |
|
drmortalwombat
|
9d6691cf91
|
Copy constructor and destruct for scalar types
|
2023-08-12 18:19:46 +02:00 |
|
drmortalwombat
|
cb5451b9b9
|
Automatic function template expansion
|
2023-08-12 15:25:30 +02:00 |
|
drmortalwombat
|
5b7334bb17
|
Add placement new and destructor call
|
2023-08-11 19:04:13 +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
|
c46870ec10
|
bump version number
|
2023-08-07 17:50:17 +02:00 |
|
drmortalwombat
|
0f31a4e8c6
|
Add error for overlapping data sections
|
2023-08-07 16:06:34 +02:00 |
|
drmortalwombat
|
0d95a74813
|
Add cartridge bank lookup for lables in asm file
|
2023-08-07 15:50:01 +02:00 |
|
drmortalwombat
|
1407d9d948
|
Add function default parameters
|
2023-08-06 15:21:11 +02:00 |
|
drmortalwombat
|
8161ff88a8
|
Fix crash on infinite macro expansion
|
2023-08-06 11:51:11 +02:00 |
|
drmortalwombat
|
1931f25475
|
Add struct member initializer
|
2023-08-05 21:52:44 +02:00 |
|
drmortalwombat
|
58ab6818ed
|
Add alignment for functions
|
2023-08-03 13:34:23 +02:00 |
|
drmortalwombat
|
eac12e4559
|
Fix cpp compare of two derived pointers
|
2023-08-02 22:29:10 +02:00 |
|
drmortalwombat
|
f3eb6e19cf
|
Fix linux build
|
2023-08-02 16:52:45 +02:00 |
|
drmortalwombat
|
ec15336174
|
Fix stack allocation with false recursion with function pointers
|
2023-08-01 22:17:55 +02:00 |
|
drmortalwombat
|
b1a42e5ecf
|
Fix linux build
|
2023-08-01 15:50:11 +02:00 |
|
drmortalwombat
|
19ab2b8d38
|
Fix linux build
|
2023-08-01 13:46:30 +02:00 |
|
drmortalwombat
|
fa218d8dd7
|
Fix adc to inx with wrong address mode
|
2023-07-31 22:53:55 +02:00 |
|
drmortalwombat
|
34c0df228b
|
Bump version number
|
2023-07-30 14:46:32 +02:00 |
|
drmortalwombat
|
8a283cc43b
|
Fix register conflict in short index forwarding
|
2023-07-30 13:57:15 +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
|
ae21bbac09
|
Bump version number
|
2023-07-28 18:59:12 +02:00 |
|
drmortalwombat
|
3664645393
|
Merge branch 'main' of https://github.com/drmortalwombat/oscar64
|
2023-07-28 18:51:34 +02:00 |
|
drmortalwombat
|
02e7f15810
|
Improve outer loop optimizations
|
2023-07-28 18:51:29 +02:00 |
|
Stefan
|
312265c395
|
Support of more platforms
See http://aminet.net/package/dev/cross/oscar64
|
2023-07-27 13:00:07 +02:00 |
|
drmortalwombat
|
4c5a9c3b70
|
Fix over eager register promotion
|
2023-07-26 22:48:15 +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
|
d8f31b170d
|
Mangle constructor name
|
2023-07-25 14:37:00 +02:00 |
|
drmortalwombat
|
07323b12f9
|
Static init of structs with base classes
|
2023-07-25 11:19:00 +02:00 |
|
drmortalwombat
|
adda4044ca
|
Complete value forwardign abs,x and abs,y
|
2023-07-24 22:23:37 +02:00 |
|
drmortalwombat
|
df28d2f83f
|
Value forwarding abs,x and abs,y
|
2023-07-24 22:19:35 +02:00 |
|
drmortalwombat
|
6cfa24b8ad
|
Fix over eager constant propagation
|
2023-07-24 19:03:34 +02:00 |
|
drmortalwombat
|
b8a993aa34
|
Bump version number
|
2023-07-23 18:23:11 +02:00 |
|
drmortalwombat
|
893aa7effa
|
Add late inlining step
|
2023-07-23 17:41:56 +02:00 |
|
drmortalwombat
|
33b7bee047
|
Fastcall for virtual functions
|
2023-07-23 13:51:24 +02:00 |
|
drmortalwombat
|
9b2d90ec58
|
Add autotest for string stream
|
2023-07-23 11:19:26 +02:00 |
|
drmortalwombat
|
bd6db60802
|
Add iostream library
|
2023-07-20 14:46:10 +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
|
fa60c2e658
|
Improve operator overloading
|
2023-07-14 07:48:48 +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
|
66631c915b
|
Prefix and inc operator overload
|
2023-07-09 10:52:11 +02:00 |
|
drmortalwombat
|
0bab98ccc6
|
Optimize short signed table access
|
2023-07-08 22:20:42 +02:00 |
|
drmortalwombat
|
a46cf3a0d3
|
Add virtual destructor
|
2023-07-08 22:04:55 +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
|
0b79d44345
|
Fix location of error message of duplicate function definition
|
2023-07-03 22:39:24 +02:00 |
|
drmortalwombat
|
1e9e426758
|
Fix wrong enum type check
|
2023-07-03 16:44:47 +02:00 |
|
drmortalwombat
|
6c7347310b
|
Init const copy construction
|
2023-07-02 20:48:46 +02:00 |
|
drmortalwombat
|
ef0a79b8f0
|
Index operator overload
|
2023-07-02 18:21:40 +02:00 |
|
drmortalwombat
|
7f6cf654f6
|
Implemented new and delete operators
|
2023-07-02 16:34:17 +02:00 |
|
drmortalwombat
|
291ff890e6
|
Change heap layout for vector delete
|
2023-07-02 13:36:02 +02:00 |
|
drmortalwombat
|
7858c2135b
|
Add malloc/free as intrinsic
|
2023-07-02 12:00:53 +02:00 |
|
drmortalwombat
|
08adc7f1bd
|
Bump version number
|
2023-07-01 10:06:08 +02:00 |
|
drmortalwombat
|
c8fbc15c37
|
Copy propagation on struct return of functionr result
|
2023-07-01 09:27:03 +02:00 |
|
drmortalwombat
|
1b73df7e25
|
const member functions
|
2023-06-29 18:11:11 +02:00 |
|
drmortalwombat
|
fa9aa9c2bb
|
Visibility in base classes
|
2023-06-29 16:34:38 +02:00 |
|
drmortalwombat
|
3d6b60c9f4
|
Implement base class constructors
|
2023-06-28 22:14:29 +02:00 |
|
drmortalwombat
|
478f93922d
|
Error on pointer/integer compare
|
2023-06-27 18:16:13 +02:00 |
|
drmortalwombat
|
a41c3d445b
|
Add class, public, private and protected keywords
|
2023-06-27 17:18:12 +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
|
0f67f7150f
|
Fix linux build
|
2023-06-25 16:16:26 +02:00 |
|
drmortalwombat
|
6b753c1418
|
Destructor tracking of temporary variables
|
2023-06-25 14:25:29 +02:00 |
|
drmortalwombat
|
56740b630d
|
Member constructor and destructor
|
2023-06-22 19:17:45 +02:00 |
|
drmortalwombat
|
a854133f8e
|
Fix over eager global address progpagation
|
2023-06-22 14:04:18 +02:00 |
|
drmortalwombat
|
04eeedb0b9
|
Object destruction on break, continue and return
|
2023-06-21 22:30:28 +02:00 |
|
drmortalwombat
|
9bcec5bf17
|
Destructors when leaving scopes the normal way
|
2023-06-21 22:07:00 +02:00 |
|
drmortalwombat
|
daf412a47b
|
Add default constructor
|
2023-06-20 17:16:22 +02:00 |
|
drmortalwombat
|
e577791252
|
Constructors with parameter overloading
|
2023-06-20 10:26:49 +02:00 |
|
drmortalwombat
|
b008d39eae
|
Function overloading in cpp mode
|
2023-06-18 20:27:20 +02:00 |
|
drmortalwombat
|
f72048383a
|
Access to member variables in member functions
|
2023-06-18 16:37:53 +02:00 |
|
drmortalwombat
|
9e92c2863a
|
Add member functions in cpp mode
|
2023-06-18 14:41:23 +02:00 |
|
drmortalwombat
|
37416a61cb
|
Add struct inheritance in cpp mode
|
2023-06-18 10:20:50 +02:00 |
|
drmortalwombat
|
b8478348ed
|
Fix nullptr reference cause assert in linux
|
2023-06-18 09:24:50 +02:00 |
|
drmortalwombat
|
7b40aa59a1
|
Add references for cpp mode
|
2023-06-17 21:07:31 +02:00 |
|
drmortalwombat
|
fd391690b9
|
Add .cpp mode and namespace/using
|
2023-06-17 15:08:03 +02:00 |
|
drmortalwombat
|
433270f90f
|
Fix global analyzer not following recursive structs
|
2023-06-16 16:29:08 +02:00 |
|
drmortalwombat
|
0f182d2d6d
|
Fix over eager function parameter optimiztion
|
2023-06-16 15:21:30 +02:00 |
|
drmortalwombat
|
c300f6c364
|
Bump version number
|
2023-06-14 17:19:48 +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
|
72687b7581
|
Add compound literals
|
2023-06-10 15:17:57 +02:00 |
|
drmortalwombat
|
ab9ae6bf0e
|
Fix error in intermediate code peephole optimizer
|
2023-06-09 21:21:35 +02:00 |
|
drmortalwombat
|
404e9ad998
|
Bump version number
|
2023-06-08 20:43:37 +02:00 |
|
drmortalwombat
|
e593e2affb
|
Loop optimizations
|
2023-06-08 20:27:11 +02:00 |
|
drmortalwombat
|
d054818aa3
|
Bump version number
|
2023-06-04 17:37:51 +02:00 |
|
drmortalwombat
|
373811f2bb
|
Report error if void result used in condition
|
2023-06-03 18:23:35 +02:00 |
|
drmortalwombat
|
962240f09d
|
Fix init state of 32 vsprites mux
|
2023-06-03 13:01:52 +02:00 |
|
drmortalwombat
|
7c0db6161d
|
Optimize some pointer arithmetic
|
2023-06-01 22:23:08 +02:00 |
|
drmortalwombat
|
5e699a8dc0
|
Optimize signed division by 4 and 8
|
2023-06-01 11:22:36 +02:00 |
|
drmortalwombat
|
d80518871a
|
Fix bypass a->y->a chain with tya in middle
|
2023-06-01 08:13:11 +02:00 |
|
drmortalwombat
|
9e985f7f3d
|
Optimize double and shift
|
2023-05-29 21:54:55 +02:00 |
|
drmortalwombat
|
9175257bbc
|
Fix function return source position with implicit return
|
2023-05-28 16:12:12 +02:00 |
|
drmortalwombat
|
d6faefb5fc
|
Propagate static stack usage through recursions
|
2023-05-28 14:30:46 +02:00 |
|
drmortalwombat
|
a4faf204cb
|
Fix enums in debug output
|
2023-05-27 14:17:30 +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
|
400017bc54
|
Assign function exit code to first return statement
|
2023-05-21 21:14:00 +02:00 |
|
drmortalwombat
|
cdbb24b6b2
|
Add iecbus library
|
2023-05-21 17:19:26 +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
|
f8d69f7945
|
Add "enter" and "leave" attributes to dbj for local variables
|
2023-05-17 18:27:09 +02:00 |
|
drmortalwombat
|
d4caa6bb71
|
Optimize right shift of byte values with variable shift distance
|
2023-05-16 19:07:59 +02:00 |
|
drmortalwombat
|
5b0fe1e050
|
Fix clang warnings
|
2023-05-14 19:07:10 +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
|
30c602d468
|
Fix missing enums in dbj files
|
2023-05-11 09:39:00 +02:00 |
|
drmortalwombat
|
a9651a4f2e
|
Optimize combining bits using shift
|
2023-05-07 20:55:35 +02:00 |
|
drmortalwombat
|
7b16d2c795
|
Bump version number
|
2023-05-07 18:03:08 +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
|
df733d09a8
|
Fix add cross move in native code optimizer
|
2023-05-01 19:16:25 +02:00 |
|
drmortalwombat
|
30b3ed610e
|
Keep unused variable stores if optimization is turned off
|
2023-05-01 17:10:27 +02:00 |
|
drmortalwombat
|
d047152646
|
Reduce line number toggling in debug file
|
2023-05-01 15:38:48 +02:00 |
|
drmortalwombat
|
b1fc2e3736
|
Add __bankof operator
|
2023-04-30 18:35:04 +02:00 |
|
drmortalwombat
|
ac7e1d5867
|
Fix over eager function parameter optimization
|
2023-04-16 22:56:58 +02:00 |
|
drmortalwombat
|
2d2d030145
|
Fix dbj "member" name having a space
|
2023-04-16 14:51:35 +02:00 |
|
drmortalwombat
|
8ede3abcab
|
Fix loss of loop head status in native basic blocks
|
2023-04-16 14:05:09 +02:00 |
|
drmortalwombat
|
e5805716e2
|
Fix propagation of volatile flags
|
2023-04-15 21:53:33 +02:00 |
|
drmortalwombat
|
bb00b5af12
|
Add more generic cartridge support
|
2023-04-14 18:40:27 +02:00 |
|
drmortalwombat
|
6308f22f25
|
Fix warnings
|
2023-04-12 19:02:27 +02:00 |
|
drmortalwombat
|
4c8d7a08d0
|
Do not add optimized away local variables to dbj file
|
2023-04-11 20:45:47 +02:00 |
|
drmortalwombat
|
78e48c75fd
|
Auto place globals in zero page with -Oz option
|
2023-04-10 18:26:59 +02:00 |
|
drmortalwombat
|
e23ab50512
|
Add local variables to debug file
|
2023-04-09 19:19:57 +02:00 |
|
drmortalwombat
|
373ef6ca85
|
Add local variables to .dbj files
|
2023-04-09 10:05:01 +02:00 |
|
drmortalwombat
|
85df217c50
|
Add warning for const integer truncation
|
2023-04-09 09:45:13 +02:00 |
|
drmortalwombat
|
d5c347da9b
|
Add vera sprite image
|
2023-04-07 15:47:08 +02:00 |
|
drmortalwombat
|
6ff2038b0e
|
Add commander X16 VERA library
|
2023-04-06 21:53:47 +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
|
62c3c4ab90
|
Bump version number
|
2023-04-02 19:54:45 +02:00 |
|
drmortalwombat
|
32ea493c17
|
Prepare per function optimization config using pragmas
|
2023-04-02 19:04:10 +02:00 |
|
drmortalwombat
|
4a2e417e31
|
Add quotes to attribute names in dbj export
|
2023-03-31 17:51:09 +02:00 |
|
drmortalwombat
|
0555f3d75d
|
Bump version number
|
2023-03-29 19:45:08 +02:00 |
|
drmortalwombat
|
2f1172076a
|
Add source level debug information
|
2023-03-28 21:01:17 +02:00 |
|
drmortalwombat
|
451eaca2b2
|
Bump version number
|
2023-03-26 14:35:07 +02:00 |
|
drmortalwombat
|
36a57c87d8
|
Add commander x16 as target machine
|
2023-03-24 21:06:27 +01: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
|
ba2a90030c
|
Improved striped array pointer propagation
|
2023-03-19 17:36:03 +01:00 |
|
drmortalwombat
|
f354e5bf88
|
Bump Version Number
|
2023-03-18 19:07:59 +01:00 |
|
drmortalwombat
|
a584f74788
|
More native code common subexpression elimination
|
2023-03-18 19:02:05 +01:00 |
|
drmortalwombat
|
9c5e018c5a
|
More simple common subexpression elimination in native code
|
2023-03-17 09:32:22 +01:00 |
|
drmortalwombat
|
2479ec5dd8
|
Fix const void pointer assignment check
|
2023-03-15 22:53:19 +01:00 |
|
drmortalwombat
|
485282019b
|
Optimize 8bit add and pointer access
|
2023-03-15 17:58:49 +01:00 |
|
drmortalwombat
|
66d17d6df4
|
Bump version number
|
2023-03-14 22:18:43 +01:00 |
|
drmortalwombat
|
da29f1c0a5
|
Fix gcc build
|
2023-03-14 21:53:50 +01:00 |
|
drmortalwombat
|
7617029652
|
More volatile checks
|
2023-03-14 20:51:54 +01:00 |
|
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
|
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 |
|