From: Evan Cheng Date: Fri, 29 Feb 2008 17:52:15 +0000 (+0000) Subject: Fix PR2112: don't run loop aligner if target doesn't have a TargetLowering object. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=4f658e9e4b2c7c25779c304a90f460615d35e555;p=oota-llvm.git Fix PR2112: don't run loop aligner if target doesn't have a TargetLowering object. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47755 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/LoopAligner.cpp b/lib/CodeGen/LoopAligner.cpp index a40bb50565d..1888391d5e7 100644 --- a/lib/CodeGen/LoopAligner.cpp +++ b/lib/CodeGen/LoopAligner.cpp @@ -24,8 +24,6 @@ using namespace llvm; namespace { class LoopAligner : public MachineFunctionPass { - const TargetLowering *TLI; - public: static char ID; LoopAligner() : MachineFunctionPass((intptr_t)&ID) {} @@ -51,7 +49,11 @@ bool LoopAligner::runOnMachineFunction(MachineFunction &MF) { if (MLI->begin() == MLI->end()) return false; // No loops. - unsigned Align = MF.getTarget().getTargetLowering()->getPrefLoopAlignment(); + const TargetLowering *TLI = MF.getTarget().getTargetLowering(); + if (!TLI) + return false; + + unsigned Align = TLI->getPrefLoopAlignment(); if (!Align) return false; // Don't care about loop alignment.