aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/Support/GraphWriter.h
diff options
context:
space:
mode:
authorCameron Zwarich <zwarich@apple.com>2013-02-10 06:42:36 +0000
committerCameron Zwarich <zwarich@apple.com>2013-02-10 06:42:36 +0000
commitb7cfac32f32f17e64a5addfdb833702160650f14 (patch)
tree45c9bc3377d5c5ae4c39adc75427332e95c9e50a /include/llvm/Support/GraphWriter.h
parentd7c7a686ac18f8f3c035d158d8b713077be83ea4 (diff)
downloadexternal_llvm-b7cfac32f32f17e64a5addfdb833702160650f14.zip
external_llvm-b7cfac32f32f17e64a5addfdb833702160650f14.tar.gz
external_llvm-b7cfac32f32f17e64a5addfdb833702160650f14.tar.bz2
Add support for updating LiveIntervals to PHIElimination. If LiveIntervals are
present, it currently verifies them with the MachineVerifier, and this passed all of the test cases in 'make check' (when accounting for existing verifier errors). There were some assertion failures in the two-address pass, but they also happened on code without phis and look like they are caused by different kill flags from LiveIntervals. The only part that doesn't work is the critical edge splitting heuristic, because there isn't currently an efficient way to update LiveIntervals after splitting an edge. I'll probably start by implementing the slow fallback and test that it works before tackling the fast path for single-block ranges. The existing code that updates LiveVariables is fairly slow as it is. There isn't a command-line option for enabling this; instead, just edit PHIElimination.cpp to require LiveIntervals. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174831 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Support/GraphWriter.h')
0 files changed, 0 insertions, 0 deletions