drmortalwombat
|
88c3764f69
|
Bump version number
|
2021-12-13 08:16:01 +01:00 |
|
drmortalwombat
|
4cf62a67ff
|
Optimize jmp to rts
|
2021-12-12 20:34:33 +01:00 |
|
drmortalwombat
|
fefa2e7d9a
|
Optimize jump to rts and simple loop invariants in native code generator
|
2021-12-11 23:04:38 +01:00 |
|
drmortalwombat
|
f7a5c94229
|
Optimize frame enter/leave code in native compiler
|
2021-12-11 12:52:35 +01:00 |
|
drmortalwombat
|
4d14cbe3a5
|
Fix function pointer call detection for fast call selection
|
2021-12-10 08:31:57 +01:00 |
|
drmortalwombat
|
a1fda2b957
|
Fix float parameter and return values
|
2021-12-09 21:38:36 +01:00 |
|
drmortalwombat
|
cf9f38d4dc
|
Fix stacked fastcall invokation
|
2021-12-09 12:11:36 +01:00 |
|
drmortalwombat
|
1ac0c2f46a
|
Fix duplicat check for loop head in native code generator
|
2021-12-08 14:04:32 +01:00 |
|
drmortalwombat
|
18ab7ce079
|
Fix broken left shift optimization due to branch in basic block
|
2021-12-06 22:56:03 +01:00 |
|
drmortalwombat
|
75ea2ee439
|
Add PETSCII string literals
|
2021-12-06 20:54:11 +01:00 |
|
drmortalwombat
|
695d4cf914
|
Minor byte code optimization for absolute arrays
|
2021-12-04 15:26:05 +01:00 |
|
drmortalwombat
|
973e13b776
|
Optimize absolute array addressing
|
2021-12-03 22:49:14 +01:00 |
|
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
|
4f1de9ce89
|
Reduce over eager code movement
|
2021-12-01 19:32:49 +01:00 |
|
drmortalwombat
|
7e07f083a6
|
Fix native code jmp offsets for inline assembly
|
2021-12-01 08:40:36 +01:00 |
|
drmortalwombat
|
f1f3c609fd
|
Join similar instructions on conditional paths
|
2021-11-30 21:32:49 +01:00 |
|
drmortalwombat
|
5549096cf7
|
Limit binary and, or and xor of byte operands to byte operations
|
2021-11-29 22:07:35 +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
|
0ca6ef8894
|
Some bytecode optimizations
|
2021-11-26 22:59:10 +01:00 |
|
drmortalwombat
|
ccd6a50043
|
Optimize byte code interpreter loop
|
2021-11-25 21:42:06 +01:00 |
|
drmortalwombat
|
93174c8e68
|
Add overflow and underflow checking for floats
|
2021-11-24 20:01:08 +01:00 |
|
drmortalwombat
|
84648fbd88
|
Optimizing some pointer arithmetic
|
2021-11-23 21:53:23 +01:00 |
|
drmortalwombat
|
92e01b6298
|
Bump version number
|
2021-11-22 22:29:19 +01:00 |
|
drmortalwombat
|
12aa385e38
|
Optimize bytecode generator
|
2021-11-22 19:49:02 +01:00 |
|
drmortalwombat
|
6007553d03
|
Byte code optimizations
|
2021-11-21 22:53:06 +01:00 |
|
drmortalwombat
|
4af2bc0bb2
|
Add setjmp and longjmp
|
2021-11-20 20:25:53 +01:00 |
|
drmortalwombat
|
4017cc386b
|
Add charwin library and matching code generator optimizations
|
2021-11-18 14:57:43 +01:00 |
|
drmortalwombat
|
594610c302
|
Bump version number
|
2021-11-16 21:00:34 +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
|
5c66e11ca0
|
Fold iny into interpreter loop for byte code
|
2021-11-16 20:24:51 +01:00 |
|
drmortalwombat
|
92b2c34293
|
Byte code size optimizations
|
2021-11-16 12:59:16 +01:00 |
|
drmortalwombat
|
0c3e19741c
|
Optimize byte code size
|
2021-11-16 09:10:39 +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
|
417f65e2c2
|
Byte code generator optimizations
|
2021-11-06 14:29:12 +01:00 |
|
drmortalwombat
|
a8ed15d67b
|
Optimize inline pointer parameters
|
2021-11-05 08:46:59 +01:00 |
|
drmortalwombat
|
d51a30ed2e
|
Fix array type check
|
2021-11-04 18:28:35 +01:00 |
|
drmortalwombat
|
180da3de4a
|
Fix array[] parameters in functions
|
2021-11-04 08:29:54 +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
|
099f3b8a26
|
Fixe unsigned byte signed const comparison
|
2021-11-02 17:18:24 +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
|
2cd7956736
|
Remove stores to global variables that are never read
|
2021-11-01 16:08:37 +01:00 |
|
drmortalwombat
|
d3cba85efe
|
Optimize global variable alias analysis
|
2021-11-01 12:42:03 +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
|
d8ecd34ac6
|
Add #embed preprocessor directive to import binary data
|
2021-10-24 12:34:44 +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
|
c351c6521a
|
Fixed signed char arrays in linker
|
2021-10-21 13:32:20 +02:00 |
|
drmortalwombat
|
00c59ce6a4
|
Fix native code function pointer
|
2021-10-21 10:24:21 +02:00 |
|
drmortalwombat
|
7927df6d41
|
Fix call/return
|
2021-10-20 23:03:37 +02:00 |
|
drmortalwombat
|
9833656fcf
|
More cartridge hacking
|
2021-10-19 22:29:23 +02:00 |
|
drmortalwombat
|
6444428489
|
Prepare cartdridge linking
|
2021-10-19 09:36:30 +02:00 |
|
drmortalwombat
|
6481e119e4
|
Fix various errors triggered by fuzzing
|
2021-10-17 18:20:44 +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
|
194c7a2af4
|
Fix int + pointer operation
|
2021-10-16 23:07:28 +02:00 |
|
drmortalwombat
|
13dd453728
|
Save label file as understood by vice
|
2021-10-16 21:21:44 +02:00 |
|
drmortalwombat
|
55cd076f7b
|
Bump version to 1.1.42
|
2021-10-16 19:51:54 +02:00 |
|
drmortalwombat
|
001e50ae08
|
Complete function struct return
|
2021-10-16 19:46:04 +02:00 |
|
drmortalwombat
|
ed52725a01
|
Remove copies from struct function return
|
2021-10-16 18:17:54 +02:00 |
|
drmortalwombat
|
19a54432f6
|
Struct function return value
|
2021-10-16 16:45:08 +02:00 |
|
drmortalwombat
|
815f64d14c
|
Fix infinite loop unrolling
|
2021-10-16 15:11:05 +02:00 |
|
drmortalwombat
|
c2886e2532
|
Fix infinite for(;;) loop
|
2021-10-16 10:49:11 +02:00 |
|
drmortalwombat
|
545b9a6aba
|
Fix cascaded assignment
|
2021-10-16 10:27:32 +02:00 |
|
drmortalwombat
|
438a926b88
|
Code size optimization
|
2021-10-15 21:52:07 +02:00 |
|
drmortalwombat
|
35a4658f28
|
Fix long offset pointer access in byte code
|
2021-10-14 22:22:31 +02:00 |
|
drmortalwombat
|
1a30d044c8
|
Some peephole optimizations for native code
|
2021-10-14 21:22:03 +02:00 |
|
drmortalwombat
|
9e7773a0f9
|
Add warning for constant out of bound array access
|
2021-10-14 18:15:04 +02:00 |
|
drmortalwombat
|
b415d02907
|
Add binary tree evaluation for large switch statements
|
2021-10-14 17:52:18 +02:00 |
|
drmortalwombat
|
e2e6f4ea01
|
Add command line options for optimization
|
2021-10-14 16:51:59 +02:00 |
|
drmortalwombat
|
fc0f8e2442
|
Fix conditional operator with pointes and arrays
|
2021-10-14 13:15:10 +02:00 |
|
drmortalwombat
|
3c891fb61e
|
Fix 16 bit pointer offsets in native code
|
2021-10-13 22:19:27 +02:00 |
|
drmortalwombat
|
5372d49b50
|
Petscii translation in stdio and conio
|
2021-10-12 17:54:10 +02:00 |
|
drmortalwombat
|
da57ae00c5
|
Add vic include file
|
2021-10-11 22:14:19 +02:00 |
|
drmortalwombat
|
6bd3e3ae97
|
Remove debug code
|
2021-10-10 20:58:38 +02:00 |
|
drmortalwombat
|
d493bddf8d
|
Improve inline assembler parser
|
2021-10-10 20:51:21 +02:00 |
|
drmortalwombat
|
0e59af5122
|
Fix petscii characters changed includes and pragmas
|
2021-10-10 17:30:57 +02:00 |
|
drmortalwombat
|
11af372509
|
More autoinline optimizations
|
2021-10-10 17:14:12 +02:00 |
|
drmortalwombat
|
210b037dbc
|
Remove sign extended byte loads from byte code
|
2021-10-08 23:04:27 +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
|
df152c2f9b
|
Prepare more than 3 operands per inter instruction
|
2021-10-06 17:46:42 +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
|
9618762234
|
Bump version to 1.0.38
|
2021-10-03 20:39:23 +02:00 |
|
drmortalwombat
|
542cb66693
|
Fixes to get dhrystone.c to compile and run
|
2021-10-03 20:35:50 +02:00 |
|
drmortalwombat
|
4a822facaa
|
Optimize inline expansion
|
2021-10-03 11:36:26 +02:00 |
|
drmortalwombat
|
acc87d50fe
|
Limit inline expansion depth
|
2021-10-02 22:39:36 +02:00 |
|
drmortalwombat
|
bf825302aa
|
Add function inline expansion
|
2021-10-02 22:04:42 +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
|
e846caaf1f
|
New release version
|
2021-09-29 21:38:02 +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
|
f205ba1c49
|
Add strlen to base path call on mac
|
2021-09-29 12:53:02 +02:00 |
|
drmortalwombat
|
bc4aea064a
|
Add missing mac include
|
2021-09-29 08:02:20 +02:00 |
|
drmortalwombat
|
22dc083283
|
Cleanup of Mac code
|
2021-09-28 21:09:39 +02:00 |
|
drmortalwombat
|
e2a9cf05ac
|
Add base bat call for mac os
|
2021-09-28 20:54:35 +02:00 |
|
drmortalwombat
|
3a7e74938e
|
Fix doumentation for command line
|
2021-09-28 20:03:26 +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
|
e72d28c243
|
Fix base path in linux
|
2021-09-27 15:19:16 +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
|
f925833884
|
Move executable into bin folder for windows and linux
|
2021-09-25 18:20:32 +02:00 |
|
drmortalwombat
|
6b6122bc07
|
Add full preprocessor support
|
2021-09-24 20:08:42 +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
|
0681c899ae
|
Bump file version
|
2021-09-23 08:28:53 +02:00 |
|
drmortalwombat
|
123da8c155
|
Add charmap pragma
|
2021-09-23 08:26:46 +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
|
9ec846c506
|
Load/Store constant offset propagation across basic blocks
|
2021-09-21 22:49:04 +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
|
3f5f3ee7ea
|
Filenames now full
|
2021-09-21 15:08:05 +02:00 |
|