]> granicus.if.org Git - llvm/commitdiff
Appease compilers that have the -Wcovered-switch-default switch.
authorNemanja Ivanovic <nemanja.i.ibm@gmail.com>
Tue, 8 Aug 2017 12:41:56 +0000 (12:41 +0000)
committerNemanja Ivanovic <nemanja.i.ibm@gmail.com>
Tue, 8 Aug 2017 12:41:56 +0000 (12:41 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@310356 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/PowerPC/PPCISelDAGToDAG.cpp

index 16325e7609806d5db0b984791013a4816371b836..168df47c19e3f19c58e88c5cf3cf0cf108425b05 100644 (file)
@@ -2814,7 +2814,6 @@ SDValue PPCDAGToDAGISel::getCompoundZeroComparisonInGPR(SDValue LHS, SDLoc dl,
 
   // Produce the value that needs to be either zero or sign extended.
   switch (CmpTy) {
-  default: llvm_unreachable("Unknown Zero-comparison type.");
   case ZeroCompare::GEZExt:
   case ZeroCompare::GESExt:
     ToExtend = SDValue(CurDAG->getMachineNode(Is32Bit ? PPC::NOR : PPC::NOR8,
@@ -2850,7 +2849,6 @@ SDValue PPCDAGToDAGISel::getCompoundZeroComparisonInGPR(SDValue LHS, SDLoc dl,
   assert(Is32Bit && "Should have handled the 32-bit sequences above.");
   // For 32-bit sequences, the extensions differ between GE/LE cases.
   switch (CmpTy) {
-  default: llvm_unreachable("Unknown Zero-comparison type.");
   case ZeroCompare::GEZExt: {
     SDValue ShiftOps[] =
       { ToExtend, getI32Imm(1, dl), getI32Imm(31, dl), getI32Imm(31, dl) };
@@ -2867,6 +2865,11 @@ SDValue PPCDAGToDAGISel::getCompoundZeroComparisonInGPR(SDValue LHS, SDLoc dl,
     return SDValue(CurDAG->getMachineNode(PPC::ADDI, dl, MVT::i32, ToExtend,
                                           getI32Imm(-1, dl)), 0);
   }
+
+  // Some compilers warn if there's a default label in the switch above, others
+  // warn if there isn't a return statement here or in a default label. Appease
+  // both (even though this is unreachable).
+  return SDValue();
 }
 
 /// Produces a zero-extended result of comparing two 32-bit values according to