Jakub Doka
|
5a7a01ca02
|
adding the stack offset elision for return values as well
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-15 17:57:22 +01:00 |
|
Jakub Doka
|
f9c47f86ad
|
fixing a glaring bug, where the elidded offset is also offset
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-15 17:42:20 +01:00 |
|
Jakub Doka
|
48a0c8d0b9
|
POC for removeing needless stack offset computes when only value is used
TBD: there are far more cases where this will apply
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-15 17:17:41 +01:00 |
|
Jakub Doka
|
00f6729d31
|
supporting ascii literals
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-14 21:02:29 +01:00 |
|
Jakub Doka
|
dc96c8b10a
|
the items accesed outside the nested scope no longer get duplicated
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-14 18:50:13 +01:00 |
|
Jakub Doka
|
5aeeedbdce
|
fixing non pointer struct method receiver not counting as use
forgot to strip pointer
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-14 15:19:02 +01:00 |
|
Jakub Doka
|
fae75072f4
|
removing hardcoded html files and replacing them with markdown
the markdown gets transpiled on build and built files are then included
in the server executable
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-14 13:17:58 +01:00 |
|
Jakub Doka
|
71ba2c2486
|
Dividing function into template and instance, rmoving cumbersome options
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-02 15:51:12 +01:00 |
|
Jakub Doka
|
c5d5301b7b
|
Removing some clones and fixing parent scoping in case of globals
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-02 12:59:07 +01:00 |
|
Jakub Doka
|
c553c3d9e9
|
Removing repetative code, adding ent slice to properly index modules
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-01 19:04:27 +01:00 |
|
Jakub Doka
|
9ce446b507
|
Adding the simplest version of unions
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-01 15:11:38 +01:00 |
|
Jakub Doka
|
3b4b30b2bd
|
Restructuring the compiler
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-12-01 14:01:44 +01:00 |
|
Jakub Doka
|
cf672beb79
|
making ableos path resolver public
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-11-30 22:45:59 +01:00 |
|
Jakub Doka
|
3f6ebdd009
|
fixing phi moves (longer move cycles)
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-11-30 22:33:13 +01:00 |
|
Jakub Doka
|
19aca050ed
|
add new ableos path resolver, separate platform independent code
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-11-30 18:57:29 +01:00 |
|
Jakub Doka
|
d368ac023b
|
making error fields public
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-11-30 16:49:42 +01:00 |
|
Jakub Doka
|
8ea6c5cfcc
|
fixing miscompilation of generic struct functions
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-11-30 16:30:58 +01:00 |
|
Jakub Doka
|
e7cd2c0129
|
making the loader function customizable
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-11-30 15:44:51 +01:00 |
|
Jakub Doka
|
e44d003e7f
|
completing the generic types example
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-11-30 13:38:44 +01:00 |
|
Jakub Doka
|
a2ca8d98df
|
fixing a bug with floationg point comparison
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
|
2024-11-30 12:40:39 +01:00 |
|
Jakub Doka
|
a3355a59c0
|
update on incomplete example
|
2024-11-24 18:55:30 +01:00 |
|
Jakub Doka
|
116f045a5f
|
adding defer
|
2024-11-24 18:50:55 +01:00 |
|
Jakub Doka
|
784d552c1d
|
fixing scoping bug
|
2024-11-24 16:43:45 +01:00 |
|
Jakub Doka
|
24a3aed360
|
implementing struct method for non generic contexts
|
2024-11-24 16:17:57 +01:00 |
|
Jakub Doka
|
58ee5c0a56
|
in progress of adding methods
|
2024-11-24 14:47:38 +01:00 |
|
Jakub Doka
|
9dfb2eb606
|
fg
|
2024-11-24 11:26:38 +01:00 |
|
Jakub Doka
|
5df4fb8882
|
changing the gcm to not mutate nodes in recursive functions
|
2024-11-23 19:47:17 +01:00 |
|
Jakub Doka
|
86ca959ea3
|
removing needless data dependencies
|
2024-11-23 17:23:33 +01:00 |
|
Jakub Doka
|
f353bd5882
|
passing down the inference of 'void' to statements
|
2024-11-23 15:33:28 +01:00 |
|
Jakub Doka
|
cad0a828d0
|
updating tests
|
2024-11-23 15:28:27 +01:00 |
|
Jakub Doka
|
fb119bc6eb
|
allowing compatison of types
|
2024-11-23 15:28:02 +01:00 |
|
Jakub Doka
|
aa83ed2ec9
|
fixing the annoyance
|
2024-11-23 14:19:47 +01:00 |
|
Jakub Doka
|
fb11c94af4
|
fixing some bugs and extending runtime of programs
|
2024-11-23 12:35:16 +01:00 |
|
Jakub Doka
|
d8d039b67a
|
adding capability to run posts and displaing cumulative runs
|
2024-11-23 10:18:05 +01:00 |
|
Jakub Doka
|
b12579ff65
|
adding import count to posts
|
2024-11-23 00:06:25 +01:00 |
|
Jakub Doka
|
0aa355695a
|
fixing the buggg, finally
|
2024-11-22 21:01:45 +01:00 |
|
Jakub Doka
|
4a857d2317
|
garbage
|
2024-11-22 19:50:59 +01:00 |
|
Jakub Doka
|
2253ac6198
|
fixing some bugs
|
2024-11-22 19:50:36 +01:00 |
|
Jakub Doka
|
e89511b14c
|
fixing position reporting for optimized returns
|
2024-11-17 22:26:31 +01:00 |
|
Jakub Doka
|
1c135a3050
|
adding interesting asert
|
2024-11-17 21:43:02 +01:00 |
|
Jakub Doka
|
f83194359c
|
fixed yet another off by 1
|
2024-11-17 21:35:41 +01:00 |
|
Jakub Doka
|
becd5c4b7f
|
well?
|
2024-11-17 21:30:20 +01:00 |
|
Jakub Doka
|
37dd13cab2
|
brah
|
2024-11-17 21:27:30 +01:00 |
|
Jakub Doka
|
bc2dd82eb7
|
welp
|
2024-11-17 21:25:22 +01:00 |
|
Jakub Doka
|
aa2de502cc
|
saving
|
2024-11-17 21:09:36 +01:00 |
|
Jakub Doka
|
542c69fd60
|
changing case checking to a warning
|
2024-11-17 20:57:10 +01:00 |
|
Jakub Doka
|
95e9270fef
|
adding case checking
|
2024-11-17 20:04:53 +01:00 |
|
Jakub Doka
|
fe5a8631f6
|
fixed a bug of not marking idents as used
|
2024-11-17 18:44:24 +01:00 |
|
Jakub Doka
|
8892dd729a
|
fixing the false return location
|
2024-11-17 18:15:58 +01:00 |
|
Jakub Doka
|
a7718e1220
|
cleaning up some code
|
2024-11-17 17:14:44 +01:00 |
|
Jakub Doka
|
e079bbd312
|
forgot to support explicit enum type
|
2024-11-17 16:30:59 +01:00 |
|
Jakub Doka
|
12b9d43754
|
adding minimal enums
|
2024-11-17 16:25:39 +01:00 |
|
Jakub Doka
|
397b2a4b1b
|
fixed a stack prelude postlude being needlesly generated + struct can now be compared
|
2024-11-17 10:06:10 +01:00 |
|
Jakub Doka
|
12bb7029b4
|
fixed float comparison in the vm
|
2024-11-16 21:38:10 +01:00 |
|
Jakub Doka
|
a64383e72b
|
saving
|
2024-11-16 20:52:38 +01:00 |
|
Igor null
|
2034152c83
|
added syntax highlighting to depell
|
2024-11-16 13:48:31 -06:00 |
|
Jakub Doka
|
13714eb513
|
removing stable feature supression
|
2024-11-16 17:41:40 +01:00 |
|
Jakub Doka
|
4088bd18b1
|
fixing compilation error for ableos
|
2024-11-16 17:29:30 +01:00 |
|
Jakub Doka
|
e94b812b3b
|
removing the regalloc dependency
|
2024-11-16 14:22:34 +01:00 |
|
Jakub Doka
|
e5d6b35f66
|
removing needless copies to zero register for unused values
|
2024-11-16 13:42:17 +01:00 |
|
Jakub Doka
|
e6df9b6b01
|
cleanup
|
2024-11-16 11:46:59 +01:00 |
|
Jakub Doka
|
baa70d3f12
|
removing needless copy into ret register
|
2024-11-16 10:16:35 +01:00 |
|
Jakub Doka
|
ec4499e519
|
removing duplicate un instruction
|
2024-11-16 10:05:56 +01:00 |
|
Jakub Doka
|
085c593add
|
removing needless truncation of zeroth register
|
2024-11-16 10:03:08 +01:00 |
|
Jakub Doka
|
867a750d8f
|
hopefully this is less of a mess now
|
2024-11-15 23:18:40 +01:00 |
|
Jakub Doka
|
b1b6d9eba1
|
fix the inference on itf
|
2024-11-15 22:53:22 +01:00 |
|
Jakub Doka
|
12be64965f
|
maybe fixed mandelbrot
|
2024-11-15 22:35:03 +01:00 |
|
Jakub Doka
|
7058efe75c
|
reverting phi transformation
|
2024-11-15 19:32:04 +01:00 |
|
Jakub Doka
|
afc1c5aac5
|
orginizing null checks better to get more peephole hits
|
2024-11-15 14:36:33 +01:00 |
|
Jakub Doka
|
83146cfd61
|
adding a simple peephole for phis
|
2024-11-15 13:06:03 +01:00 |
|
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 |
|