aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAgeFilesLines
* eval: only isaddrconst for ptrslemon2025-11-161-1/+1
|
* driver: allow passing thru objs when building executablelemon2025-11-161-17/+27
|
* factor type stuff into type.hlemon2025-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 argumentslemon2025-11-151-1/+3
|
* ir: 'trap' jump; c: __builtin_trap; lex: __has_builtinlemon2025-11-158-13/+65
|
* isel: don't incorrectly clamp constant lhs of shift operationlemon2025-11-152-5/+5
|
* emit: stack alignment edgecaseslemon2025-11-151-5/+9
|
* driver: diagnostic for missing path after -olemon2025-11-151-1/+1
|
* c: forward-declaring function with incomplete type shouldn't errorlemon2025-11-151-10/+14
|
* isel: fold arithlemon2025-11-141-1/+21
|
* abi0: remove debugging leftover sortpo. but do number blks (free)lemon2025-11-141-1/+2
|
* sysv: document vaargs stack layout stufflemon2025-11-141-3/+29
|
* preeliminary va_list supportlemon2025-11-1415-206/+620
|
* mem2reg: handle uses in branches in cmpuse()lemon2025-11-121-0/+2
|
* driver: placeholder cmdline option handlerslemon2025-11-121-1/+12
|
* ir: fix addcon equality check..lemon2025-11-121-1/+1
|
* revert b55005e5c08. correct fix was in c.clemon2025-11-122-2/+0
|
* fold: clamp int to 32bits when requiredlemon2025-11-121-0/+1
|
* mem2reg: sort variable uses to match source order..lemon2025-11-121-0/+21
|
* ir: free useslemon2025-11-121-0/+4
|
* irdump: don't print fn ret type in non return brancheslemon2025-11-121-1/+1
|
* amd64/isel: fold Oext with immediateslemon2025-11-121-0/+8
|
* implement argument passing in stacklemon2025-11-123-6/+20
|
* amd64: fix positive RBP off (stack params); address encoding erratalemon2025-11-121-2/+2
|
* fixup! amd64: get rid of xinc/xdec. handle those at emit stagelemon2025-11-092-1/+2
|
* amd64/isel: make `sub imm` work for address fusinglemon2025-11-091-2/+8
|
* amd64: get rid of xinc/xdec. handle those at emit stagelemon2025-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 linelemon2025-11-081-1/+1
|
* lex: #warning and #errorlemon2025-11-081-2/+13
|
* driver: add -I commandline optionlemon2025-11-081-6/+15
|
* c: inc/dec ptr should use ptrdiff integer classlemon2025-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 isnumconlemon2025-11-062-6/+6
|
* c: do fold conditional exprslemon2025-11-061-1/+16
|
* delete some dead codelemon2025-11-051-2/+0
|
* amd64: fix aggregate abi stuff;; ir: fold, peephole optimizing constructorslemon2025-11-0512-213/+522
|
* regalloc: misclemon2025-11-022-3/+14
|
* cfg: allow dead blocks with alloca pseudo instrslemon2025-11-021-2/+7
|
* c: various codegen bugslemon2025-11-021-6/+18
|
* c: more initializer fixeslemon2025-11-021-6/+8
|
* isel: fix 3-address add when used for flags in branchlemon2025-11-021-0/+3
|
* rega: fix parallel stack moveslemon2025-11-021-6/+19
|
* isel fixeslemon2025-10-302-4/+11
|
* update todo.txtlemon2025-10-301-3/+1
|
* lex: fix bugs filling char bufferlemon2025-10-273-16/+24
|
* rega: fix Ocopy of stk->stklemon2025-10-261-3/+2
|
* c: more initializer fixeslemon2025-10-261-11/+28
|