aboutsummaryrefslogtreecommitdiffhomepage
path: root/c
Commit message (Collapse)AuthorAgeFilesLines
* c: move warning for extension keyword til after preprocessor lemon2025-11-223-4/+12
|
* lex: #include ".." should also look in working directory lemon2025-11-221-19/+17
|
* lex: move token data from tmp to glob arena when used in a macro body lemon2025-11-221-2/+7
| | | | | | maybe introduce per-macro arenas to tie their lifetimes to that. but most macros have global lifetime (i.e. aren't #undef'd) so there probably wouldn't be much benefit to that
* c: cast should narrow for narrow ints lemon2025-11-221-2/+3
|
* amd64/emit: fix REX-requiring 8-bit GPR encoding checking wrong reg lemon2025-11-221-0/+2
|
* remove umul lemon2025-11-211-2/+2
|
* change op names to match 285063eba44 lemon2025-11-211-20/+20
|
* rename IR classes to reflect bitsize lemon2025-11-211-16/+16
|
* c: fix conditional expr not converting operands to final type lemon2025-11-211-9/+13
|
* cpp: add predefined __antcc__ macro, for debugging lemon2025-11-201-0/+1
|
* isel: lower allocas a different way, such that stk address gets materialized ↵ lemon2025-11-201-1/+1
| | | | when necesary
* ir: for easier debugging, keep ctype in dats, print as literal when possible lemon2025-11-201-1/+1
|
* 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-191-2/+2
|
* eval: only isaddrconst for ptrs lemon2025-11-161-1/+1
|
* factor type stuff into type.h lemon2025-11-162-0/+2
|
* 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-153-9/+50
|
* c: forward-declaring function with incomplete type shouldn't error lemon2025-11-151-10/+14
|
* preeliminary va_list support lemon2025-11-144-168/+346
|
* revert b55005e5c08. correct fix was in c.c lemon2025-11-121-1/+0
|
* 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
|
* 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
* c: do fold conditional exprs lemon2025-11-061-1/+16
|
* amd64: fix aggregate abi stuff;; ir: fold, peephole optimizing constructors lemon2025-11-052-89/+115
|
* c: various codegen bugs lemon2025-11-021-6/+18
|
* c: more initializer fixes lemon2025-11-021-6/+8
|
* lex: fix bugs filling char buffer lemon2025-10-272-15/+23
|
* c: more initializer fixes lemon2025-10-261-11/+28
|
* c: alloca fixup wrong when not emitsing lemon2025-10-251-2/+3
|
* c: avoid generating relocations in .rodata (putting such objects in .data ↵ lemon2025-10-251-12/+25
| | | | instead for now)
* c: bitfield initialzers lemon2025-10-241-17/+31
|
* c: also propagate terminates in genswitch lemon2025-10-241-3/+10
|
* codegen fixes, propagate terminate lemon2025-10-241-1/+6
|
* lex enlarge internht lemon2025-10-231-1/+1
|
* c erratas lemon2025-10-232-2/+2
|
* c: make `sizeof (foo)->bar` work as expected.. lemon2025-10-231-88/+102
|
* c: make builtin va_list an opaque struct lemon2025-10-231-1/+9
|
* lex: fix expansion for fn like macros passed as macro arguments lemon2025-10-231-1/+1
|
* lex: fix consecutive preprocessor concatenation lemon2025-10-231-7/+10
|
* c: allow empty declarations in some contexts lemon2025-10-231-4/+17
|
* use libc's stdout/stderr; also eliminate some unnecessary recursion in bfmt lemon2025-10-231-1/+1
|
* lex: fix base-16 literals adding an extra zero when there's a type suffix lemon2025-10-231-4/+3
|
* eval: fix indexing string literal lemon2025-10-231-2/+2
|