diff --git a/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp b/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp index 96fa85179d023..2eb8c6008db0f 100644 --- a/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp +++ b/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp @@ -7216,57 +7216,6 @@ void AArch64DAGToDAGISel::Select(SDNode *Node) { } break; } - case AArch64ISD::SVE_LD2_MERGE_ZERO: { - if (VT == MVT::nxv16i8) { - SelectPredicatedLoad(Node, 2, 0, AArch64::LD2B_IMM, AArch64::LD2B); - return; - } else if (VT == MVT::nxv8i16 || VT == MVT::nxv8f16 || - VT == MVT::nxv8bf16) { - SelectPredicatedLoad(Node, 2, 1, AArch64::LD2H_IMM, AArch64::LD2H); - return; - } else if (VT == MVT::nxv4i32 || VT == MVT::nxv4f32) { - SelectPredicatedLoad(Node, 2, 2, AArch64::LD2W_IMM, AArch64::LD2W); - return; - } else if (VT == MVT::nxv2i64 || VT == MVT::nxv2f64) { - SelectPredicatedLoad(Node, 2, 3, AArch64::LD2D_IMM, AArch64::LD2D); - return; - } - break; - } - case AArch64ISD::SVE_LD3_MERGE_ZERO: { - if (VT == MVT::nxv16i8) { - SelectPredicatedLoad(Node, 3, 0, AArch64::LD3B_IMM, AArch64::LD3B); - return; - } else if (VT == MVT::nxv8i16 || VT == MVT::nxv8f16 || - VT == MVT::nxv8bf16) { - SelectPredicatedLoad(Node, 3, 1, AArch64::LD3H_IMM, AArch64::LD3H); - return; - } else if (VT == MVT::nxv4i32 || VT == MVT::nxv4f32) { - SelectPredicatedLoad(Node, 3, 2, AArch64::LD3W_IMM, AArch64::LD3W); - return; - } else if (VT == MVT::nxv2i64 || VT == MVT::nxv2f64) { - SelectPredicatedLoad(Node, 3, 3, AArch64::LD3D_IMM, AArch64::LD3D); - return; - } - break; - } - case AArch64ISD::SVE_LD4_MERGE_ZERO: { - if (VT == MVT::nxv16i8) { - SelectPredicatedLoad(Node, 4, 0, AArch64::LD4B_IMM, AArch64::LD4B); - return; - } else if (VT == MVT::nxv8i16 || VT == MVT::nxv8f16 || - VT == MVT::nxv8bf16) { - SelectPredicatedLoad(Node, 4, 1, AArch64::LD4H_IMM, AArch64::LD4H); - return; - } else if (VT == MVT::nxv4i32 || VT == MVT::nxv4f32) { - SelectPredicatedLoad(Node, 4, 2, AArch64::LD4W_IMM, AArch64::LD4W); - return; - } else if (VT == MVT::nxv2i64 || VT == MVT::nxv2f64) { - SelectPredicatedLoad(Node, 4, 3, AArch64::LD4D_IMM, AArch64::LD4D); - return; - } - break; - } } // Select the default instruction @@ -7340,15 +7289,6 @@ static EVT getMemVTFromNode(LLVMContext &Ctx, SDNode *Root) { return cast(Root->getOperand(3))->getVT(); case AArch64ISD::ST1_PRED: return cast(Root->getOperand(4))->getVT(); - case AArch64ISD::SVE_LD2_MERGE_ZERO: - return getPackedVectorTypeFromPredicateType( - Ctx, Root->getOperand(1)->getValueType(0), /*NumVec=*/2); - case AArch64ISD::SVE_LD3_MERGE_ZERO: - return getPackedVectorTypeFromPredicateType( - Ctx, Root->getOperand(1)->getValueType(0), /*NumVec=*/3); - case AArch64ISD::SVE_LD4_MERGE_ZERO: - return getPackedVectorTypeFromPredicateType( - Ctx, Root->getOperand(1)->getValueType(0), /*NumVec=*/4); default: break; } diff --git a/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp b/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp index 293292d47dd48..a43c210a8584e 100644 --- a/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp +++ b/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp @@ -2955,9 +2955,6 @@ const char *AArch64TargetLowering::getTargetNodeName(unsigned Opcode) const { MAKE_CASE(AArch64ISD::LDFF1S_MERGE_ZERO) MAKE_CASE(AArch64ISD::LD1RQ_MERGE_ZERO) MAKE_CASE(AArch64ISD::LD1RO_MERGE_ZERO) - MAKE_CASE(AArch64ISD::SVE_LD2_MERGE_ZERO) - MAKE_CASE(AArch64ISD::SVE_LD3_MERGE_ZERO) - MAKE_CASE(AArch64ISD::SVE_LD4_MERGE_ZERO) MAKE_CASE(AArch64ISD::GLD1_MERGE_ZERO) MAKE_CASE(AArch64ISD::GLD1_SCALED_MERGE_ZERO) MAKE_CASE(AArch64ISD::GLD1_SXTW_MERGE_ZERO) @@ -3017,7 +3014,6 @@ const char *AArch64TargetLowering::getTargetNodeName(unsigned Opcode) const { MAKE_CASE(AArch64ISD::CTLZ_MERGE_PASSTHRU) MAKE_CASE(AArch64ISD::CTPOP_MERGE_PASSTHRU) MAKE_CASE(AArch64ISD::DUP_MERGE_PASSTHRU) - MAKE_CASE(AArch64ISD::INDEX_VECTOR) MAKE_CASE(AArch64ISD::ADDP) MAKE_CASE(AArch64ISD::SADDLP) MAKE_CASE(AArch64ISD::UADDLP) diff --git a/llvm/lib/Target/AArch64/AArch64ISelLowering.h b/llvm/lib/Target/AArch64/AArch64ISelLowering.h index c1e6d70099fa5..02223f7d36964 100644 --- a/llvm/lib/Target/AArch64/AArch64ISelLowering.h +++ b/llvm/lib/Target/AArch64/AArch64ISelLowering.h @@ -360,7 +360,6 @@ enum NodeType : unsigned { CTLZ_MERGE_PASSTHRU, CTPOP_MERGE_PASSTHRU, DUP_MERGE_PASSTHRU, - INDEX_VECTOR, // Cast between vectors of the same element type but differ in length. REINTERPRET_CAST, @@ -378,11 +377,6 @@ enum NodeType : unsigned { LD1RQ_MERGE_ZERO, LD1RO_MERGE_ZERO, - // Structured loads. - SVE_LD2_MERGE_ZERO, - SVE_LD3_MERGE_ZERO, - SVE_LD4_MERGE_ZERO, - // Unsigned gather loads. GLD1_MERGE_ZERO, GLD1_SCALED_MERGE_ZERO,