drmortalwombat
|
e4d24f1aa4
|
Some native code optimizations
|
2021-12-02 18:41:59 +01:00 |
|
drmortalwombat
|
a66b3873cd
|
Native code optimizations for global arrays
|
2021-12-01 23:00:57 +01:00 |
|
drmortalwombat
|
0b9163afbe
|
Optimize native code branch placement
|
2021-12-01 20:26:28 +01:00 |
|
drmortalwombat
|
7e07f083a6
|
Fix native code jmp offsets for inline assembly
|
2021-12-01 08:40:36 +01:00 |
|
drmortalwombat
|
15c65f69aa
|
Change runtime assembler generator use value and return instead of reference
|
2021-11-29 18:37:15 +01:00 |
|
drmortalwombat
|
a6fa114a5b
|
Add runtime assembler functions to c64 library
|
2021-11-29 17:43:03 +01:00 |
|
drmortalwombat
|
2003f2f4fd
|
Fixed N flag thrashing due to cross block value forwarding
|
2021-11-27 23:33:03 +01:00 |
|
drmortalwombat
|
730fb7513e
|
Fix y register thrashing in peephole optimizer
|
2021-11-27 15:51:17 +01:00 |
|
drmortalwombat
|
d02b438a1a
|
Optimize code size
|
2021-11-27 11:17:15 +01:00 |
|
drmortalwombat
|
84648fbd88
|
Optimizing some pointer arithmetic
|
2021-11-23 21:53:23 +01:00 |
|
drmortalwombat
|
4017cc386b
|
Add charwin library and matching code generator optimizations
|
2021-11-18 14:57:43 +01:00 |
|
drmortalwombat
|
cd77372350
|
Remove superfluous rts from inline assembler blocks that end with a jmp
|
2021-11-16 20:54:10 +01:00 |
|
drmortalwombat
|
2ed784ea17
|
Optimize signed range comparison
|
2021-11-13 15:05:53 +01:00 |
|
drmortalwombat
|
cb5f5f421f
|
Optimize single conditional path value evaluation
|
2021-11-09 22:24:29 +01:00 |
|
drmortalwombat
|
7dddcc772b
|
Some peephole optimizing for native compiler
|
2021-11-08 20:18:40 +01:00 |
|
drmortalwombat
|
5cce611659
|
Fix native code inner loop detection
|
2021-11-08 08:45:43 +01:00 |
|
drmortalwombat
|
931c4d875a
|
Reduce register copy for native code fast calls
|
2021-11-07 17:16:01 +01:00 |
|
drmortalwombat
|
d99940a98e
|
Update to version 1.1.45
|
2021-11-06 20:12:28 +01:00 |
|
drmortalwombat
|
f50eb7cd19
|
Optimizing byte code generator
|
2021-11-06 17:57:24 +01:00 |
|
drmortalwombat
|
a8ed15d67b
|
Optimize inline pointer parameters
|
2021-11-05 08:46:59 +01:00 |
|
drmortalwombat
|
a3d8c94620
|
Push XY register usage in shift to later optimization stage
|
2021-11-03 19:39:28 +01:00 |
|
drmortalwombat
|
f862f4e084
|
Constant folding of pointer plus integer
|
2021-11-03 07:52:12 +01:00 |
|
drmortalwombat
|
f16edb1c57
|
Optimize signed byte comparisons
|
2021-11-01 22:33:02 +01:00 |
|
drmortalwombat
|
40f82ba6ec
|
Fix byte table access
|
2021-11-01 21:22:02 +01:00 |
|
drmortalwombat
|
214ebd93f2
|
Bump version to 1.1.44
|
2021-10-31 20:39:28 +01:00 |
|
drmortalwombat
|
a52c869099
|
Avoid needles store to temps before function call
|
2021-10-31 19:37:54 +01:00 |
|
drmortalwombat
|
135d357dbc
|
Strcpy as intrinsic
|
2021-10-31 19:14:07 +01:00 |
|
drmortalwombat
|
7e340cc816
|
Optimize static and global variable usage
|
2021-10-31 16:22:11 +01:00 |
|
drmortalwombat
|
b9cbf525e9
|
Optimize native code XY index register usage
|
2021-10-30 22:29:32 +02:00 |
|
drmortalwombat
|
640477f88d
|
Add peephole size optimizations
|
2021-10-30 10:42:41 +02:00 |
|
drmortalwombat
|
b64079bf28
|
Optimize some constant shifts
|
2021-10-27 21:01:39 +02:00 |
|
drmortalwombat
|
8ab8b3c2a1
|
Fix negative array indices
|
2021-10-26 14:44:25 +02:00 |
|
drmortalwombat
|
342634d5e4
|
Fix datatflow tracking in shift optimization
|
2021-10-25 21:53:55 +02:00 |
|
drmortalwombat
|
1074c29092
|
Fix register spilling optimization
|
2021-10-24 22:27:08 +02:00 |
|
drmortalwombat
|
480270f4c9
|
Fix array to pointer cast
|
2021-10-24 14:58:06 +02:00 |
|
drmortalwombat
|
42e4f483c1
|
Reduce register spilling on function entry/exit
|
2021-10-23 22:22:49 +02:00 |
|
drmortalwombat
|
e057e24918
|
Added stddef.h
|
2021-10-23 16:51:27 +02:00 |
|
drmortalwombat
|
55b79ecfce
|
Fix struct scoping
|
2021-10-23 11:56:30 +02:00 |
|
drmortalwombat
|
33433403b1
|
Fix optimizer errors
|
2021-10-23 00:33:09 +02:00 |
|
drmortalwombat
|
5010043fc4
|
Optimize struct member access
|
2021-10-17 11:54:15 +02:00 |
|
drmortalwombat
|
3520d2a2bd
|
Fix bugs found by llvm lint
|
2021-10-17 10:40:33 +02:00 |
|
drmortalwombat
|
1a30d044c8
|
Some peephole optimizations for native code
|
2021-10-14 21:22:03 +02:00 |
|
drmortalwombat
|
e2e6f4ea01
|
Add command line options for optimization
|
2021-10-14 16:51:59 +02:00 |
|
drmortalwombat
|
3c891fb61e
|
Fix 16 bit pointer offsets in native code
|
2021-10-13 22:19:27 +02:00 |
|
drmortalwombat
|
11af372509
|
More autoinline optimizations
|
2021-10-10 17:14:12 +02:00 |
|
drmortalwombat
|
32b715382c
|
Add fascall for byte code
|
2021-10-08 17:41:11 +02:00 |
|
drmortalwombat
|
60489bb79e
|
Refactor inter instrction operator handling
|
2021-10-08 09:07:01 +02:00 |
|
drmortalwombat
|
e7231e27e0
|
Prepare fastcall
|
2021-10-07 15:14:23 +02:00 |
|
drmortalwombat
|
fb4ae26afb
|
Prepare access to local variables in inline assembler
|
2021-10-07 10:42:18 +02:00 |
|
drmortalwombat
|
15743d3115
|
Refactor temp handling in inter code
|
2021-10-06 17:30:41 +02:00 |
|
drmortalwombat
|
330e022a43
|
Exclude bss segment from prg file
|
2021-10-05 18:24:03 +02:00 |
|
drmortalwombat
|
542cb66693
|
Fixes to get dhrystone.c to compile and run
|
2021-10-03 20:35:50 +02:00 |
|
drmortalwombat
|
acc87d50fe
|
Limit inline expansion depth
|
2021-10-02 22:39:36 +02:00 |
|
drmortalwombat
|
a0df4e7867
|
Optimize stack frame for simple functions
|
2021-10-02 20:56:01 +02:00 |
|
drmortalwombat
|
30becb541e
|
Add long integer support in native and byte code
|
2021-10-02 17:22:18 +02:00 |
|
drmortalwombat
|
3d9302c90c
|
Support for long integer with byte code
|
2021-10-02 10:06:13 +02:00 |
|
drmortalwombat
|
0c9992f549
|
Native code optimizations
|
2021-10-01 15:54:07 +02:00 |
|
drmortalwombat
|
02305e8bc5
|
Optimize global arrays and const comparisons
|
2021-09-30 20:00:47 +02:00 |
|
drmortalwombat
|
9dfbe405a5
|
Avoid frame pointer in native code if simple stack frame
|
2021-09-29 19:48:57 +02:00 |
|
drmortalwombat
|
4aa82d539b
|
Optimize pointer increment dereference combos
|
2021-09-29 17:34:38 +02:00 |
|
drmortalwombat
|
ef5cb81a18
|
Optimized int shifts ge eight
|
2021-09-29 16:31:17 +02:00 |
|
drmortalwombat
|
e713dc5940
|
Direct embedding of inline assembler in native code
|
2021-09-28 18:35:23 +02:00 |
|
drmortalwombat
|
c4a5dafb69
|
More simple loop optimisations
|
2021-09-28 16:24:44 +02:00 |
|
drmortalwombat
|
9eb5412848
|
Merge changes for Mac build
|
2021-09-27 13:38:45 +02:00 |
|
drmortalwombat
|
bffef3e9dd
|
Basic block tail merging
|
2021-09-26 13:14:56 +02:00 |
|
drmortalwombat
|
2fc414ed6b
|
Byte forwardiong optimisation in native mode
|
2021-09-25 23:08:45 +02:00 |
|
drmortalwombat
|
1dd63ac708
|
Fix byte size inc/dec error
|
2021-09-25 22:50:16 +02:00 |
|
drmortalwombat
|
8e9b0fe54c
|
Add simple native loop optimisation
|
2021-09-25 21:57:33 +02:00 |
|
drmortalwombat
|
fd10525780
|
Add makefile for linux
|
2021-09-24 16:17:20 +02:00 |
|
drmortalwombat
|
5c3ff47690
|
Indirect address, y optimisation for short loops
|
2021-09-23 17:14:02 +02:00 |
|
drmortalwombat
|
4ca77ba41a
|
Byte operand sizes fixes and optimizations
|
2021-09-22 22:49:52 +02:00 |
|
drmortalwombat
|
2cd9a55880
|
Fix various bugs related to byte size operands
|
2021-09-22 15:46:20 +02:00 |
|
drmortalwombat
|
603b62b9d3
|
Optimize native comparison against zero
|
2021-09-21 22:44:00 +02:00 |
|
drmortalwombat
|
eebc39e53a
|
Fix return type coercion, region based linker
|
2021-09-21 20:44:19 +02:00 |
|
drmortalwombat
|
d9c565d898
|
Fix local variables with linker sections
|
2021-09-21 08:41:49 +02:00 |
|
drmortalwombat
|
27d7baaac2
|
Using linker objects and sections
|
2021-09-20 22:36:16 +02:00 |
|
drmortalwombat
|
78886f11f7
|
Native code peephole optimisation for commutative instructions
|
2021-09-20 13:02:38 +02:00 |
|
drmortalwombat
|
c5d1e2351e
|
Add support for assembler function as const initialiser
|
2021-09-19 17:24:48 +02:00 |
|
drmortalwombat
|
1d761886b5
|
Refactor intermediate instructions from value to pointer type
|
2021-09-15 12:01:14 +02:00 |
|
drmortalwombat
|
37828f2baf
|
More byte and long preparations
|
2021-09-14 21:38:24 +02:00 |
|
drmortalwombat
|
e2e20581a6
|
Prepare byte level optimisations
|
2021-09-14 16:34:48 +02:00 |
|
drmortalwombat
|
97bd5aa988
|
Merge address calc into load
|
2021-09-13 17:43:31 +02:00 |
|
drmortalwombat
|
8de4bef436
|
Improved value forwarding across conditiona branches
|
2021-09-12 22:32:31 +02:00 |
|
drmortalwombat
|
bb4680845e
|
Fix float x+x optimisation
|
2021-09-12 15:18:07 +02:00 |
|
drmortalwombat
|
ebdd6f0d7d
|
Add fixed offset to pointer base mem access
|
2021-09-12 14:17:21 +02:00 |
|
drmortalwombat
|
82d499fdae
|
Native code compiler is functional same level as byte code
Runs all the autotests now in byte code and native code
|
2021-09-11 22:21:57 +02:00 |
|
drmortalwombat
|
897de02adf
|
Fix unnamed parameters in function prototype
|
2021-09-11 16:05:31 +02:00 |
|
drmortalwombat
|
93b6aca8a3
|
More native code generator
|
2021-09-11 15:01:32 +02:00 |
|
drmortalwombat
|
07f797e577
|
Formatting options in printf
|
2021-09-10 16:13:47 +02:00 |
|
drmortalwombat
|
fd1626bf16
|
Byte level dataflow analysis of native code
|
2021-09-09 23:13:03 +02:00 |
|
drmortalwombat
|
f08d847a64
|
More native code optimisations
|
2021-09-09 20:23:59 +02:00 |
|
drmortalwombat
|
3442ee507a
|
Fix floating point native code generation
|
2021-09-09 09:42:02 +02:00 |
|
drmortalwombat
|
fcedf69aff
|
More native code compiler additions
|
2021-09-08 22:04:01 +02:00 |
|
drmortalwombat
|
056df56eef
|
First shot native code generator
Implements basic load, store compare and add/sub/shift for native compiled functions
|
2021-09-07 22:35:11 +02:00 |
|
drmortalwombat
|
722347609d
|
Fix array of array of char init with strings
|
2021-09-07 13:37:56 +02:00 |
|