#include "llvm/Target/TargetMachine.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
+#include "llvm/Support/ErrorHandling.h"
+#include "llvm/Support/raw_ostream.h"
#include "llvm/ADT/DepthFirstIterator.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/ADT/STLExtras.h"
const TargetLowering *TLI;
const TargetInstrInfo *TII;
bool MadeChange;
+ int FnNum;
public:
static char ID;
- IfConverter() : MachineFunctionPass(&ID) {}
+ IfConverter() : MachineFunctionPass(&ID), FnNum(-1) {}
virtual bool runOnMachineFunction(MachineFunction &MF);
virtual const char *getPassName() const { return "If Converter"; }
TII = MF.getTarget().getInstrInfo();
if (!TII) return false;
- static int FnNum = -1;
DOUT << "\nIfcvt: function (" << ++FnNum << ") \'"
<< MF.getFunction()->getName() << "\'";
if (TII->isPredicated(I))
continue;
if (!TII->PredicateInstruction(I, Cond)) {
+#ifndef NDEBUG
cerr << "Unable to predicate " << *I << "!\n";
- abort();
+#endif
+ llvm_unreachable(0);
}
}
if (!isPredicated)
if (!TII->PredicateInstruction(MI, Cond)) {
- cerr << "Unable to predicate " << *MI << "!\n";
- abort();
+#ifndef NDEBUG
+ cerr << "Unable to predicate " << *I << "!\n";
+#endif
+ llvm_unreachable(0);
}
}