macaw/x86
Tristan Ravitch 6a4f406c68 Revisit handling of tail calls
It turns out that we have to be more conservative with tail call identification,
as incorrectly identifying a block as the target of a tail call (instead of a
branch) can cause other branch classifiers to fail if that block is the target
of another jump.

Ultimately, we will need to give up some tail call recognition (since they are
in general indistinguishable from jumps), and instead only identify known call
targets as tail call candidates.

With additional global analysis we could do better.

Fixes #294
2022-06-27 15:02:43 -07:00
..
src/Data/Macaw Fix -Wincomplete-uni-patterns warnings 2022-05-31 15:50:48 -04:00
support Add x86-support to travis 2019-03-26 08:21:01 -07:00
tests Revisit handling of tail calls 2022-06-27 15:02:43 -07:00
x86_tests Segment register updates; stack offset calculation. 2019-09-20 13:58:05 -07:00
.gitignore Add x86 specific code. 2017-09-27 15:54:43 -07:00
LICENSE Update license information. 2017-09-27 15:59:06 -07:00
macaw-x86.cabal [x86] Add an option to save macaw IR from test cases 2022-06-27 15:02:43 -07:00