diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-10-08 22:06:44 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-10-08 22:06:44 +0000 |
commit | 9d1173a86e6cad50e506008bc3e35b57c714612d (patch) | |
tree | 28044e2d5b378b891da468be97321acb0045b34a /llvm/lib/AsmParser/LLParser.cpp | |
parent | 73ea2defb22c0cd4da7fab6c387e827291e79734 (diff) | |
download | bcm5719-llvm-9d1173a86e6cad50e506008bc3e35b57c714612d.tar.gz bcm5719-llvm-9d1173a86e6cad50e506008bc3e35b57c714612d.zip |
Don't crash on extra evil irreducible control flow.
When the CFG contains a loop with multiple entry blocks, the traces
computed by MachineTraceMetrics don't always have the same nice
properties. Loop back-edges are normally excluded from traces, but
MachineLoopInfo doesn't recognize loops with multiple entry blocks, so
those back-edges may be included.
Avoid asserting when that happens by adding an isEarlierInSameTrace()
function that accurately determines if a dominating block is part of the
same trace AND is above the currrent block in the trace.
llvm-svn: 165434
Diffstat (limited to 'llvm/lib/AsmParser/LLParser.cpp')
0 files changed, 0 insertions, 0 deletions