mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-03 08:51:43 +00:00
Enable machine code verification after PreSched2 passes.
The late scheduler depends on accurate liveness information if it is breaking anti-dependencies, so we should be able to verify it. Relax the terminator checking in the machine code verifier so it can handle the basic blocks created by if conversion. llvm-svn: 153614
This commit is contained in:
parent
591cf2fd07
commit
4b4ee58c4c
@ -609,7 +609,9 @@ void MachineVerifier::visitMachineInstrBefore(const MachineInstr *MI) {
|
||||
}
|
||||
|
||||
// Ensure non-terminators don't follow terminators.
|
||||
if (MI->isTerminator()) {
|
||||
// Ignore predicated terminators formed by if conversion.
|
||||
// FIXME: If conversion shouldn't need to violate this rule.
|
||||
if (MI->isTerminator() && !TII->isPredicated(MI)) {
|
||||
if (!FirstTerminator)
|
||||
FirstTerminator = MI;
|
||||
} else if (FirstTerminator) {
|
||||
|
@ -398,7 +398,7 @@ void TargetPassConfig::addMachinePasses() {
|
||||
|
||||
// Run pre-sched2 passes.
|
||||
if (addPreSched2())
|
||||
printNoVerify("After PreSched2 passes");
|
||||
printAndVerify("After PreSched2 passes");
|
||||
|
||||
// Second pass scheduler.
|
||||
if (getOptLevel() != CodeGenOpt::None) {
|
||||
|
Loading…
Reference in New Issue
Block a user