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 |
|
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
|
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 |
|
drmortalwombat
|
862b8aaf06
|
bump version number
|
2023-01-19 19:33:38 +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
|
2f4b2790f6
|
Register condition block bypassing
|
2023-01-17 08:02:36 +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
|
7c11a5347c
|
Fix over eager move of volatile stores
|
2023-01-13 13:33:34 +01:00 |
|
drmortalwombat
|
a9d3673f4e
|
Optimize left shift by four from byte to int
|
2023-01-12 22:57:19 +01:00 |
|
drmortalwombat
|
d6fcb5f9ca
|
Use CPU register A for single byte parameter and returns
|
2023-01-10 20:41:55 +01:00 |
|
drmortalwombat
|
9a64bcc8b6
|
Fix select operator for string constants
|
2023-01-08 22:29:13 +01:00 |
|
drmortalwombat
|
b04f05b575
|
Optimize signed divide by two
|
2023-01-08 19:17:25 +01:00 |
|
drmortalwombat
|
50d3c843b4
|
Use X instead of A when lda/sta sequence inside TAXA range
|
2023-01-08 10:56:14 +01:00 |
|
drmortalwombat
|
ffe07a6a3c
|
Optimize multiplication with short negative constants
|
2023-01-07 13:41:59 +01:00 |
|
drmortalwombat
|
c105c3b778
|
Fix error in final code size reduction step
|
2023-01-03 21:48:50 +01:00 |
|
drmortalwombat
|
59d77504c8
|
Fix compile time load of const striped array data
|
2023-01-01 18:34:52 +01:00 |
|
drmortalwombat
|
57449e3f4a
|
Optimize adds to ors when possible
|
2022-12-30 20:20:49 +01:00 |
|
drmortalwombat
|
425aae8f72
|
Fix pointer register loss while forwarding index
|
2022-12-30 15:55:03 +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
|
cdd7a15a42
|
Fix half pointer cross block move
|
2022-12-18 10:02:16 +01:00 |
|
drmortalwombat
|
e202f8e5b5
|
Bump version number
|
2022-12-13 20:16:11 +01:00 |
|
drmortalwombat
|
ac0f4d232e
|
Fix .d64 layout
|
2022-12-13 08:49:05 +01:00 |
|
drmortalwombat
|
de3c7415b3
|
Fix error in recursive macro expansion
|
2022-12-13 08:18:25 +01:00 |
|
drmortalwombat
|
0055911491
|
Add overlay support
|
2022-12-10 17:15:25 +01:00 |
|
drmortalwombat
|
0aa9ca0c70
|
Bump Version number
|
2022-12-10 16:15:04 +01:00 |
|
drmortalwombat
|
5bb21b3b0a
|
Fix block allocator for .d64 generator
|
2022-12-09 15:45:40 +01:00 |
|
drmortalwombat
|
50ae45a533
|
Bump version number
|
2022-12-06 19:07:59 +01:00 |
|
drmortalwombat
|
3edd541750
|
Fix over eager forwarding of global addresses across loop boundaries
|
2022-12-06 18:29:37 +01:00 |
|
drmortalwombat
|
f56fb9e505
|
Fix crash in optimizer when declaring too many unused local variables
|
2022-12-06 15:55:31 +01:00 |
|
drmortalwombat
|
8b631d564e
|
Add autotest for striped arrays
|
2022-12-03 13:28:03 +01:00 |
|
drmortalwombat
|
9c6b745993
|
Fix self destruct of load store forwarding dict
|
2022-11-30 22:47:13 +01:00 |
|
drmortalwombat
|
ec31b845b8
|
Fix type check of pointers derived by address of operator
|
2022-11-30 15:07:06 +01:00 |
|
drmortalwombat
|
bfe6311ca4
|
Add assignment of structs from and to striped arrays
|
2022-11-29 18:11:42 +01:00 |
|
drmortalwombat
|
02e4d4bd1b
|
Optimize indexing in loops
|
2022-11-26 14:12:13 +01:00 |
|
drmortalwombat
|
bc058a1c80
|
Known zero register value propagation
|
2022-11-25 22:31:23 +01:00 |
|
drmortalwombat
|
ebe9476bcc
|
Fix strided array unsigned struct member assignment
|
2022-11-24 18:15:16 +01:00 |
|
drmortalwombat
|
688fd92a6b
|
Bump version number
|
2022-11-22 20:25:03 +01:00 |
|
drmortalwombat
|
a5a27c039e
|
Fix __asume declaration in loop causing loss of temp chain
|
2022-11-20 17:35:31 +01:00 |
|
drmortalwombat
|
c6d0f44364
|
Fix unsigend int to/from float conversion
|
2022-11-19 10:58:44 +01:00 |
|
drmortalwombat
|
42b4f46356
|
Add striped array memory layout
|
2022-11-16 08:59:02 +01:00 |
|
drmortalwombat
|
6283f5f9e6
|
Improve accu train movement
|
2022-11-09 18:06:33 +01:00 |
|
drmortalwombat
|
54955b6b5f
|
Bump version number
|
2022-10-29 10:59:20 +02:00 |
|
drmortalwombat
|
93943f8f87
|
Fix pre decrement operator l value return type
|
2022-10-25 17:12:36 +02:00 |
|
drmortalwombat
|
44bd9cf595
|
Fix const enum type check
|
2022-10-25 11:02:00 +02:00 |
|
drmortalwombat
|
04624f208c
|
Fix multiply add 2n + 1
|
2022-10-23 17:02:34 +02:00 |
|
drmortalwombat
|
0aee1ad452
|
Code size reduction for jmp to rts
|
2022-10-22 18:21:45 +02:00 |
|
drmortalwombat
|
7271106397
|
bump version number
|
2022-10-17 08:00:35 +02:00 |
|
drmortalwombat
|
ef7b391da0
|
Fix 16 bit indexed ops lost high byte offset
|
2022-10-16 16:05:55 +02:00 |
|
drmortalwombat
|
e52e554fec
|
Add warning for missing return statement
|
2022-10-16 14:06:27 +02:00 |
|
drmortalwombat
|
4ff762b711
|
Add warning/error for unassigned variable access
|
2022-10-16 13:33:20 +02:00 |
|
drmortalwombat
|
8ee390a532
|
Fix negative array access in native code path propagation
|
2022-10-16 10:49:51 +02:00 |
|
drmortalwombat
|
77010a0ab2
|
Fix propagation of volatile memory reads in loops
|
2022-10-15 17:44:49 +02:00 |
|
drmortalwombat
|
53e4019ecd
|
Fix 2D array access
|
2022-10-15 10:50:28 +02:00 |
|
drmortalwombat
|
634b7914ea
|
Fix movement of LDY/STY pair that conflicts with Z flag usage
|
2022-10-13 22:43:50 +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
|
4daecdc51a
|
Optimize select statement
|
2022-10-03 18:56:17 +02:00 |
|
drmortalwombat
|
3e59f47748
|
Loop index optimizations
|
2022-10-03 10:50:24 +02:00 |
|
drmortalwombat
|
27a227501a
|
Bump version number
|
2022-09-29 15:40:22 +02:00 |
|
drmortalwombat
|
0c633d114c
|
Added late stage loop optimization for indexed offset addressing
|
2022-09-29 15:32:00 +02:00 |
|
drmortalwombat
|
3907068014
|
Fix over eager down movement of xy load store
|
2022-09-25 16:41:21 +02:00 |
|
drmortalwombat
|
121f0476e1
|
Bump version number
|
2022-09-24 14:31:09 +02:00 |
|
drmortalwombat
|
03be76f7f5
|
Fix postcondition in false branch of integer range estimation after signed less than comparison
|
2022-09-22 21:57:37 +02:00 |
|
drmortalwombat
|
259abf4c4b
|
Improve compiler speed
|
2022-09-20 15:01:47 +02:00 |
|
drmortalwombat
|
01365c38b7
|
Move more invariants out of complex loops
|
2022-09-18 12:59:01 +02:00 |
|
drmortalwombat
|
d1c22573da
|
Bump version number
|
2022-09-17 23:03:44 +02:00 |
|
drmortalwombat
|
5156055e53
|
Fix index subtract using wrong direction
|
2022-09-17 22:57:01 +02:00 |
|
drmortalwombat
|
0835b90219
|
Optimize negative const offsets in array index
|
2022-09-17 22:36:17 +02:00 |
|
drmortalwombat
|
bd2e198339
|
Fix loop exit condition z when using xy as loop invariants
|
2022-09-17 18:33:48 +02:00 |
|
drmortalwombat
|
49a822afbf
|
Fix load int range estimation
|
2022-09-17 16:15:35 +02:00 |
|
drmortalwombat
|
31dfc702ab
|
Fix lingering branch in idle loop elimination
|
2022-09-14 08:21:53 +02:00 |
|
drmortalwombat
|
03b5a0655a
|
Bump version number
|
2022-09-13 22:10:58 +02:00 |
|
drmortalwombat
|
840175d218
|
More accu train movement
|
2022-09-13 22:08:02 +02:00 |
|
drmortalwombat
|
38fab44cca
|
Dump cartridge bank usage to map file
|
2022-09-13 09:55:38 +02:00 |
|
drmortalwombat
|
8c19b1f148
|
Add heapsize and stacksize pragmas and check in linker
|
2022-09-12 22:01:58 +02:00 |
|
drmortalwombat
|
f0c36c6400
|
Propagate sign and zero information cross branches
|
2022-09-11 11:50:57 +02:00 |
|
drmortalwombat
|
612e88456c
|
Bump version number
|
2022-09-10 16:56:49 +02:00 |
|
drmortalwombat
|
e50f3f9814
|
Fix lenient semicolon handling in parser
|
2022-09-10 10:05:44 +02:00 |
|
drmortalwombat
|
8287f03f49
|
Fix shortcut moves violating carry dependencies
|
2022-09-04 23:05:52 +02:00 |
|
drmortalwombat
|
b6a02550f9
|
Shortcut move from zp to parameter registers
|
2022-09-04 20:23:06 +02:00 |
|
drmortalwombat
|
9f1205a6cd
|
bump version number
|
2022-08-27 22:33:34 +02:00 |
|
drmortalwombat
|
6014018f4e
|
Improve XY usage in 16 bit arithmetic
|
2022-08-27 16:52:27 +02:00 |
|
drmortalwombat
|
5435e1c930
|
Improve register allocation in complex loops
|
2022-08-27 15:23:50 +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
|
49330ce101
|
Extend zero bank crt copy to $3f00 bytes instead of $3800
|
2022-08-22 14:22:56 +02:00 |
|
drmortalwombat
|
eafe13e557
|
Fix carray propagation in 16bit subtract with low byte const
|
2022-08-20 14:03:46 +02:00 |
|
drmortalwombat
|
1805e311b8
|
Add data flow calculation before moving const op ups to fix change of used dst temps in other branch
|
2022-08-15 22:08:00 +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
|
b9396542f0
|
Add page level unrolling
|
2022-08-07 22:29:33 +02:00 |
|
drmortalwombat
|
4d274f46d7
|
Fix move of 16 bit shft lower part across carry boundary
|
2022-08-06 18:45:37 +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
|
e1a30a25c7
|
Fix data dependency violation in cross diamond movement
|
2022-07-26 19:36:10 +02:00 |
|
drmortalwombat
|
ca37ebff0b
|
Fix native code peephole optimization with wrong type/mode enum
|
2022-07-23 14:50:28 +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
|
67e3071920
|
Fix cascaded indexing with byte postincrement
|
2022-07-12 17:05:23 +02:00 |
|
drmortalwombat
|
4666e7a176
|
Fix single block loop optimization for function call in loop
|
2022-07-12 14:50:55 +02:00 |
|
drmortalwombat
|
0bd2ab9e3c
|
Fix global analyzer for global variable arrays of function pointers
|
2022-07-12 13:08:34 +02:00 |
|
drmortalwombat
|
ae07b2cee6
|
Fix local array of function pointers indexing
|
2022-07-11 09:15:01 +02:00 |
|
drmortalwombat
|
9df036f4d4
|
Fix uninitialized variable
Fixed uninitialized variable in intermediate code generation leading to divergent windows and linux builds
|
2022-07-10 16:09:39 +02:00 |
|
drmortalwombat
|
f3197d641c
|
Rebuild intermediate data flow set after final basic block merge
|
2022-07-10 15:41:51 +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
|
931f9e71b9
|
Optimize bit check to bool conversion
|
2022-07-03 22:41:41 +02:00 |
|
drmortalwombat
|
eb55b2f55d
|
Remove dangling tail recursion rts after jmp
|
2022-07-03 13:13:32 +02:00 |
|
drmortalwombat
|
bcc59a9afb
|
Add intermediat code select operator
|
2022-07-02 14:53:00 +02:00 |
|
drmortalwombat
|
ba661759fb
|
Fix reordering of function calls
|
2022-06-30 20:28:36 +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
|
2eeef2d71c
|
Fix data dependency lost due to instruction reshuffling
|
2022-06-22 22:09:32 +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
|
ecfb206d1c
|
Improve zero page register allocator
|
2022-06-19 15:20:53 +02:00 |
|
drmortalwombat
|
5000d521a1
|
Intermediate code generator cleanup
|
2022-06-18 20:21:41 +02:00 |
|
drmortalwombat
|
fc7bb2c377
|
Optimize parameter handling in loops
|
2022-06-18 17:32:14 +02:00 |
|
drmortalwombat
|
e7332192c0
|
Fix over eager elimination of byte to word conversion
|
2022-06-14 22:29:42 +02:00 |
|
drmortalwombat
|
d37980e73c
|
Bump version number
|
2022-06-12 13:46:19 +02:00 |
|
drmortalwombat
|
6e37060c24
|
More aggressive reverse value range limit forwarding
|
2022-06-12 13:39:46 +02:00 |
|
drmortalwombat
|
078007c9fe
|
Fix infinite loop during size reduction
|
2022-06-10 16:36:52 +02:00 |
|
drmortalwombat
|
a81f810a63
|
Size optimizations
|
2022-06-10 15:56:08 +02:00 |
|
drmortalwombat
|
bf6fc7fd0b
|
Add default preprorcessor __STDC__
|
2022-06-07 08:24:12 +02:00 |
|
drmortalwombat
|
a480e5e922
|
Fix overeager load forwarding
|
2022-06-06 22:26:58 +02:00 |
|
drmortalwombat
|
beb8d8e6d7
|
Fix crash on error messages with unnamed objects
|
2022-06-06 22:06:57 +02:00 |
|
drmortalwombat
|
05ecc267ef
|
Bump version number
|
2022-06-06 08:57:17 +02:00 |
|
drmortalwombat
|
e73c40ba55
|
Fixed build issue with hscrollshmup on linux
|
2022-06-06 08:38:08 +02:00 |
|
drmortalwombat
|
36a5eaae00
|
Propagate independent instructions across diamond shaped basic blocks
|
2022-06-04 20:56:28 +02:00 |
|
drmortalwombat
|
f9eb91e980
|
Optimize X and Y usage
|
2022-06-03 19:04:05 +02:00 |
|
drmortalwombat
|
0ba2ddf195
|
Propagate x and y across block boundaries
|
2022-06-02 22:19:10 +02:00 |
|
drmortalwombat
|
1b8e1f4048
|
Optimize cmp#0 always has carry set
|
2022-05-30 22:28:36 +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
|
3dc35c5fff
|
Fix invalid bypassing of JSR with X register
|
2022-05-22 16:41:40 +02:00 |
|
drmortalwombat
|
3351ee81cc
|
Extend static stack allocation to zero page spilling
|
2022-05-22 13:22:36 +02:00 |
|
drmortalwombat
|
b356f726a4
|
More local xy register usage
|
2022-05-21 17:17:16 +02:00 |
|
drmortalwombat
|
e0f87c676c
|
Eliminate non existing data dependencies
|
2022-05-21 13:39:12 +02:00 |
|
drmortalwombat
|
b42c992a58
|
Fix buffer overflow in sprintf
|
2022-05-19 08:30:00 +02:00 |
|
drmortalwombat
|
9d18aef634
|
Optimize interval comparison cascades
|
2022-05-15 22:18:42 +02:00 |
|
drmortalwombat
|
46fe117f1f
|
add alias _Bool for bool
|
2022-05-15 10:53:58 +02:00 |
|
drmortalwombat
|
728e707024
|
Optimize single page 2D array access
|
2022-05-14 17:57:32 +02:00 |
|
drmortalwombat
|
3dd61dac4a
|
Fix invalid define of true and false
|
2022-05-14 08:16:26 +02:00 |
|
drmortalwombat
|
e70162b2cc
|
Forward native code instruction if only used on single outgoing path
|
2022-05-12 17:55:24 +02:00 |
|
drmortalwombat
|
b85b222fc0
|
Fix comment detection in defines
|
2022-05-09 08:04:16 +02:00 |
|
drmortalwombat
|
d7b0e54494
|
Fix define with single line comment
|
2022-05-08 21:44:28 +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
|
62d08e139b
|
Optimize pointer arithmetic in loops
|
2022-04-28 15:52:27 +02:00 |
|
drmortalwombat
|
7aec7f5c50
|
Fix crash compiling indexed memcpy size
|
2022-04-25 21:22:25 +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
|
253be26335
|
Constant pointer arithmetic for pointer initializers
|
2022-04-18 22:23:13 +02:00 |
|
drmortalwombat
|
ecb9bbee8a
|
Bump version number
|
2022-04-17 21:12:54 +02:00 |
|
drmortalwombat
|
41a4db4402
|
Prepare compressed embedded data
|
2022-04-17 18:41:53 +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
|
1ee7845bb4
|
Fix disassembler choking on long names
|
2022-04-12 18:22:38 +02:00 |
|
drmortalwombat
|
6331ec5707
|
Fix crash with macro undefine
|
2022-04-11 07:46:50 +02:00 |
|
drmortalwombat
|
e312dddb12
|
Bump version number
|
2022-04-10 22:13:32 +02:00 |
|
drmortalwombat
|
7ed7134b53
|
Remove superfluous temporary move
|
2022-04-10 21:54:12 +02:00 |
|
drmortalwombat
|
6a40fdc75d
|
Opetimize sequence of ADC/SBC in native code
|
2022-04-10 15:29:07 +02:00 |
|
drmortalwombat
|
c635ae8136
|
Optimize const and/or sequences
|
2022-04-10 12:28:39 +02:00 |
|
drmortalwombat
|
546dbfc45a
|
Some add/sub optimizations for global variables
|
2022-04-07 22:45:40 +02:00 |
|
drmortalwombat
|
0be3114e7d
|
Bump version number
|
2022-04-06 19:18:55 +02:00 |
|
drmortalwombat
|
72264109e9
|
Add experimental zero page allocation for global variables
|
2022-04-06 19:16:44 +02:00 |
|
drmortalwombat
|
27dee0223c
|
Cross block value forwarding
|
2022-04-05 16:56:02 +02:00 |
|
drmortalwombat
|
c9e1775469
|
Optimize data forwarding on loop exit
|
2022-04-04 20:25:05 +02:00 |
|
drmortalwombat
|
6b3c5249cf
|
Add \y00 for non adapted characters in s" or p" string literals
|
2022-04-04 16:35:37 +02:00 |
|
drmortalwombat
|
2435797bd1
|
Optimize x and y index order
|
2022-04-03 20:39:56 +02:00 |
|
drmortalwombat
|
9e7139f344
|
Bump version number
|
2022-04-03 11:55:52 +02:00 |
|
drmortalwombat
|
aafb4adfa2
|
Optimize linker placement, avoiding array crossing page boundaries
|
2022-04-03 11:40:23 +02:00 |
|
drmortalwombat
|
58c99a5dca
|
Add left alignment in padding for printf
|
2022-04-02 13:36:15 +02:00 |
|
drmortalwombat
|
358def836d
|
Fix optimization for absolute addressing and two indices
|
2022-04-01 20:35:55 +02:00 |
|
drmortalwombat
|
48f97b6e60
|
Optimize compare to boolean variable
|
2022-03-31 18:16:31 +02:00 |
|
drmortalwombat
|
5a1ff68926
|
Fix binary and/or with boolean values, now raising a warning
|
2022-03-30 14:58:41 +02:00 |
|
drmortalwombat
|
a60f5a783f
|
Optimize X and Y register livespan
|
2022-03-28 19:03:43 +02:00 |
|
drmortalwombat
|
7bd3622bbd
|
Instructions bypassing small if branches
|
2022-03-27 22:41:29 +02:00 |
|
drmortalwombat
|
c24cf916db
|
Bump version number
|
2022-03-27 17:21:23 +02:00 |
|
drmortalwombat
|
d2503aaf1f
|
Constant folding address of global and static variables
|
2022-03-27 17:18:44 +02:00 |
|
drmortalwombat
|
0aacc14287
|
Bump version number
|
2022-03-26 21:42:54 +01:00 |
|
drmortalwombat
|
f50613704c
|
Fix moving of abs store across function call
|
2022-03-26 21:39:30 +01:00 |
|
drmortalwombat
|
68e048b945
|
Fix volatile loads with unused result
|
2022-03-26 12:30:48 +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
|
8c77a5d256
|
Add "16bit * 8bit / 8bit" to fixed point math library
|
2022-03-20 22:53:51 +01:00 |
|
drmortalwombat
|
4538f0295d
|
Fix byte to long conversion
|
2022-03-20 21:33:58 +01:00 |
|
drmortalwombat
|
4dd31f6c69
|
Bump version number
|
2022-03-19 20:05:43 +01:00 |
|
drmortalwombat
|
13f3ea57a3
|
Fix signed unsigned shift with mixed signed arguments
|
2022-03-19 19:46:40 +01:00 |
|
drmortalwombat
|
91cb2fda15
|
Documenting compiler optimizations
|
2022-03-19 14:35:49 +01:00 |
|
drmortalwombat
|
d37ecc44da
|
More documentation
|
2022-03-18 22:29:12 +01:00 |
|
drmortalwombat
|
3d3618876f
|
Bump version number
|
2022-03-15 18:50:15 +01:00 |
|
drmortalwombat
|
dc0951ee9f
|
Order inter instructions into eval trains and sequences, optimize copyloops for size
|
2022-03-15 18:45:34 +01:00 |
|
drmortalwombat
|
a4fa4cd482
|
Basic block struct copy propagation
|
2022-03-14 14:07:09 +01:00 |
|
drmortalwombat
|
a65c802485
|
Address promotion into struct copy inter instructions
|
2022-03-14 08:35:59 +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
|
736298238e
|
Pointer and float loop optimizations
|
2022-03-12 12:52:43 +01:00 |
|
drmortalwombat
|
3cb4bd0fba
|
Fix == instead of = for assignment
|
2022-03-11 13:07:38 +01:00 |
|
drmortalwombat
|
6f52a7beed
|
Loop optimizing index register usage
|
2022-03-10 22:18:09 +01:00 |
|
drmortalwombat
|
6fe9a4f167
|
Fastcall optimization for 2nd and 3rd level calls
|
2022-03-10 16:35:35 +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
|
7e458d1eda
|
More promotion of abs and abs indexed when only single use
|
2022-03-03 19:23:47 +01:00 |
|
drmortalwombat
|
51d447618b
|
Bump version
|
2022-03-03 08:11:02 +01:00 |
|
drmortalwombat
|
9ec2b4fdef
|
Replace JMP with branch when possible
|
2022-03-02 21:18:06 +01:00 |
|
drmortalwombat
|
2a815a9709
|
More forward 8 bit index optimizations
|
2022-03-01 08:53:54 +01:00 |
|
drmortalwombat
|
fbdb513697
|
Optimize single use of global variables in function
|
2022-02-27 17:19:51 +01:00 |
|
drmortalwombat
|
756245694f
|
Optimize indexed static variable access
|
2022-02-26 18:10:23 +01:00 |
|
drmortalwombat
|
2719b1156b
|
Fix over eager livetime reduction of X and Y registers
|
2022-02-26 12:35:59 +01:00 |
|
drmortalwombat
|
f4f9ae1a6a
|
Some xy optimizations
|
2022-02-25 18:43:11 +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
|
8b63d5bb34
|
Shortcut zero page register moves
|
2022-02-20 14:12:01 +01:00 |
|
drmortalwombat
|
46e1caaa4a
|
Some pointer index optimizations
|
2022-02-19 17:14:52 +01:00 |
|
drmortalwombat
|
6ac606c91b
|
Fix compile order based on dependency graph
|
2022-02-19 12:58:51 +01:00 |
|
drmortalwombat
|
6bd3ecb689
|
Fix over eager const expression inliner
|
2022-02-19 12:16:33 +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
|
42f71e264e
|
Fix uninitialized interrupt flag in linux builds
|
2022-02-08 12:58:22 +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
|
3a7ea0837b
|
Fix logic or inversion
|
2022-02-06 17:29:07 +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
|
05d6b3d223
|
Fix table based multiplication for 16bit results
|
2022-02-03 22:10:17 +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
|
3507b09207
|
Optimize PETSCII conversion in charwin
|
2022-02-01 22:00:33 +01:00 |
|
drmortalwombat
|
25ba5ca789
|
Fix absolute const pointer to int cast
|
2022-01-31 22:40:53 +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
|
e1f605b28c
|
Optimize value forwarding and memory alias check
|
2022-01-31 13:33:39 +01:00 |
|
drmortalwombat
|
94efcaeca6
|
Circle drawing in multicolor bitmap
|
2022-01-31 08:08:18 +01:00 |
|
drmortalwombat
|
18be0dfc0b
|
Optimize dynamic code generation
|
2022-01-29 21:55:52 +01:00 |
|
drmortalwombat
|
08d6358932
|
Fix local variable array member forwarding
|
2022-01-29 16:06:47 +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
|
aee284c1d6
|
Add irq autocrawler sample
|
2022-01-28 08:49:21 +01:00 |
|
drmortalwombat
|
dfe3d71f85
|
Make shore memcpy calls intrinsic
|
2022-01-27 23:08:57 +01:00 |
|
drmortalwombat
|
79a841a422
|
Mark vic registers as volatile
|
2022-01-27 16:38:47 +01:00 |
|
drmortalwombat
|
5c8b1c6daf
|
Add __export, __native and __interrupt storage class specifiers
|
2022-01-26 21:48:19 +01:00 |
|
drmortalwombat
|
94532fe038
|
Fix enum size
|
2022-01-26 12:41:12 +01:00 |
|
drmortalwombat
|
792751e3a4
|
Fix error swapping global variables with negation
|
2022-01-25 21:45:33 +01:00 |
|
drmortalwombat
|
0ea87ea322
|
Reduce speculation of integer value range analyzer
|
2022-01-25 21:05:00 +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
|
742866c8c2
|
Enable charmap inside a series of string literals
|
2022-01-22 13:41:24 +01:00 |
|
drmortalwombat
|
9dd493d20b
|
Add sid and easyflash includes
|
2022-01-22 11:16:59 +01:00 |
|
drmortalwombat
|
fad67d18aa
|
Add auto loop unrolling and binary (verbatim) format linking
|
2022-01-21 21:52:16 +01:00 |
|
drmortalwombat
|
cc927d778f
|
Improve C const declaration compatibility
|
2022-01-21 14:42:49 +01:00 |
|
drmortalwombat
|
8b4eff3ee1
|
More constant folding and value propagation
|
2022-01-20 17:43:08 +01:00 |
|
drmortalwombat
|
76322c005d
|
Fix errors introduced with strength reduction
|
2022-01-20 13:39:55 +01:00 |
|
drmortalwombat
|
1c403dfeeb
|
Add strength reduction in trivial loops
|
2022-01-19 20:55:33 +01:00 |
|