Notes on my incomplete JIT compiler

This page summarizes the projects mentioned and recommended in the original post on /r/ProgrammingLanguages

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • compiler

    an incomplete toy barebones compiler backend for amd64 x86_64 in Python and an incomplete JIT compiler written in C (by samsquire)

  • assembler

    amd64 assembler (by samsquire)

  • I do code generation manually, not through assembly like my python compiler (in the same repository) and not in the same style as my python assembler https://github.com/samsquire/assembler . I do linear scan register allocation. I do live range analysis and use ANF A normal form intermediate representation. I don't implement spill logic to memory yet. I need to implement parameter passing to functions.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • I adapted the garbage collector at Writing a Simple Garbage Collector in C (maplant.com) to add extremely primitive simple register scanning. I am thinking I can expose an ABI to the runtime to call the GC. https://github.com/samsquire/garbage-collection

  • preemptible-thread

    How to preempt threads in user space

  • I also have a M:N m kernel threads to N lightweight thread userspace preemptive scheduler at https://github.com/samsquire/preemptible-thread It would be nice to schedule lightweight threads in a JIT compiler. Imagine being capable of running processes similar to BEAM and Go but with JIT.

  • epoll-server

    C code for multithreaded multiplexing client socket connections across multiple threads (so its X connections per thread) uses epoll

  • I also have some epoll server code at https://github.com/samsquire/epoll-server

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts