aboutsummaryrefslogtreecommitdiffhomepage
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
...
* c: handle more static eval edgecases for int -> ptrlemon2025-12-131-0/+9
| | | | | sqlite3 was falling back to `((void*)&((char*)0)[X])` for INT_TO_PTR, which this handles now.
* Add -O optimization flaglemon2025-12-131-0/+1
|
* fix position independent loads of function symbols.lemon2025-12-133-10/+30
| | | | | | | | For `extern int x[1];`, can use PCREL32 for &x. But for `extern int x(int)`, must use GOTREL, when not being called directly (that's PLT). Therefore the type of an external symbol (actually just whether it denotes a function) matters when deciding what kind of relocation to emit, so keep that information.
* test/14lemon2025-12-131-0/+12
|
* c: accept C99 `[static N]` style array decls, changes to fn qualslemon2025-12-111-0/+5
| | | | | | Function parameters qualifiers don't matter outside of function definition. `int (const int)` should be compatible with `int(int)` etc. So no need to store them in the typedata.
* _Alignof and stufflemon2025-12-111-0/+22
|
* update lua/.gitignorelemon2025-12-101-0/+2
|
* c: fix compound assignment type conversions when types don't matchlemon2025-12-102-0/+0
|
* Add lua 5.4.0 test suitelemon2025-12-07120-1/+59828
|
* test/12-flt: add some weird float cmp edgecaseslemon2025-12-071-2/+9
|
* add command-line predefined macros (-D, -U)lemon2025-12-062-3/+6
|
* test 12-fltlemon2025-12-053-4/+36
|
* test/11-abilemon2025-12-021-0/+37
|
* ir: implement cvtu64f. and other bug fixeslemon2025-11-231-2/+2
| | | | | compiler is bootstrapping?! however, stage1 and stage2+ executables aren't bit-identical.. small differences in the codegen.. need to look into that
* implement cvtfXu64 by lowering it in builderlemon2025-11-231-2/+2
| | | | this should probably be in a separate pass?
* c: __builtin_va_copylemon2025-11-231-0/+17
|
* implement float varargs, and some other fixeslemon2025-11-231-0/+22
|
* tests: add Nora Sandler's 'Write a C Compiler' test suitelemon2025-11-222-0/+4
|
* rename test/varargslemon2025-11-191-0/+0
|
* make clean test/buildlemon2025-11-161-1/+1
|
* basic automated testinglemon2025-11-1613-45/+162
|
* isel: don't incorrectly clamp constant lhs of shift operationlemon2025-11-151-1/+1
|
* preeliminary va_list supportlemon2025-11-141-0/+17
|
* regalloc: misclemon2025-11-021-0/+11
|
* c: avoid generating relocations in .rodata (putting such objects in .data ↵lemon2025-10-251-0/+2
| | | | instead for now)
* amd64: float conversion insntrslemon2025-10-181-0/+25
|
* wide str and char literalslemon2025-10-161-3/+6
|
* test more cpp behaviorlemon2025-10-151-0/+18
|
* c: concatenate adjacent string literal tokenslemon2025-10-151-1/+4
|
* lex: allow ## in non func macros. and error reportinglemon2025-10-131-1/+8
|
* implement most of preprocessorlemon2025-10-133-3/+15
| | | | | | | | - concatenation (##) - builtin macros (__FILE__ etc) - fails in some edge cases, and code needs cleanup - add embedded system include files (stddef.h, stdarg.h for now) - can handle stdio.h now
* bugfixeslemon2025-10-101-1/+1
|
* update todo.txtlemon2025-10-091-2/+7
|
* compound literalslemon2025-10-091-0/+5
|
* bugfix for initzlemon2025-10-081-0/+1
|
* initial implementation of run-time array/aggregate initializerslemon2025-10-081-4/+14
|
* implement switch statementlemon2025-09-161-0/+45
|
* frontend: more bitfield worklemon2025-09-151-3/+20
|
* test/sort.clemon2025-09-151-0/+31
|
* regalloc: hand-roll qsort (bikeshedding...)lemon2025-09-151-1/+1
|
* fix signed bitfield erratalemon2025-09-141-2/+2
|
* start implementing bitfieldslemon2025-09-141-0/+12
|
* codegen: float cmp, ior; frontend: fix cond expr buglemon2025-09-142-3/+23
|
* regalloc.c cleanuplemon2025-09-143-7/+5
|
* regalloc: basic spilling supportlemon2025-09-131-0/+8
|
* c: function-local static varslemon2025-09-124-3/+14
|
* lex: stringify args in function macroslemon2025-09-102-3/+8
|
* lex: implement basic function-like macro functionalitylemon2025-09-102-6/+9
|
* fixes, delnopslemon2025-09-091-1/+1
|
* regalloc: start implementing linear scanlemon2025-09-084-1/+71
|