diff options
Diffstat (limited to 'llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp')
-rw-r--r-- | llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp b/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp index 29b75814da6e..e7d3c7c24f34 100644 --- a/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp +++ b/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp @@ -1954,6 +1954,8 @@ HexagonTargetLowering::WidenHvxSetCC(SDValue Op, SelectionDAG &DAG) const { unsigned WideOpLen = (8 * HwLen) / ElemTy.getSizeInBits(); assert(WideOpLen * ElemTy.getSizeInBits() == 8 * HwLen); MVT WideOpTy = MVT::getVectorVT(ElemTy, WideOpLen); + if (!Subtarget.isHVXVectorType(WideOpTy, true)) + return SDValue(); SDValue WideOp0 = appendUndef(Op0, WideOpTy, DAG); SDValue WideOp1 = appendUndef(Op1, WideOpTy, DAG); |