aboutsummaryrefslogtreecommitdiffhomepage
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* c: fix compound assignment type conversions when types don't match lemon2025-12-102-0/+0
|
* Add lua 5.4.0 test suite lemon2025-12-07120-1/+59828
|
* test/12-flt: add some weird float cmp edgecases lemon2025-12-071-2/+9
|
* add command-line predefined macros (-D, -U) lemon2025-12-062-3/+6
|
* test 12-flt lemon2025-12-053-4/+36
|
* test/11-abi lemon2025-12-021-0/+37
|
* ir: implement cvtu64f. and other bug fixes lemon2025-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 builder lemon2025-11-231-2/+2
| | | | this should probably be in a separate pass?
* c: __builtin_va_copy lemon2025-11-231-0/+17
|
* implement float varargs, and some other fixes lemon2025-11-231-0/+22
|
* tests: add Nora Sandler's 'Write a C Compiler' test suite lemon2025-11-222-0/+4
|
* rename test/varargs lemon2025-11-191-0/+0
|
* make clean test/build lemon2025-11-161-1/+1
|
* basic automated testing lemon2025-11-1613-45/+162
|
* isel: don't incorrectly clamp constant lhs of shift operation lemon2025-11-151-1/+1
|
* preeliminary va_list support lemon2025-11-141-0/+17
|
* regalloc: misc lemon2025-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 insntrs lemon2025-10-181-0/+25
|
* wide str and char literals lemon2025-10-161-3/+6
|
* test more cpp behavior lemon2025-10-151-0/+18
|
* c: concatenate adjacent string literal tokens lemon2025-10-151-1/+4
|
* lex: allow ## in non func macros. and error reporting lemon2025-10-131-1/+8
|
* implement most of preprocessor lemon2025-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
* bugfixes lemon2025-10-101-1/+1
|
* update todo.txt lemon2025-10-091-2/+7
|
* compound literals lemon2025-10-091-0/+5
|
* bugfix for initz lemon2025-10-081-0/+1
|
* initial implementation of run-time array/aggregate initializers lemon2025-10-081-4/+14
|
* implement switch statement lemon2025-09-161-0/+45
|
* frontend: more bitfield work lemon2025-09-151-3/+20
|
* test/sort.c lemon2025-09-151-0/+31
|
* regalloc: hand-roll qsort (bikeshedding...) lemon2025-09-151-1/+1
|
* fix signed bitfield errata lemon2025-09-141-2/+2
|
* start implementing bitfields lemon2025-09-141-0/+12
|
* codegen: float cmp, ior; frontend: fix cond expr bug lemon2025-09-142-3/+23
|
* regalloc.c cleanup lemon2025-09-143-7/+5
|
* regalloc: basic spilling support lemon2025-09-131-0/+8
|
* c: function-local static vars lemon2025-09-124-3/+14
|
* lex: stringify args in function macros lemon2025-09-102-3/+8
|
* lex: implement basic function-like macro functionality lemon2025-09-102-6/+9
|
* fixes, delnops lemon2025-09-091-1/+1
|
* regalloc: start implementing linear scan lemon2025-09-084-1/+71
|
* frontend: #ifdef lemon2024-04-122-1/+11
|
* frontend: basic #include lemon2024-04-092-0/+14
|
* make ptr offset in init take obj size into account lemon2023-09-051-1/+1
|
* regalloc fixes and rpo lemon2023-07-091-1/+1
|
* add initializers (only static for initialier list rn) lemon2023-06-292-0/+90
| | | | and other fixes
* backend: don't mixup float and int temps lemon2023-06-241-0/+11
| | | | | | copy propagation only happens when dataclasses match, register allocator ignores hints if hint register class and instruction class differ, also add mov between int and float regs in amd64/emit
* backend: fix regalloc to work with more complex dataflow lemon2023-06-241-2/+8
| | | | | | | | basically an allocation map at the beginning (in) and end (out) of each block is kept and after the first allocation pass another pass is ran to resolve allocation conflicts between each edge, plus another pass to finish lowering phi functions. also introduced `regset` and plenty of other miscellaneous fixes