| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | ir: basic inlining pass implementation | 2026-02-18 | 9 | -15/+364 | ||
| | | ||||||
| * | 0.1.3 | 2026-02-06 | 1 | -2/+2 | ||
| | | ||||||
| * | cpp: add __VA_OPT__ and comma ## __VA_ARGS__ pasting | 2026-02-06 | 2 | -7/+42 | ||
| | | ||||||
| * | c: support at least parsing C99 _Complex types | 2026-01-25 | 5 | -8/+31 | ||
| | | ||||||
| * | c: GNU __attribute__ stubs | 2026-01-25 | 4 | -16/+78 | ||
| | | ||||||
| * | 0.1.2 | 2026-01-13 | 1 | -2/+2 | ||
| | | ||||||
| * | driver: -iquote, -isystem, etc | 2026-01-12 | 3 | -31/+74 | ||
| | | | | | With GCC-like search order | |||||
| * | 0.1.1 | 2026-01-11 | 1 | -2/+2 | ||
| | | ||||||
| * | simpl: fix simplifying known cond branches | 2026-01-11 | 1 | -8/+3 | ||
| | | ||||||
| * | io: fix hashtable lookup of builtin include files | 2026-01-11 | 1 | -5/+15 | ||
| | | | | | It would break if there were hash collisions. | |||||
| * | target: accept amd64 as x86_64 synonym | 2026-01-10 | 2 | -1/+3 | ||
| | | ||||||
| * | cpp: prioritize internal headers over system headers | 2026-01-10 | 1 | -6/+6 | ||
| | | ||||||
| * | main: use time.h for time(), fexecve optional | 2026-01-10 | 1 | -2/+20 | ||
| | | ||||||
| * | update README | lsof | 2026-01-09 | 1 | -1/+1 | |
| | | ||||||
| * | ir/simpl: stub out some code that wasn't properly tested and broken | 2026-01-09 | 1 | -0/+2 | ||
| | | | | | I'll figure it out later, but I better not have a broken trunk | |||||
| * | Add version tracking. Starting at 0.1.0 | 2026-01-09 | 3 | -4/+38 | ||
| | | ||||||
| * | c: fix use after free | 2026-01-09 | 1 | -1/+2 | ||
| | | | | | | A silly one, declsbuf.p can be realloc'd in the call to putdecl, but in this statement that pointer could be fetched before the call. | |||||
| * | cpp: fix pasting ident+keyword | 2026-01-09 | 2 | -4/+23 | ||
| | | ||||||
| * | update README | 2026-01-09 | 1 | -1/+3 | ||
| | | ||||||
| * | x86_64/isel: fix edgecase of fixarg from seljmp derefing nullpointer | 2026-01-09 | 1 | -1/+1 | ||
| | | ||||||
| * | lexer: multibyte escape seqs in wide character literal | 2026-01-09 | 1 | -4/+13 | ||
| | | | | | (hacky) | |||||
| * | c: allow 'register' in func parameter | 2026-01-09 | 1 | -1/+1 | ||
| | | ||||||
| * | driver: remove hard limit for infiles | 2026-01-09 | 1 | -38/+44 | ||
| | | ||||||
| * | cpp: fix multiline comment in skipped preprocessor directive | 2026-01-09 | 3 | -4/+19 | ||
| | | ||||||
| * | cpp: fix single-line comment after preprocessor directive | 2026-01-09 | 1 | -1/+1 | ||
| | | | | | It was eating up the newline token | |||||
| * | aarch64 codegen fixes | 2026-01-08 | 2 | -59/+100 | ||
| | | ||||||
| * | codegen: eliminate redudant consecutive ret sequences | 2026-01-08 | 2 | -0/+3 | ||
| | | ||||||
| * | ir: only stub out float <-> u64 cvt on x86 | 2026-01-08 | 1 | -4/+3 | ||
| | | | | | hackish.. | |||||
| * | irsimpl: optimize away cond branches after constant propagation | 2026-01-07 | 1 | -21/+69 | ||
| | | ||||||
| * | io.c: bugfix | 2026-01-07 | 1 | -1/+2 | ||
| | | ||||||
| * | aarch64: vshifts, flt cvt | 2026-01-07 | 2 | -6/+67 | ||
| | | ||||||
| * | basic CSE | 2026-01-04 | 5 | -0/+120 | ||
| | | ||||||
| * | ir bugfixes | 2026-01-04 | 2 | -4/+14 | ||
| | | ||||||
| * | rega: fix spill copy of i32 -> i64 | 2026-01-04 | 3 | -6/+6 | ||
| | | ||||||
| * | aarch64: LDR literal, cmp value | 2026-01-02 | 3 | -10/+34 | ||
| | | ||||||
| * | target sysv abi by default even for unknown abi | 2026-01-01 | 1 | -2/+2 | ||
| | | ||||||
| * | driver: when linking, put libraries at the end of command | 2026-01-01 | 1 | -1/+1 | ||
| | | ||||||
| * | Use a configure script, query system toolchain for default include paths | 2026-01-01 | 7 | -35/+135 | ||
| | | ||||||
| * | aarch64: not, flt load/store | 2025-12-31 | 2 | -11/+47 | ||
| | | ||||||
| * | c: fix diagnostic with "return <undeclared>" | 2025-12-31 | 1 | -2/+2 | ||
| | | ||||||
| * | aarch64 floats | 2025-12-31 | 2 | -51/+106 | ||
| | | ||||||
| * | backend: separate instrs for integer/float store | 2025-12-31 | 13 | -49/+79 | ||
| | | ||||||
| * | aarch64 isel syms with offset | 2025-12-31 | 3 | -41/+59 | ||
| | | ||||||
| * | c: SYM expr should store decl ref as an index, not pointer | 2025-12-30 | 3 | -52/+59 | ||
| | | | | | | | | | Because envdecls (now declsbuf) can be resized and invalidate those pointers. I missed this because the default initialization size of that buffer (and the fact that it would mostly only manifest with function-local expressions) made it not really come up in practice. Silly | |||||
| * | aarch64 mul/div | 2025-12-30 | 2 | -0/+31 | ||
| | | ||||||
| * | more aarch64 work | 2025-12-29 | 4 | -71/+212 | ||
| | | ||||||
| * | x86_64: optimize away some redundant zero extensions | 2025-12-29 | 1 | -1/+9 | ||
| | | ||||||
| * | x86_64/isel: aimm should take vlong | 2025-12-29 | 1 | -1/+1 | ||
| | | ||||||
| * | cpp: nicer handling of predefined macros | 2025-12-29 | 1 | -40/+29 | ||
| | | ||||||
| * | backend: start implementing aarch64 | 2025-12-28 | 11 | -24/+1245 | ||
| | | ||||||