aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAgeFilesLines
* c: implement ++/-- for bitfields lemon2025-11-191-7/+21
|
* c: remove vestigial ins variable lemon2025-11-191-93/+88
|
* eval: fix enum edge case lemon2025-11-191-2/+2
|
* eval: fix b0c0f2d2d885 for ptr convertible lemon2025-11-191-1/+1
|
* debug output to stdout lemon2025-11-199-78/+84
|
* make clean test/build lemon2025-11-162-2/+2
|
* basic automated testing lemon2025-11-1614-45/+164
|
* eval: only isaddrconst for ptrs lemon2025-11-161-1/+1
|
* driver: allow passing thru objs when building executable lemon2025-11-161-17/+27
|
* factor type stuff into type.h lemon2025-11-167-209/+219
|
* c: due to __builtin_trap (in the future also things like noreturn function ↵ lemon2025-11-151-1/+5
| | | | calls), compileexpr() can terminate current block. add checks for that in callexpr. more are probably needed..
* c: disallow void arguments lemon2025-11-151-1/+3
|
* ir: 'trap' jump; c: __builtin_trap; lex: __has_builtin lemon2025-11-158-13/+65
|
* isel: don't incorrectly clamp constant lhs of shift operation lemon2025-11-152-5/+5
|
* emit: stack alignment edgecases lemon2025-11-151-5/+9
|
* driver: diagnostic for missing path after -o lemon2025-11-151-1/+1
|
* c: forward-declaring function with incomplete type shouldn't error lemon2025-11-151-10/+14
|
* isel: fold arith lemon2025-11-141-1/+21
|
* abi0: remove debugging leftover sortpo. but do number blks (free) lemon2025-11-141-1/+2
|
* sysv: document vaargs stack layout stuff lemon2025-11-141-3/+29
|
* preeliminary va_list support lemon2025-11-1415-206/+620
|
* mem2reg: handle uses in branches in cmpuse() lemon2025-11-121-0/+2
|
* driver: placeholder cmdline option handlers lemon2025-11-121-1/+12
|
* ir: fix addcon equality check.. lemon2025-11-121-1/+1
|
* revert b55005e5c08. correct fix was in c.c lemon2025-11-122-2/+0
|
* fold: clamp int to 32bits when required lemon2025-11-121-0/+1
|
* mem2reg: sort variable uses to match source order.. lemon2025-11-121-0/+21
|
* ir: free uses lemon2025-11-121-0/+4
|
* irdump: don't print fn ret type in non return branches lemon2025-11-121-1/+1
|
* amd64/isel: fold Oext with immediates lemon2025-11-121-0/+8
|
* implement argument passing in stack lemon2025-11-123-6/+20
|
* amd64: fix positive RBP off (stack params); address encoding errata lemon2025-11-121-2/+2
|
* fixup! amd64: get rid of xinc/xdec. handle those at emit stage lemon2025-11-092-1/+2
|
* amd64/isel: make `sub imm` work for address fusing lemon2025-11-091-2/+8
|
* amd64: get rid of xinc/xdec. handle those at emit stage lemon2025-11-093-28/+7
|
* abi: fix unaligned & overflowing loads/stores, for small size/aligned ↵ lemon2025-11-091-48/+84
| | | | structs passed in regs
* lex: fix single-line comment eating up preprocessor directive in next line lemon2025-11-081-1/+1
|
* lex: #warning and #error lemon2025-11-081-2/+13
|
* driver: add -I commandline option lemon2025-11-081-6/+15
|
* c: inc/dec ptr should use ptrdiff integer class lemon2025-11-071-2/+2
|
* c: fix codegen bug with compound bitfield assignment reusing wrong ↵ lemon2025-11-071-4/+7
| | | | intermediate load
* amd64: errata with unsigned greater than or equal (should be JAE) lemon2025-11-061-1/+1
|
* fold/builder: fix bad use of iscon in place of isnumcon lemon2025-11-062-6/+6
|
* c: do fold conditional exprs lemon2025-11-061-1/+16
|
* delete some dead code lemon2025-11-051-2/+0
|
* amd64: fix aggregate abi stuff;; ir: fold, peephole optimizing constructors lemon2025-11-0512-213/+522
|
* regalloc: misc lemon2025-11-022-3/+14
|
* cfg: allow dead blocks with alloca pseudo instrs lemon2025-11-021-2/+7
|
* c: various codegen bugs lemon2025-11-021-6/+18
|
* c: more initializer fixes lemon2025-11-021-6/+8
|