| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
|
| |
The original implementation was broken when presented with nested
short-circuiting logical operators.
|
| | |
|
| |
|
|
|
|
| |
Reverts 9abe27f6712. This simplies expr codegen, otherwise
would manually have to check `fn->curblk != NULL` repeatedly.
Later passes will easily delete those unreachable blocks
|
| |
|
|
|
| |
compiler is bootstrapping?! however, stage1 and stage2+ executables
aren't bit-identical.. small differences in the codegen.. need to look into that
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
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
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
when necesary
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
calls), compileexpr() can terminate current block. add checks for that in callexpr. more are probably needed..
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
intermediate load
|
| | |
|
| | |
|
| | |
|
| | |
|