summary refs log tree commit diff
path: root/isel.c
AgeCommit message (Collapse)Author
2016-12-29remove debugging stubQuentin Carbonneaux
2016-12-29do not create useless mem refsQuentin Carbonneaux
2016-12-29simplify seladdr()Quentin Carbonneaux
This also provides a violent fix to a bug causing an invalid addressing to be generated when indexing into a global variable. The fix is not satisfactory, though, as bad code is generated (instead of invalid code before).
2016-04-23correctly update nuse for jump argumentsQuentin Carbonneaux
2016-04-22refine fp conversion instructionsQuentin Carbonneaux
2016-04-20match jumps/ops with il textQuentin Carbonneaux
2016-04-13call fixarg on the correct instructionQuentin 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-12nicer agony message in iselQuentin Carbonneaux
2016-04-12more extensive handling of fast localsQuentin Carbonneaux
2016-04-12both comparison arguments need to be fixedQuentin Carbonneaux
The second argument will not be a constant because of the assertion. But it could be a fast local, and this situation needs to be handled by the last case of fixarg().
2016-04-12handle dumb conditional jumps in iselQuentin Carbonneaux
I also removed the code to handle jumps with a constant argument since those should be eliminated by the folding pass.
2016-03-31move abi code in a new fileQuentin Carbonneaux
2016-03-31cleanup error handlingQuentin Carbonneaux
2016-03-29new layout, put LICENSE in rootQuentin Carbonneaux