@@ -7216,57 +7216,6 @@ void AArch64DAGToDAGISel::Select(SDNode *Node) {
72167216 }
72177217 break ;
72187218 }
7219- case AArch64ISD::SVE_LD2_MERGE_ZERO: {
7220- if (VT == MVT::nxv16i8) {
7221- SelectPredicatedLoad (Node, 2 , 0 , AArch64::LD2B_IMM, AArch64::LD2B);
7222- return ;
7223- } else if (VT == MVT::nxv8i16 || VT == MVT::nxv8f16 ||
7224- VT == MVT::nxv8bf16) {
7225- SelectPredicatedLoad (Node, 2 , 1 , AArch64::LD2H_IMM, AArch64::LD2H);
7226- return ;
7227- } else if (VT == MVT::nxv4i32 || VT == MVT::nxv4f32) {
7228- SelectPredicatedLoad (Node, 2 , 2 , AArch64::LD2W_IMM, AArch64::LD2W);
7229- return ;
7230- } else if (VT == MVT::nxv2i64 || VT == MVT::nxv2f64) {
7231- SelectPredicatedLoad (Node, 2 , 3 , AArch64::LD2D_IMM, AArch64::LD2D);
7232- return ;
7233- }
7234- break ;
7235- }
7236- case AArch64ISD::SVE_LD3_MERGE_ZERO: {
7237- if (VT == MVT::nxv16i8) {
7238- SelectPredicatedLoad (Node, 3 , 0 , AArch64::LD3B_IMM, AArch64::LD3B);
7239- return ;
7240- } else if (VT == MVT::nxv8i16 || VT == MVT::nxv8f16 ||
7241- VT == MVT::nxv8bf16) {
7242- SelectPredicatedLoad (Node, 3 , 1 , AArch64::LD3H_IMM, AArch64::LD3H);
7243- return ;
7244- } else if (VT == MVT::nxv4i32 || VT == MVT::nxv4f32) {
7245- SelectPredicatedLoad (Node, 3 , 2 , AArch64::LD3W_IMM, AArch64::LD3W);
7246- return ;
7247- } else if (VT == MVT::nxv2i64 || VT == MVT::nxv2f64) {
7248- SelectPredicatedLoad (Node, 3 , 3 , AArch64::LD3D_IMM, AArch64::LD3D);
7249- return ;
7250- }
7251- break ;
7252- }
7253- case AArch64ISD::SVE_LD4_MERGE_ZERO: {
7254- if (VT == MVT::nxv16i8) {
7255- SelectPredicatedLoad (Node, 4 , 0 , AArch64::LD4B_IMM, AArch64::LD4B);
7256- return ;
7257- } else if (VT == MVT::nxv8i16 || VT == MVT::nxv8f16 ||
7258- VT == MVT::nxv8bf16) {
7259- SelectPredicatedLoad (Node, 4 , 1 , AArch64::LD4H_IMM, AArch64::LD4H);
7260- return ;
7261- } else if (VT == MVT::nxv4i32 || VT == MVT::nxv4f32) {
7262- SelectPredicatedLoad (Node, 4 , 2 , AArch64::LD4W_IMM, AArch64::LD4W);
7263- return ;
7264- } else if (VT == MVT::nxv2i64 || VT == MVT::nxv2f64) {
7265- SelectPredicatedLoad (Node, 4 , 3 , AArch64::LD4D_IMM, AArch64::LD4D);
7266- return ;
7267- }
7268- break ;
7269- }
72707219 }
72717220
72727221 // Select the default instruction
@@ -7340,15 +7289,6 @@ static EVT getMemVTFromNode(LLVMContext &Ctx, SDNode *Root) {
73407289 return cast<VTSDNode>(Root->getOperand (3 ))->getVT ();
73417290 case AArch64ISD::ST1_PRED:
73427291 return cast<VTSDNode>(Root->getOperand (4 ))->getVT ();
7343- case AArch64ISD::SVE_LD2_MERGE_ZERO:
7344- return getPackedVectorTypeFromPredicateType (
7345- Ctx, Root->getOperand (1 )->getValueType (0 ), /* NumVec=*/ 2 );
7346- case AArch64ISD::SVE_LD3_MERGE_ZERO:
7347- return getPackedVectorTypeFromPredicateType (
7348- Ctx, Root->getOperand (1 )->getValueType (0 ), /* NumVec=*/ 3 );
7349- case AArch64ISD::SVE_LD4_MERGE_ZERO:
7350- return getPackedVectorTypeFromPredicateType (
7351- Ctx, Root->getOperand (1 )->getValueType (0 ), /* NumVec=*/ 4 );
73527292 default :
73537293 break ;
73547294 }
0 commit comments