diff --git a/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp b/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp index a3c600f1978f..da962e1d9112 100644 --- a/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp +++ b/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp @@ -1866,7 +1866,7 @@ SDNode *ARMDAGToDAGISel::Select(SDNode *N) { unsigned IntNo = cast(N->getOperand(1))->getZExtValue(); switch (IntNo) { default: - return SelectCode(N); + break; case Intrinsic::arm_neon_vld1: { unsigned DOpcodes[] = { ARM::VLD1d8, ARM::VLD1d16, @@ -1988,13 +1988,12 @@ SDNode *ARMDAGToDAGISel::Select(SDNode *N) { return SelectVLDSTLane(N, false, 4, DOpcodes, QOpcodes0, QOpcodes1); } } - llvm_unreachable("Unhandled intrinsic"); + break; } - case ISD::CONCAT_VECTORS: { + case ISD::CONCAT_VECTORS: return SelectConcatVector(N); } - } return SelectCode(N); }