mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-04 21:30:49 +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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153614 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
3bb17380b1
commit
78811669d5
@ -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