miloignis
  • Joined on 2023-01-28
miloignis pushed to main at miloignis/nix_config 2024-07-02 04:25:28 +00:00
d7b6e6b944 Post media moved to 4800h, postgresql upgrade
miloignis pushed to master at miloignis/kraken 2024-02-08 04:21:34 +00:00
c3315f04e5 Working basic guard that falls back to interp on fail
miloignis pushed to master at miloignis/kraken 2024-02-07 07:04:01 +00:00
ff95c5d9e7 implemented Lookup (also fix passing wrong function to one of the stack functions or something)
miloignis pushed to master at miloignis/kraken 2024-02-06 07:13:24 +00:00
23fbfe9db3 add JIT support for Define, Drop, and Const
miloignis pushed to master at miloignis/kraken 2024-02-05 06:41:59 +00:00
525b103f38 swap ret_stack to a repr(C) struct for manipulation from JIT
miloignis pushed to master at miloignis/kraken 2024-02-05 06:34:58 +00:00
fd843bc807 Swap ID to NonZeroI64 so Option<ID> is a single word and we can test for 0 in JIT for if we have an ID (for looking at ret_stack)
miloignis pushed to master at miloignis/kraken 2024-02-05 06:27:01 +00:00
a4500fed36 Implement (but have not tested) all primitive functions in JIT)
miloignis pushed to master at miloignis/kraken 2024-02-05 02:45:46 +00:00
99d4fa5021 first jitted instruction!
miloignis pushed to master at miloignis/kraken 2024-02-02 06:46:17 +00:00
776fc7c921 integrated JIT compiler with simple generated do-nothing JIT traces. Modified JIT trace interface so that it can return a trace-id and offset to jump to, allowing the trace interpreter to handle hard cases, etc. (or in this case, all cases, as it just immediatly returns the current id and offset 0).
miloignis pushed to master at miloignis/kraken 2024-02-01 07:09:08 +00:00
9cd46a31eb had trouble getting going again today. Did create a compiled_traces map and integrated using it into execute_trace, with ideas for what the api there should be.
miloignis pushed to master at miloignis/kraken 2024-01-31 06:22:03 +00:00
0ce6d90aa9 minor cleanup to wrap JIT stuff in a struct with a compile function and move to lib, in anticipation of actually JIT compiling. Not a ton of work today, was pretty tired / didn't get going.
miloignis pushed to master at miloignis/kraken 2024-01-30 07:36:11 +00:00
facd9a34b9 Cranelift JIT experiments, with multiple functions, tail calls, non-tail-calls, calling host functions, etc
miloignis pushed to master at miloignis/kraken 2024-01-29 07:23:00 +00:00
8e06037b4a Finished porting everything over to new packed, JIT-friendly Form, with all the tracing!
miloignis pushed to master at miloignis/kraken 2024-01-29 07:04:04 +00:00
069c9775e1 Ported interpreter (without trace execution) to use new packed, JIT-friendly Form, with all needed additions
miloignis pushed to master at miloignis/kraken 2024-01-29 02:51:06 +00:00
0696ad5594 Finished-ish writing the new JIT-friendly, packed Form, this time with extra repr(C) Vec implementation
miloignis pushed to master at miloignis/kraken 2024-01-28 07:46:12 +00:00
a16e126aa1 Started writing our new Form designed to be used from JIT with repr(C) and packed into a single word, and our own repr(C) Rc implementation to go with it.
miloignis pushed to master at miloignis/kraken 2024-01-27 22:41:58 +00:00
56cd4f7088 cleanup, fix closure scope error
miloignis pushed to master at miloignis/kraken 2024-01-07 05:15:50 +00:00
3002bd9237 Working ExtendedBasicBlock tracing/lazy-construction! Not all constructs traceable, and no inlining, but it works!
miloignis pushed to master at miloignis/kraken 2024-01-04 06:15:47 +00:00
1e59c8ed94 Small one today, getting started was hard but glad I got a tiny bit done to continue the streak. Modifed follow-on data to be stored on Ctx itself and only pass an ID around so it can be on the return stack multiple times without wasting a lot of space.
miloignis pushed to master at miloignis/kraken 2024-01-03 06:55:45 +00:00
c15e857171 First barely-working trace replay! Need to clean up, finish implementing, have trace-reply restore traces, jump directly to other traces, eventually inline and concat traces, etc etc