2025-07-15 19:37 | Don't produce call graph output | erai | 4 | +33 | -33 |
2025-06-07 07:41 | riscv backend | erai | 6 | +6164 | -1215 |
2025-06-07 06:33 | fix aarch64 statbuf | erai | 1 | +3 | -4 |
2025-06-07 06:31 | add binary constants | erai | 3 | +58 | -0 |
2025-05-14 18:19 | mbr loader | erai | 5 | +222 | -19 |
2025-05-13 04:28 | add arch independent statbuf | erai | 5 | +118 | -30 |
2025-05-12 23:13 | use getrandom instead of rdrandom | erai | 4 | +79 | -77 |
2025-05-12 22:44 | add aarch64 target | erai | 17 | +37093 | -31424 |
2025-05-07 18:28 | move kernel to kernel.x86 | erai | 2 | +2 | -2 |
2025-05-07 18:24 | add -std=c89 to bootstrap | erai | 1 | +1 | -1 |
2025-05-07 18:17 | add syscall.x86.om to build.sh | erai | 2 | +2 | -2 |
2025-05-07 18:05 | use libc for bootstrap | erai | 4 | +901 | -551 |
2025-05-07 17:21 | isolate x86 specific stuff | erai | 9 | +2060 | -2036 |
2025-04-26 23:58 | add line numbers | erai | 5 | +169 | -336 |
2025-04-26 20:53 | remove peg parser | erai | 14 | +6250 | -18486 |
2025-04-26 16:19 | create ast of the base language | erai | 6 | +10201 | -3814 |
2025-04-23 22:11 | move lalr action to end of reduce | erai | 1 | +9 | -6 |
2025-04-23 21:37 | add semantic stack to parser | erai | 6 | +990 | -758 |
2025-04-23 11:16 | parse lexical value | erai | 5 | +1469 | -1284 |
2025-04-23 10:35 | allow token tag to be zero | erai | 3 | +880 | -880 |
2025-04-23 10:16 | add actions to lexer | erai | 9 | +3527 | -2930 |
2025-04-23 06:54 | fix whitespace | erai | 12 | +169 | -169 |
2025-04-22 11:11 | add lalr actions | erai | 7 | +2515 | -2101 |
2025-04-22 08:21 | less stack use in parser | erai | 2 | +983 | -870 |
2025-04-22 07:55 | remove operators from lalr grammar | erai | 2 | +850 | -1802 |
2025-04-21 14:24 | benchmark lalr | erai | 5 | +5018 | -336 |
2025-04-20 14:36 | compute lalr lookahead | erai | 2 | +1205 | -63 |
2025-04-13 18:23 | generate correct lalr sets | erai | 2 | +40 | -42 |
2025-04-13 11:10 | generate slr sets | erai | 2 | +878 | -24 |
2025-04-12 14:25 | translate lalr peg to productions | erai | 2 | +1159 | -1 |
2025-04-12 14:24 | add mkstr | erai | 1 | +8 | -0 |
2025-04-11 02:19 | Change charset to [" instead of [[ | erai | 3 | +200 | -113 |
2025-04-10 01:02 | bootstrap | erai | 1 | +120 | -118 |
2025-04-10 01:01 | faster lexer benchmark | erai | 2 | +7 | -7 |
2025-04-10 00:49 | move lexlib into lexer | erai | 6 | +385 | -406 |
2025-04-09 20:05 | get lexer tag names | erai | 3 | +598 | -106 |
2025-04-09 19:39 | Add debug lexer | erai | 4 | +3302 | -71 |
2025-04-09 18:24 | Generate state tables | erai | 6 | +484 | -83 |
2025-04-09 01:47 | allow CC override in bootstrap | erai | 1 | +1 | -1 |
2025-04-08 03:09 | define enums for lexer patterns | erai | 4 | +83 | -40 |
2025-04-07 21:24 | hopcroft minimization | erai | 4 | +651 | -20 |
2025-04-06 15:27 | powerset construction | erai | 4 | +1058 | -165 |
2025-04-06 01:19 | compile lexer to nfa | erai | 5 | +1367 | -107 |
2025-03-29 01:01 | add lexer sublanguage peg | erai | 7 | +251 | -53 |
2025-03-28 02:50 | fix typo | erai | 2 | +473 | -6 |
2025-03-28 02:40 | add lalr and lexer peg grammars | erai | 1 | +19 | -1 |
2025-03-26 01:42 | change keyword lalr_grammar to lalr | erai | 2 | +2 | -2 |
2025-03-24 18:18 | fold attic back into main tree | erai | 34 | +726 | -9497 |
2025-03-24 16:45 | remove context senstitive lexical elements | erai | 3 | +61 | -50 |
2025-03-24 14:48 | Make the grammar sublanguage fit better | erai | 3 | +480 | -393 |
2025-02-16 18:36 | broken optimizations. | erai | 9 | +14477 | -10647 |
2025-02-15 22:27 | make table compile | erai | 2 | +4 | -4 |
2025-02-15 22:27 | remove more magic numbers | erai | 2 | +7 | -7 |
2025-02-15 20:54 | backlink ir | erai | 2 | +135 | -68 |
2025-02-15 20:53 | integer hash table | erai | 1 | +175 | -0 |
2025-02-15 20:53 | fewer magic numbers in alloc.om | erai | 2 | +13 | -1 |
2025-02-09 04:59 | loadb storeb don't need rex | erai | 2 | +21 | -4 |
2025-02-09 04:45 | fold bit and | erai | 2 | +217 | -203 |
2025-02-09 04:34 | add time to ci builds | erai | 1 | +2 | -2 |
2025-02-09 04:22 | add cc0 size to cloc | erai | 3 | +369 | -366 |
2025-02-09 04:12 | add space | erai | 2 | +6 | -6 |
2025-02-09 03:49 | only emit parens when needed | erai | 4 | +17485 | -18166 |
2025-02-09 00:51 | increase buffer to 64k | erai | 5 | +105 | -85 |
2025-02-09 00:29 | rebootstrap | erai | 1 | +20988 | -27136 |
2025-02-09 00:28 | directly genereate ir in peg | erai | 9 | +792 | -463 |
2025-02-08 02:46 | merge peg into the omiltem language | erai | 8 | +356 | -338 |
2025-02-07 19:03 | combine cout and out | erai | 4 | +299 | -209 |
2025-02-07 17:21 | remove line numbers from bootstrap | erai | 2 | +3 | -26508 |
2025-02-07 16:52 | Use rb tree for the main decl tree | erai | 4 | +1187 | -663 |
2025-02-06 21:22 | remove peg.peg | erai | 1 | +0 | -18 |
2025-02-06 02:03 | merge peg.peg and cc3.peg | erai | 4 | +9771 | -10040 |
2025-02-06 01:50 | Use %prefix in peg | erai | 6 | +1836 | -1513 |
2025-02-06 01:15 | don't cout unused variables | erai | 2 | +5924 | -5014 |
2025-02-06 00:34 | shrink down size of cc0.c | erai | 3 | +36478 | -55794 |
2025-02-06 00:10 | move cout to the attic | erai | 1 | +0 | -0 |
2025-02-06 00:07 | fix varref fold | erai | 3 | +5 | -5 |
2025-02-05 23:32 | regenerate cc0.c | erai | 1 | +89818 | -11648 |
2025-02-05 23:32 | Generate c code from ir | erai | 5 | +567 | -30 |
2025-02-05 14:38 | move comments around | erai | 2 | +57 | -53 |
2025-02-02 18:33 | flow control graph simplification | erai | 2 | +174 | -1 |
2025-02-02 17:47 | re-bootstrap | erai | 1 | +0 | -213 |
2025-02-02 17:45 | basic identities in folding | erai | 2 | +599 | -209 |
2025-02-01 17:46 | really dumb constant folding | erai | 3 | +467 | -103 |
2025-02-01 16:23 | remove unused functions | erai | 18 | +187 | -1492 |
2025-02-01 15:50 | Add call graph | erai | 8 | +163 | -51 |
2025-01-31 21:28 | moveabs -> mov (where possible) | erai | 3 | +28 | -3 |
2025-01-31 21:00 | use rodata for strings | erai | 3 | +216 | -82 |
2025-01-31 17:33 | add cloc | erai | 2 | +24 | -0 |
2025-01-31 16:20 | use the standard calling convetion in the kernel | erai | 2 | +311 | -403 |
2025-01-31 02:58 | copy bootstrap | erai | 1 | +665 | -34 |
2025-01-31 02:51 | remove the manual compiler | erai | 3 | +193 | -951 |
2025-01-31 02:36 | use ir to generate code | erai | 12 | +1227 | -1496 |
2025-01-31 02:08 | all return | erai | 1 | +1 | -0 |
2025-01-30 00:59 | add _includ special case | erai | 4 | +95 | -38 |
2025-01-28 02:24 | enough ir to generate code | erai | 3 | +131 | -67 |
2025-01-27 22:47 | ir calling convention | erai | 2 | +350 | -175 |
2025-01-27 19:37 | Fix bug to fully zero init in generated c code | erai | 1 | +3 | -0 |
2025-01-27 19:37 | Add build.yml | erai | 1 | +9 | -0 |
2025-01-27 04:19 | Add ir code | erai | 4 | +1935 | -25 |
2025-01-24 15:46 | Add attic check.py | erai | 1 | +176 | -0 |
2025-01-24 15:45 | Add lines output to debug segv | erai | 8 | +296 | -54 |
2025-01-20 23:11 | run bootstrap | erai | 2 | +84 | -247 |
2025-01-20 23:09 | remove TYPECALL | erai | 4 | +1 | -15 |
2025-01-20 18:37 | Better indentation only on braces and parenthesis | erai | 1 | +34 | -2 |
2025-01-20 17:02 | truncate cpio ino to 32 bits | erai | 1 | +1 | -1 |
2024-11-29 15:44 | remove doubled checks | erai | 2 | +0 | -24 |
2024-11-26 04:41 | discard generics | erai | 1 | +0 | -0 |
2024-11-23 19:54 | add syntax for generics | erai | 7 | +351 | -138 |
2024-11-21 04:26 | use nil | erai | 14 | +499 | -438 |
2024-11-21 04:23 | add nil | erai | 6 | +32 | -4 |
2024-11-21 04:07 | require func in front of functions | erai | 2 | +1 | -7 |
2024-11-21 04:06 | add func in front of functions | erai | 34 | +684 | -682 |
2024-11-21 03:54 | allow func to define a function | erai | 2 | +15 | -9 |
2024-11-21 03:37 | remove colon cast | erai | 2 | +1 | -11 |
2024-11-21 03:34 | convert colon cast to as | erai | 24 | +1322 | -1322 |
2024-11-21 02:38 | reserve as | erai | 5 | +1353 | -1302 |
2024-11-20 18:03 | remove watch.sh | erai | 1 | +0 | -6 |
2024-11-18 05:13 | Add vimfiles | erai | 4 | +88 | -0 |
2024-11-18 03:43 | update build scripts to use *.om | erai | 3 | +26 | -30 |
2024-11-18 03:39 | rename *.c to *.om | erai | 44 | +0 | -0 |
2024-11-11 23:48 | Use 192.168.30.1 as the tftp server | erai | 1 | +3 | -3 |
2024-11-02 19:47 | allow union in dot | erai | 1 | +2 | -2 |
2024-10-11 16:01 | Add unions | erai | 7 | +439 | -129 |
2024-10-11 15:38 | Use rsdt instead of xsdt | erai | 1 | +13 | -27 |
2024-10-11 15:26 | 63 bit numbers | erai | 8 | +261 | -241 |
2024-10-11 15:06 | Allow underscores in numbers | erai | 3 | +79 | -42 |
2024-10-07 22:42 | add peglib.c to LIB | erai | 4 | +7 | -6 |
2024-10-07 22:33 | move peg_parse grammar to peg_new | erai | 4 | +29 | -19 |
2024-10-01 03:35 | add symbol table | erai | 3 | +785 | -48 |
2024-09-30 03:32 | add .out to gitignore | erai | 1 | +1 | -0 |
2024-09-30 03:30 | add genlex to attic | erai | 1 | +1115 | -0 |
2024-09-30 01:58 | separate typecheck pass | erai | 2 | +998 | -531 |
2024-09-30 01:16 | only output used functions | erai | 7 | +376 | -535 |
2024-09-28 14:14 | add undefined evaluation order check | erai | 5 | +116 | -13 |
2024-09-25 21:02 | Add lpeg paper link | erai | 1 | +2 | -0 |
2024-09-24 01:56 | restore all in one bootstrap | erai | 1 | +9945 | -0 |
2024-09-24 01:54 | move cc0.c to attic | erai | 1 | +0 | -0 |
2024-09-24 01:53 | revert cc0.c to cc8fe1a7405f48e3ca08f6559c01b4b305cc7db5 | erai | 1 | +4991 | -9931 |
2024-09-21 15:20 | move currently unused files to attic | erai | 14 | +2 | -3 |
2024-09-20 18:38 | transliterate aes.c | erai | 1 | +162 | -0 |
2024-09-20 18:25 | transliterate rsa.c | erai | 1 | +266 | -0 |
2024-09-20 17:11 | all in one bootstrap | erai | 7 | +3825 | -3133 |
2024-09-18 03:27 | full type c translation | erai | 9 | +1933 | -2263 |
2024-09-17 13:15 | bootstrap using the c generator | erai | 2 | +9226 | -4956 |
2024-09-17 13:12 | c generator | erai | 3 | +623 | -1 |
2024-09-17 13:09 | only output if compiling to object | erai | 4 | +88 | -26 |
2024-09-16 00:23 | remove hand parser in the self hosting compiler | erai | 3 | +30 | -26 |
2024-09-16 00:08 | fix band parse2 | erai | 1 | +1 | -0 |
2024-09-15 23:30 | canonical node output | erai | 1 | +24 | -1 |
2024-09-15 06:15 | use peg parser for the second stage parser | erai | 16 | +2106 | -829 |
2024-09-14 22:35 | discard peg space nodes | erai | 5 | +12 | -39 |
2024-09-14 22:22 | basic peg syntax error location | erai | 6 | +134 | -34 |
2024-09-14 19:35 | add check for pegpeg changes | erai | 2 | +4 | -0 |
2024-09-14 19:30 | use peg.peg to parse peg | erai | 3 | +370 | -471 |
2024-09-14 19:26 | peg.c use peglib.c | erai | 2 | +93 | -320 |
2024-09-14 19:16 | escape peglib tree | erai | 1 | +22 | -1 |
2024-09-14 19:07 | Use cc3.peg to parse into parse trees | erai | 6 | +422 | -53 |
2024-09-14 16:10 | Translate peg to code | erai | 3 | +461 | -28 |
2024-09-13 19:25 | peg convert postfix to ast | erai | 1 | +95 | -25 |
2024-09-13 03:46 | peg parse peg.peg into postfix notation | erai | 4 | +379 | -181 |
2024-09-12 18:16 | fix build.sh | erai | 1 | +1 | -1 |
2024-09-12 18:15 | Add peg to build.sh | erai | 2 | +6 | -7 |
2024-09-12 16:48 | Less than minimal shell | erai | 1 | +314 | -207 |
2024-09-12 16:47 | Add peg parser recognizer | erai | 5 | +670 | -0 |
2024-06-08 15:22 | just enough shell recognizing | erai | 1 | +661 | -6 |
2024-06-05 16:00 | remove vi for now | erai | 2 | +2 | -13 |
2024-06-05 15:03 | basic sshd command io | erai | 2 | +257 | -60 |
2024-06-05 04:06 | sshd event loop | erai | 2 | +122 | -26 |
2024-06-05 03:26 | signal handlers | erai | 4 | +109 | -14 |
2024-06-04 01:51 | ssh spawn | erai | 2 | +628 | -7 |
2024-06-03 18:36 | ssh publickey userauth | erai | 4 | +492 | -205 |
2024-06-03 04:41 | ssh key exchange | erai | 2 | +755 | -65 |
2024-06-03 04:41 | add _ed25519_priv | erai | 1 | +7 | -0 |
2024-06-03 04:41 | streaming sha256 | erai | 1 | +43 | -0 |
2024-06-03 04:41 | add memcmp | erai | 1 | +22 | -0 |
2024-06-03 04:40 | accept with args | erai | 1 | +5 | -2 |
2024-06-03 04:40 | remove serial io | erai | 1 | +3 | -67 |
2024-06-02 17:20 | userspace pages and elf | erai | 2 | +580 | -34 |
2024-05-28 02:34 | ramfs | erai | 5 | +735 | -24 |
2024-05-27 17:00 | ignore binaries | erai | 1 | +2 | -0 |
2024-05-27 17:00 | add xxd command | erai | 5 | +194 | -3 |
2024-05-27 15:08 | kernel is larger than 1MB now | erai | 2 | +16 | -1 |
2024-05-27 15:03 | embed initramfs | erai | 13 | +226 | -60 |
2024-05-26 16:53 | simplify syntax | erai | 1 | +10 | -10 |
2024-05-26 16:18 | include sources in initramfs | erai | 1 | +36 | -10 |
2024-05-26 15:22 | basic commands | erai | 13 | +473 | -56 |
2024-05-26 00:15 | remove qemu scripts | erai | 13 | +174 | -19 |
2024-05-25 23:53 | always compile all | erai | 2 | +49 | -25 |
2024-05-25 17:24 | basic syscall | erai | 3 | +188 | -9 |
2024-05-21 08:09 | add rdrand | erai | 2 | +11 | -0 |
2024-05-20 03:31 | no print | erai | 1 | +0 | -11 |
2024-05-20 03:29 | full ed25519 | erai | 4 | +539 | -41 |
2024-05-19 20:44 | Add x25519 | erai | 4 | +547 | -96 |
2024-05-16 02:53 | ignore interrupts until lapic is setup | erai | 1 | +35 | -2 |
2024-05-15 01:57 | add unhex | erai | 1 | +81 | -0 |
2024-05-09 16:23 | fix birational map | erai | 1 | +9 | -6 |
2024-05-09 15:35 | Add sha512 | erai | 3 | +338 | -21 |
2024-05-09 14:43 | add comments to ed25519 | erai | 1 | +33 | -4 |
2024-05-09 06:45 | Add ed25519 | erai | 2 | +389 | -0 |
2024-05-09 01:59 | Add poly1305 | erai | 2 | +291 | -0 |
2024-05-09 00:43 | fix sha256 | erai | 3 | +68 | -4 |
2024-05-09 00:42 | Add chacha20 | erai | 2 | +249 | -0 |
2024-05-08 23:35 | tcp can fail | erai | 1 | +10 | -5 |
2024-05-08 23:34 | Add sha256 | erai | 3 | +554 | -0 |
2024-05-08 18:47 | tcp reader tasks | erai | 1 | +58 | -10 |
2024-05-08 18:12 | round robin | erai | 1 | +167 | -27 |
2024-05-07 12:37 | Use framebuffer | erai | 1 | +42 | -11 |
2024-05-07 03:17 | bad tcp but works | erai | 1 | +264 | -15 |
2024-05-06 21:32 | tcp recv | erai | 1 | +277 | -35 |
2024-05-06 19:13 | README -> README.md | erai | 1 | +0 | -0 |
2024-05-06 17:59 | add README | erai | 1 | +2 | -0 |
2024-05-06 03:14 | rst tcp connections | erai | 1 | +164 | -3 |
2024-05-05 20:12 | udp echo | erai | 1 | +564 | -88 |
2024-05-04 21:46 | basic ip recv | erai | 1 | +695 | -266 |
2024-05-03 22:14 | use 4k pages | erai | 1 | +14 | -7 |
2024-05-03 02:21 | ahci read+write | erai | 1 | +115 | -29 |
2024-05-01 21:54 | Fix trap errcode | erai | 2 | +7 | -1 |
2024-05-01 08:12 | clear interrupts on ahci port | erai | 1 | +2 | -3 |
2024-05-01 08:08 | ahci basics | erai | 2 | +576 | -256 |
2024-04-28 15:10 | add isc license | erai | 1 | +13 | -0 |
2024-04-28 05:34 | dumb rtl 10ec:8168 | erai | 4 | +843 | -133 |
2024-04-24 16:20 | sorta boot on real hardware | erai | 1 | +67 | -28 |
2024-04-24 16:19 | Add pxe stub | erai | 3 | +1001 | -0 |
2024-04-09 12:13 | pci bus enumeration | erai | 5 | +546 | -20 |
2024-04-05 18:26 | Add serial nc for qemu | erai | 4 | +77 | -3 |
2024-04-04 02:48 | interrupts | erai | 2 | +429 | -36 |
2024-04-02 05:18 | task switching | erai | 3 | +442 | -9 |
2024-03-30 15:21 | ud2 at end of _start | erai | 4 | +16 | -1 |
2024-03-30 15:16 | Top half kernel | erai | 2 | +39 | -48 |
2024-03-29 01:51 | multiboot bootstrap | erai | 3 | +251 | -7 |
2024-03-25 17:35 | add multiboot header | erai | 3 | +170 | -20 |
2024-03-24 15:20 | Move enum to top | erai | 1 | +61 | -65 |
2024-03-17 04:31 | Use more abstract assembler | erai | 4 | +598 | -512 |
2024-03-16 17:42 | enum constants | erai | 4 | +68 | -10 |
2024-03-16 16:06 | fix test for file existing | erai | 1 | +3 | -1 |
2024-03-16 15:39 | Update bootstrap script | erai | 2 | +27 | -7 |
2024-03-16 15:39 | buffered file io | erai | 6 | +150 | -71 |
2024-03-16 15:39 | Refactor into separate parse, lex, compile stages | erai | 14 | +4805 | -4815 |
2024-03-16 15:39 | multiple sources | erai | 5 | +542 | -330 |
2024-03-16 15:39 | infer void when no return type specified | erai | 3 | +84 | -70 |
2024-03-16 15:39 | argc, argv, envp | erai | 3 | +69 | -7 |
2024-03-16 15:39 | left assoc arithmetic | erai | 3 | +189 | -145 |
2024-03-16 15:39 | fix heapsort | erai | 2 | +69 | -55 |
2024-03-16 15:39 | find_tag: append | erai | 1 | +6 | -4 |
2024-03-16 15:39 | lex generator | erai | 4 | +1291 | -4 |
2024-03-16 15:39 | Add goto, labels, function pointers | erai | 2 | +123 | -15 |
2024-03-16 15:39 | Add line context to prototype | erai | 2 | +3 | -0 |
2024-03-16 15:39 | Start at col 1 | erai | 2 | +1 | -1 |
2024-03-16 15:39 | Use cc2 as bootstrap | erai | 8 | +78 | -27 |
2024-03-16 15:39 | Add boostrap compiler | erai | 1 | +0 | -0 |
2024-03-02 07:01 | self compiles | erai | 2 | +4565 | -215 |
2024-02-29 07:13 | cc0 done | erai | 4 | +3319 | -819 |
2024-02-24 01:54 | minimal bootstrap | erai | 5 | +2156 | -0 |
2024-02-19 02:11 | Initial commit | erai | 0 | +0 | -0 |