[HN Gopher] Show HN: Cj-tiny no-deps JIT in C for x86-64 and ARM64
       ___________________________________________________________________
        
       Show HN: Cj-tiny no-deps JIT in C for x86-64 and ARM64
        
       Hey y'all!  About 7 years ago, I had this idea to write a JIT with
       an autogenerated backend for x86 based on the ISA specs. I sketched
       something out and then just kinda let it sit. I picked it up again
       a few weeks ago and made a complete-ish backend for both x86 and
       ARM64. It has no dependencies, the backends are completely
       autogenerated (by horrible, horrible JS scripts), and I built a
       small abstraciton layer for things like functions prologues etc.
       It's super duper early and will probably break on your machine, but
       it's good enough to compile some cool examples (look at the
       examples directory: https://github.com/hellerve-pl-
       experiments/cj/tree/master/ex..., my personal favorite is the
       minimal language implementation: https://github.com/hellerve-pl-
       experiments/cj/blob/master/ex...).  It doesn't have anything except
       basically a fancy JIT assembler with some helpers as of yet. No
       register allocator, a lot of ABI details will still have to be
       figured out manually (though of course feel free to add anything to
       the abstraction layer that's generally useful and submit a PR!).  I
       honestly don't know where I'm going with this next. I kind of
       stumbled into the project, and am not sure whether I'll consider it
       as "exercise completed" or whether I should pursue it more. Time
       will tell.  Feedback, questions, and bug reports very welcome--
       especially on the codegen helpers, additional examples or cool
       things you come up with, or backend rough edges.  P.S.: I also
       wrote a small announcement blog post on it that you can find here
       (https://blog.veitheller.de/cj:_Making_a_minimal,_complete_JI...),
       but it honestly doesn't add all that much interesting info that you
       can't find in the repo.
        
       Author : hellerve
       Score  : 6 points
       Date   : 2025-11-05 16:46 UTC (9 days ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       ___________________________________________________________________
       (page generated 2025-11-14 23:00 UTC)