Commit graph

148 commits

Author SHA1 Message Date
mlokr b956cc78bb
adding bfn to ast nodes 2024-09-03 17:51:28 +02:00
mlokr 9500db8764
some organization 2024-09-03 00:07:20 +02:00
mlokr f172c33247
fixing nasety bug 2024-09-02 04:45:42 +02:00
mlokr 75dca64648
popping the inlined function arguments 2024-09-02 03:56:22 +02:00
mlokr 97c62e424a
fixing inconststent context for function 2024-09-02 03:37:49 +02:00
mlokr a2c08b6ef6
fixing inlining related bugs 2024-09-02 03:21:39 +02:00
mlokr a78d2bc3e9
small fix 2024-09-02 02:45:03 +02:00
mlokr ad3fc1190c
uptimizing a bit more, inline calls 2024-09-02 02:38:11 +02:00
mlokr 641be15703
most likely fixed 2024-09-01 23:51:59 +02:00
mlokr cbe6f98dff
maybe fixed 2024-09-01 23:14:48 +02:00
mlokr f13f500d6e
fixing minmaxing bug 2024-09-01 22:07:45 +02:00
mlokis 4e9d6094bd Merge pull request 'Support Hex, Binary, and Octal number literals' (#20) from koniifer/holey-bytes:trunk into trunk
Reviewed-on: https://git.ablecorp.us/AbleOS/holey-bytes/pulls/20
2024-09-01 19:19:10 +00:00
mlokr 28e33d11c9
removing garbage 2024-09-01 21:15:29 +02:00
koniifer 581c4d531c fix obvious bugs, add unit test, hopefully preserve radix when formatting 2024-09-01 20:07:19 +01:00
mlokr 9af7bf559f
fixed confused shift tokens (I still dont know which side is left) 2024-07-21 10:29:58 +02:00
mlokr 5a6474f066
fixed nasty wrong scope bug 2024-07-20 18:52:24 +02:00
mlokr 33a4bf7d01
barbar 2024-07-19 21:19:03 +02:00
mlokr cac99cd34d
foobar 2024-07-19 21:04:22 +02:00
mlokr a1179f3320
f 2024-07-19 12:56:40 +02:00
mlokr ba73a89171
e 2024-07-19 12:52:11 +02:00
mlokr 654b7eb7af
d 2024-07-19 12:42:06 +02:00
mlokr aeb3a37f7d
fixing typechecking issues, pointers now properly typecheck and generic types are properly cached 2024-07-19 12:00:55 +02:00
mlokr 3c01a40ef2
fixing wide register returns 2024-07-18 17:55:55 +02:00
mlokr 4f9d4f2e71
arrays work i guess 2024-07-08 18:08:58 +02:00
mlokr 25bbe247e9
added example for struct patters 2024-07-08 11:00:35 +02:00
mlokr e00f2f08c8
removing garbage 2024-07-08 07:22:53 +02:00
mlokr 880cd66c66
on the journey twards struct destruct 2024-07-07 19:16:15 +02:00
mlokr fa41c56cb3
interstellar 2024-07-07 18:21:07 +02:00
mlokr efa7271a59
brahmaputra 4 2024-07-07 14:52:31 +02:00
mlokr bd7384123c
brahmaputra 2 2024-07-07 14:29:37 +02:00
mlokr e9589ebcae
brahmaputra 2024-07-07 14:26:43 +02:00
mlokr 22f925b3f5
bruh 2024-07-07 13:44:20 +02:00
mlokr 3807fe22da
YEEEEEEEEEEEEEEEEEEEEEEEEEEEES 2024-07-07 13:42:48 +02:00
mlokr 12c7467be2
removing string optimizations 2024-07-07 12:15:48 +02:00
mlokr 36bd1a796b
GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH, I did not delete unwanted relocations 2024-07-06 23:02:04 +02:00
mlokr 91907a90ff
-__- 2024-07-02 14:49:05 +02:00
mlokr f9e46b4641
added formatting 2024-06-25 21:41:12 +02:00
mlokr 93deeee6b9
adding comments 2024-06-25 19:55:25 +02:00
mlokr 6a69042cb7
improved exer 2024-06-25 18:39:59 +02:00
mlokr c85437e4e8
fixed a significant bugus 2024-06-24 17:45:58 +02:00
mlokr 76b3f9ff4b
pekomaaaaa 2024-06-24 17:26:00 +02:00
mlokr 66c3f7b0d4
cleanup 2024-06-23 13:55:48 +02:00
mlokr b04d9e517e
tests pass again 2024-06-23 09:26:03 +02:00
mlokr b46c64db4f
tests pass again 2024-06-23 09:09:33 +02:00
mlokr 6de8496aa5
whew 2024-06-21 23:07:32 +02:00
mlokr 499fe34f1d
psl 2024-06-20 11:23:37 +02:00
mlokr 61ecbbd304
putting tests as examples in readme 2024-06-15 10:37:50 +02:00
mlokr 20903ef294
smh my head 2024-06-12 16:29:41 +02:00
mlokr 98862edd58
other stuff 2024-06-01 20:30:15 +02:00
mlokr e494785f93 some stuff 2024-05-20 14:11:58 +02:00
mlokr aef9951bc5 implementing comptime constants 2024-05-19 18:20:42 +02:00
mlokr b922dbd232 making progress on parallelization 2024-05-17 19:53:59 +02:00
mlokr aae217dd00 making better use of parameter and return registers (use register 2 for arguments when possible) 2024-05-16 16:50:29 +02:00
mlokr 4502a64514 some cleanup and bug fix 2024-05-16 13:32:04 +02:00
mlokr ca1d471646 adding imm operations is come cases 2024-05-16 13:29:16 +02:00
mlokr 2dff9f7244 slightly optimizing assignment 2024-05-16 12:56:33 +02:00
mlokr 3127d04e41 doing same for arguments 2024-05-16 12:42:11 +02:00
mlokr 589a30c8a3 making the variables smarter (only putting then on stack when they get referenced) 2024-05-16 12:23:37 +02:00
mlokr 87ba7aa203 removing deendence on macros with a simple build script 2024-05-15 14:36:38 +02:00
mlokr 78f9eb6acc implementing codegen for all the operators 2024-05-15 11:10:20 +02:00
mlokr 3c09a5f23e adding '<op>=' syntax 2024-05-15 10:37:39 +02:00
mlokr 70955c1792 adding directives 2024-05-14 23:07:32 +02:00
mlokr d8a922df26 painfully, but suddle bugs with pointers are now fixed 2024-05-14 15:03:36 +02:00
mlokr 9aa5da82c9 saving before refactoring experiment 2024-05-14 14:01:40 +02:00
mlokr fb481a0600 making stack reclamation 2024-05-14 12:17:39 +02:00
mlokr c14e6c352d fixing upcating bugs related to pointers 2024-05-13 15:24:48 +02:00
mlokr 9ccf91d072 adding pointer arithmetic test 2024-05-13 14:23:19 +02:00
mlokr 7cca9a3683 adding different-sized integers 2024-05-13 13:36:29 +02:00
mlokr b28baa86f7 adding destination semantics for expressions 2024-05-13 11:05:35 +02:00
mlokr 2226a47aaa fixing struct regurns 2024-05-13 09:55:09 +02:00
mlokr 0aec47e985 fixing struct regurns 2024-05-13 09:38:33 +02:00
mlokr 5c38115119 adding simple cli 2024-05-13 00:02:32 +02:00
mlokr c3cbd054f7 improving code 2024-05-12 23:45:28 +02:00
mlokr 06e30529bf added better error reports 2024-05-12 23:19:45 +02:00
mlokr 4ec635dc56 proper type display and pointer types 2024-05-12 22:40:28 +02:00
mlokr d5a5c932e7 finishing structures 2024-05-12 20:10:50 +02:00
mlokr bc59886428 adding per function dead code elimination 2024-05-12 14:56:59 +02:00
mlokr f87959aacb adding structures 2024-05-12 13:13:36 +02:00
mlokr 80b05779ea adding struct syntax 2024-05-12 12:21:40 +02:00
mlokr 4bb5ec1953 adding struct syntax 2024-05-12 12:16:40 +02:00
mlokr 86013a50a4 identifiers are now properly checked 2024-05-12 11:52:58 +02:00
mlokr 465b185452 foo bar 2024-05-11 22:23:58 +02:00
mlokr b794fa7c3c foo bar 2024-05-11 22:22:12 +02:00
mlokr a3c4b878b2 adding loops 2024-05-11 18:16:27 +02:00
mlokr 7f32e7775c making if statements without else branch work 2024-05-11 17:05:22 +02:00
mlokr 1d74f27b0e making the functions kind of walk 2024-05-11 16:04:13 +02:00
mlokr 7435218999 fixing relative jumps to not offset from immidiate adress but from instruction adress 2024-05-11 12:51:32 +02:00
mlokr cf99091a45 now compiling some trivial arithmetic 2024-05-10 22:54:12 +02:00
mlokr 68d53544fd compiling return stmt 2024-05-10 21:33:42 +02:00
mlokr aa77a2f822 fixing JALA and JAL saving self reference instead of reference to the next instruction 2024-05-10 15:29:11 +02:00
mlokr 1c08148dc9 starting from zero again 2024-05-09 23:41:59 +02:00
mlokr 326adf47ce wha 2024-05-09 18:18:19 +02:00
able 37ff58c5e5 Removing old deprecated things. 2024-04-29 05:02:33 -05:00
mlokr 9ddc336ecd fixing deprecated stuff, i hate this 2024-02-14 12:30:38 +01:00
mlokr 975ce8a9fe more 2024-02-04 18:32:55 +01:00
mlokr 8a3dd3001d smh 2024-02-04 10:34:25 +01:00
mlokr bcbe47bcd6 some more progress on codegen 2024-02-03 21:43:54 +01:00
mlokr 6e464be33d adding more parsing with a sanity test 2024-02-01 16:11:10 +01:00