Jakub Doka
|
bb625a9e19
|
some cleanump and ironing out bugs in new regalloc
|
2024-11-15 12:04:05 +01:00 |
|
Jakub Doka
|
81cf39b602
|
adding more info for assert
|
2024-11-14 21:57:51 +01:00 |
|
Jakub Doka
|
e4da9cc927
|
adding regalloc, fixing needless semicolon insertion
|
2024-11-14 21:50:10 +01:00 |
|
Jakub Doka
|
454b0ffd1c
|
adding regalloc option
|
2024-11-14 21:34:31 +01:00 |
|
Jakub Doka
|
981c17ff19
|
fixing function destinations
|
2024-11-14 20:25:52 +01:00 |
|
Jakub Doka
|
d01e31b203
|
fixing stack return values
|
2024-11-13 16:18:21 +01:00 |
|
Jakub Doka
|
9cb273a04b
|
edge case of returning stack from inlined function
|
2024-11-13 15:56:37 +01:00 |
|
Jakub Doka
|
2e2b7612d9
|
some cleanup
|
2024-11-13 15:45:45 +01:00 |
|
Jakub Doka
|
f493c2776f
|
forgot to fix return
|
2024-11-13 15:27:35 +01:00 |
|
Jakub Doka
|
f77bc52465
|
fixing unchanged parsed file
|
2024-11-13 15:25:27 +01:00 |
|
Jakub Doka
|
f524013c34
|
making use of zero register
|
2024-11-13 10:28:16 +01:00 |
|
Jakub Doka
|
3c86eafe72
|
fixing another problem with rescheduling
|
2024-11-13 08:49:25 +01:00 |
|
Jakub Doka
|
0d87bf8f09
|
removing browser from nontest envs
|
2024-11-12 22:30:10 +01:00 |
|
Jakub Doka
|
e5a4561f07
|
very funny fix
|
2024-11-12 21:54:23 +01:00 |
|
Jakub Doka
|
b71031c146
|
prolly fix
|
2024-11-12 21:12:57 +01:00 |
|
Jakub Doka
|
dd51961fbb
|
adding assert for better error
|
2024-11-12 21:10:42 +01:00 |
|
Jakub Doka
|
63f2a0dac0
|
well...
|
2024-11-12 20:59:12 +01:00 |
|
Jakub Doka
|
4ec88e3397
|
adding pointer edgecase
|
2024-11-12 20:42:04 +01:00 |
|
Jakub Doka
|
f1e715e9bd
|
refactoring truncation
|
2024-11-12 19:02:29 +01:00 |
|
Jakub Doka
|
80fd0e89b4
|
fixing the inline flag delegation with generic functions
|
2024-11-12 17:32:20 +01:00 |
|
Jakub Doka
|
9949086011
|
allowing eca in inline functions
|
2024-11-12 17:11:39 +01:00 |
|
Jakub Doka
|
c701eb7b6d
|
adding extra test
|
2024-11-12 12:54:36 +01:00 |
|
Jakub Doka
|
f1deab11c9
|
making better peepholes and fixing overoptimization on memory swaps
|
2024-11-12 12:20:08 +01:00 |
|
Jakub Doka
|
f079daa42d
|
removing redundant loop phys
|
2024-11-11 23:33:36 +01:00 |
|
Jakub Doka
|
7cac9382ad
|
we assumed unary operands are at leas 4bytes bit
|
2024-11-11 23:17:13 +01:00 |
|
Jakub Doka
|
ce2f7d2059
|
fixing negation truncation
|
2024-11-11 23:02:02 +01:00 |
|
Jakub Doka
|
f5f9060803
|
adding missing instruction selection
|
2024-11-11 22:36:20 +01:00 |
|
Jakub Doka
|
ad7fb5d0fc
|
adding errors for useless type hints
|
2024-11-11 22:34:42 +01:00 |
|
Jakub Doka
|
d99672b751
|
fixing too strict assert
|
2024-11-11 22:14:54 +01:00 |
|
Jakub Doka
|
7def052749
|
preventing dangling nodes due to cycles in loop phys
|
2024-11-11 21:55:18 +01:00 |
|
Jakub Doka
|
b2eefa5b83
|
removing assert that can cause crashes
|
2024-11-11 09:07:36 +01:00 |
|
Jakub Doka
|
3c35557872
|
fixing type variables in loops
|
2024-11-11 09:06:34 +01:00 |
|
Jakub Doka
|
b6274f3455
|
fixing yet another edge case
|
2024-11-10 20:30:35 +01:00 |
|
Jakub Doka
|
c61efc3933
|
adding inline functions
|
2024-11-10 19:35:48 +01:00 |
|
Jakub Doka
|
654005eea2
|
updating tests
|
2024-11-10 18:59:29 +01:00 |
|
Jakub Doka
|
335e6ec20a
|
fixing nasty aclass clobber priority bug
|
2024-11-10 18:56:33 +01:00 |
|
Jakub Doka
|
1e02efc1eb
|
improving load analisys
|
2024-11-10 17:32:24 +01:00 |
|
Jakub Doka
|
8b98c2ed1b
|
fixing different file imports
|
2024-11-10 12:26:30 +01:00 |
|
Jakub Doka
|
c353d28be0
|
fixing another problem with const
|
2024-11-10 12:03:15 +01:00 |
|
Jakub Doka
|
7865d692a1
|
fixing the rescheduling edgecase
|
2024-11-10 11:04:04 +01:00 |
|
Jakub Doka
|
29a23cec0c
|
removing dbg
|
2024-11-10 10:30:45 +01:00 |
|
Jakub Doka
|
5dce4df2a1
|
fixing more stuff
|
2024-11-10 10:28:02 +01:00 |
|
Jakub Doka
|
42a713aeae
|
fixing wrong instruction selection
|
2024-11-10 09:17:43 +01:00 |
|
Jakub Doka
|
823c78bf74
|
preventing deduplication to cause bugs
|
2024-11-09 15:14:03 +01:00 |
|
Jakub Doka
|
c657084451
|
integer constants can be casted to floats if type is known to be a float
|
2024-11-09 14:02:13 +01:00 |
|
Jakub Doka
|
63a1c7feb4
|
fixing float conversion constant folding
|
2024-11-09 13:54:08 +01:00 |
|
Jakub Doka
|
bedffa9b32
|
fixing constant fmt newline preservation
|
2024-11-09 10:58:57 +01:00 |
|
Jakub Doka
|
b8032aa840
|
wrong index for extend
|
2024-11-09 10:28:53 +01:00 |
|
Jakub Doka
|
65e9f272a8
|
forgotten dbgs
|
2024-11-08 23:03:16 +01:00 |
|
Jakub Doka
|
d2052cd2a3
|
adding back the exit code
|
2024-11-08 21:53:24 +01:00 |
|
Jakub Doka
|
29367d8f8b
|
fixing compiler pulling function destinations out of the loops
|
2024-11-08 20:40:18 +01:00 |
|
Jakub Doka
|
a299bad75b
|
adding some simple provenance checks on return values
|
2024-11-08 11:51:10 +01:00 |
|
Jakub Doka
|
7d48d3beb1
|
adding constants
|
2024-11-08 10:57:58 +01:00 |
|
Jakub Doka
|
68c0248189
|
making type manipulation nicer
|
2024-11-08 10:25:34 +01:00 |
|
Jakub Doka
|
0ef74d89cb
|
putting logger back
|
2024-11-08 08:40:14 +01:00 |
|
Jakub Doka
|
455f70db6e
|
adding better error reporting when compiler crashes errors are now sent trough out buffer
|
2024-11-08 08:36:00 +01:00 |
|
Jakub Doka
|
0374848b28
|
fixing formatter not reporting errors
|
2024-11-07 17:02:22 +01:00 |
|
Jakub Doka
|
513d2c7127
|
removing log line
|
2024-11-07 16:42:57 +01:00 |
|
Jakub Doka
|
9d2f419140
|
fixing messed up flag calculation
|
2024-11-07 16:39:15 +01:00 |
|
Jakub Doka
|
f535ea7b0a
|
ups, left log lines
|
2024-11-07 16:05:16 +01:00 |
|
Jakub Doka
|
be6d0d3f18
|
removing wrong graph query in a peephole
|
2024-11-07 10:47:31 +01:00 |
|
Jakub Doka
|
3ee78f3a31
|
fixing bugs from the new tests
|
2024-11-07 10:43:29 +01:00 |
|
Jakub Doka
|
2bac7c1fb3
|
saving
|
2024-11-07 08:53:11 +01:00 |
|
koniifer
|
b15e66b2af
|
test broken sin function
|
2024-11-06 17:35:01 +00:00 |
|
koniifer
|
d2ba7cc101
|
returning optional issues test
|
2024-11-06 15:17:03 +00:00 |
|
koniifer
|
d3ee72306e
|
optional from eca test
|
2024-11-05 18:07:04 +00:00 |
|
Jakub Doka
|
87cb77a553
|
making a Backend trait to separate the different backends we will have in the fucture
|
2024-11-05 14:52:30 +01:00 |
|
Jakub Doka
|
276d1bb0cf
|
fixing tab indentation in error messages and depell not displaying errors
|
2024-11-05 09:41:57 +01:00 |
|
Jakub Doka
|
5cce904135
|
fixing struct null check on function arguments
|
2024-11-04 19:57:15 +01:00 |
|
Jakub Doka
|
3338d50672
|
nasty bug with rescheduled load
|
2024-11-04 19:18:37 +01:00 |
|
Jakub Doka
|
2e36f32ae0
|
fixing very sneaky bug
|
2024-11-04 12:38:47 +01:00 |
|
Jakub Doka
|
e8f1d2af8c
|
allowing 0 idk
|
2024-11-03 22:54:05 +01:00 |
|
Jakub Doka
|
999b25df8b
|
adding '_ = <expr>' syntax
|
2024-11-03 22:27:37 +01:00 |
|
Jakub Doka
|
61250c906a
|
comparison of non null types to null are now errors
|
2024-11-03 21:31:46 +01:00 |
|
Jakub Doka
|
44fc9c3e2e
|
deferring all null checks after the peepholes
|
2024-11-03 21:13:24 +01:00 |
|
Jakub Doka
|
798000c756
|
little correction
|
2024-11-03 10:23:17 +01:00 |
|
Jakub Doka
|
9de631234d
|
adding unreachable
|
2024-11-03 10:15:03 +01:00 |
|
Jakub Doka
|
843fbddf3b
|
loops in inlined functions now work better
|
2024-11-03 08:59:42 +01:00 |
|
Jakub Doka
|
38a00cbaa0
|
some start for homemade regalloc
|
2024-10-31 14:56:55 +01:00 |
|
Jakub Doka
|
4664240e08
|
eliminating even more todos
|
2024-10-31 11:10:05 +01:00 |
|
Jakub Doka
|
728d563cea
|
eliminating more todos
|
2024-10-31 11:03:58 +01:00 |
|
Jakub Doka
|
56984f08ff
|
eliminating more todos
|
2024-10-31 10:56:59 +01:00 |
|
Jakub Doka
|
3f9f99ff65
|
adding optional values
|
2024-10-31 10:36:18 +01:00 |
|
Jakub Doka
|
9ed3c7ab9e
|
saving
|
2024-10-30 20:20:03 +01:00 |
|
Jakub Doka
|
acacd10ee9
|
microoptimizing bitset
|
2024-10-30 18:42:25 +01:00 |
|
Jakub Doka
|
f6f661cee3
|
finally struct operators fold into constant
|
2024-10-30 14:10:46 +01:00 |
|
Jakub Doka
|
4bfb5f192e
|
fixing the matrix
|
2024-10-30 13:45:19 +01:00 |
|
Jakub Doka
|
ea628c1278
|
saving
|
2024-10-29 20:38:33 +01:00 |
|
Jakub Doka
|
7448339605
|
removing return value temporary optimization sadly
|
2024-10-29 17:03:00 +01:00 |
|
Jakub Doka
|
da7cd5926c
|
unifiing annoying clobber logic
|
2024-10-29 15:15:30 +01:00 |
|
Jakub Doka
|
9cf7933251
|
clobber global loads across functions
|
2024-10-29 15:04:07 +01:00 |
|
Jakub Doka
|
24b9f9e78b
|
adding floating point conversions
|
2024-10-29 14:24:31 +01:00 |
|
Jakub Doka
|
80558ea7e6
|
adding floating point arithmetic
|
2024-10-29 13:36:12 +01:00 |
|
Jakub Doka
|
348d9014e3
|
adding a lot better load elimination
|
2024-10-29 10:31:52 +01:00 |
|
Jakub Doka
|
30bd6103a6
|
cleaning up some code
|
2024-10-29 10:01:37 +01:00 |
|
Jakub Doka
|
97eb985a02
|
removing specific opts from a fucntion and adding them to the general peepholes
|
2024-10-29 09:04:49 +01:00 |
|
Jakub Doka
|
7ef1adf7e2
|
saving
|
2024-10-28 23:38:57 +01:00 |
|
Jakub Doka
|
be828b8c54
|
properly handling cases when stack is referenced by dofferent part of the memory
|
2024-10-28 18:53:36 +01:00 |
|
Jakub Doka
|
b4b3bae104
|
fixing storing struct pointer bug
|
2024-10-28 18:39:42 +01:00 |
|
Jakub Doka
|
33d78fbc52
|
missing scoping
|
2024-10-28 17:22:18 +01:00 |
|