diff options
-rw-r--r-- | lib/Target/PowerPC/PPCISelDAGToDAG.cpp | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/lib/Target/PowerPC/PPCISelDAGToDAG.cpp b/lib/Target/PowerPC/PPCISelDAGToDAG.cpp index 8663dd41e5..561099b24b 100644 --- a/lib/Target/PowerPC/PPCISelDAGToDAG.cpp +++ b/lib/Target/PowerPC/PPCISelDAGToDAG.cpp @@ -1524,20 +1524,16 @@ void PPCDAGToDAGISel::PostprocessISelDAG() { // If the relocation information isn't already present on the // immediate operand, add it now. if (ReplaceFlags) { - GlobalAddressSDNode *GA = dyn_cast<GlobalAddressSDNode>(ImmOpnd); - - if (GA) { + if (GlobalAddressSDNode *GA = dyn_cast<GlobalAddressSDNode>(ImmOpnd)) { DebugLoc dl = GA->getDebugLoc(); const GlobalValue *GV = GA->getGlobal(); ImmOpnd = CurDAG->getTargetGlobalAddress(GV, dl, MVT::i64, 0, Flags); - } else { - ConstantPoolSDNode *CP = dyn_cast<ConstantPoolSDNode>(ImmOpnd); - if (CP) { - const Constant *C = CP->getConstVal(); - ImmOpnd = CurDAG->getTargetConstantPool(C, MVT::i64, - CP->getAlignment(), - 0, Flags); - } + } + else if (ConstantPoolSDNode *CP = dyn_cast<ConstantPoolSDNode>(ImmOpnd)) { + const Constant *C = CP->getConstVal(); + ImmOpnd = CurDAG->getTargetConstantPool(C, MVT::i64, + CP->getAlignment(), + 0, Flags); } } |