An attempt at a single pass LLVM frontend in ~3000 lines of C without external dependencies, malloc, or an AST. Included are some graphical examples. The IR isn't perfect, and the README touches on one particular downfall
What’s the connection to the snake clone or a half-byte?
Doing this in ~3k LOC C without malloc or an AST is honestly pretty impressive. Interested to see how far the IR can scale.