Age | Commit message (Collapse) | Author | |
---|---|---|---|
2016-08-15 | specify the allocation function in vnew | Quentin Carbonneaux | |
2016-08-14 | couple of case fixes in tokens | Quentin Carbonneaux | |
2016-08-14 | use an enum for aggregate segments | Quentin Carbonneaux | |
2016-08-14 | get rid of old Alt enum | Quentin Carbonneaux | |
2016-04-25 | fix type size computations in parser | Quentin Carbonneaux | |
The type sizes are important to get right because the ABI relies on them when it emits memory blits to pass/return structs. | |||
2016-04-23 | correctly update nuse for jump arguments | Quentin Carbonneaux | |
2016-04-22 | use short for classes (so it is signed for sure) | Quentin Carbonneaux | |
2016-04-22 | update documentation with new fp conversions | Quentin Carbonneaux | |
2016-04-22 | refine fp conversion instructions | Quentin Carbonneaux | |
2016-04-22 | make sure type sizes never overflow | Quentin Carbonneaux | |
2016-04-21 | oops fix wrong instruction names in doc | Quentin Carbonneaux | |
2016-04-21 | cosmetics in all.h | Quentin Carbonneaux | |
2016-04-21 | make mcc runable from anywhere | Quentin Carbonneaux | |
2016-04-20 | disallow phi nodes in the start block | Quentin Carbonneaux | |
AFL found this bug. | |||
2016-04-20 | support calls with no return | Quentin Carbonneaux | |
I thought it would be harder (and maybe it is). My fear was that a call must be always followed by a parallel move from machine registers (this is an assumption in both spill and rega). This however remains true, because the ABI code generates a dummy "copy RAX" by accident! | |||
2016-04-20 | normalize case in token names | Quentin Carbonneaux | |
2016-04-20 | match jumps/ops with il text | Quentin Carbonneaux | |
2016-04-19 | add compilation instructions | Quentin Carbonneaux | |
2016-04-19 | use assert for ssa invariants in fold/copy | Quentin Carbonneaux | |
2016-04-19 | check for trivial undefined uses in ssacheck | Quentin Carbonneaux | |
2016-04-19 | rename only live phi arguments in fold | Quentin Carbonneaux | |
AFL found that. | |||
2016-04-18 | add tool to process afl results | Quentin Carbonneaux | |
2016-04-18 | factor some subtyping logic in clsmerge() | Quentin Carbonneaux | |
2016-04-18 | phis can assign slots after spill | Quentin Carbonneaux | |
2016-04-18 | make sure non-register temporaries get a slot | Quentin Carbonneaux | |
Inside the main instruction-processing loop, it is taken care of by limit. However at block boundaries we are doing fancy bitset operations without calling limit. | |||
2016-04-18 | output debug to stderr in spiller | Quentin Carbonneaux | |
2016-04-18 | do not rewrite overwritten slots in memopt | Quentin Carbonneaux | |
2016-04-17 | compute dead phi args correctly in fold | Quentin Carbonneaux | |
The code computing if "the" edge of a phi argument is live or dead was wrong. AFL found that. | |||
2016-04-16 | use unsigned long long for bits | Quentin Carbonneaux | |
2016-04-16 | support trailing , in types/args/params | Ori Bernstein | |
2016-04-16 | fix relic error message | Quentin Carbonneaux | |
2016-04-13 | add regression test for liveon bug | Quentin Carbonneaux | |
2016-04-13 | add regression test for fixarg bug | Quentin Carbonneaux | |
2016-04-13 | call fixarg on the correct instruction | Quentin Carbonneaux | |
Because one call to fixarg can emit an instruction, using curi, for the second fixarg calls patched is incorrect. AFL found that bug. | |||
2016-04-13 | add funny 80 target | Quentin Carbonneaux | |
2016-04-13 | oops, memcpy -> memmove | Quentin Carbonneaux | |
2016-04-13 | check types on assignments | Quentin Carbonneaux | |
2016-04-13 | turn alignment asserts into err() | Quentin Carbonneaux | |
2016-04-13 | handle odd jumps in blkdel() an renblk() | Quentin Carbonneaux | |
2016-04-13 | do not compute def-use links for regs | Quentin Carbonneaux | |
2016-04-13 | hack an ssa validator (likely buggy) | Quentin Carbonneaux | |
2016-04-13 | add unsigned comparisons to emit | Quentin Carbonneaux | |
2016-04-13 | handle the bad jump case | Quentin Carbonneaux | |
2016-04-13 | add new minic test | Quentin Carbonneaux | |
2016-04-13 | separate name and index in newtmp() | Quentin Carbonneaux | |
2016-04-13 | harden memopt() | Quentin Carbonneaux | |
2016-04-12 | bug in checking of multiple definitions | Quentin Carbonneaux | |
2016-04-12 | subtle bug in liveness! | Quentin Carbonneaux | |
If on of the phis in a block A uses the result of another one when coming from B, we have to be careful! | |||
2016-04-12 | add missing idiv in opdesc[] | Quentin Carbonneaux | |
2016-04-12 | cosmetic modification in fold | Quentin Carbonneaux | |