case MVT::v4i16: Opc = ARM::VLD2d16; break;
case MVT::v2f32:
case MVT::v2i32: Opc = ARM::VLD2d32; break;
- case MVT::v1i64: Opc = ARM::VLD2d64; break;
}
const SDValue Ops[] = { MemAddr, MemUpdate, MemOpc };
return CurDAG->getTargetNode(Opc, dl, VT, VT, MVT::Other, Ops, 3);
case MVT::v4i16: Opc = ARM::VLD3d16; break;
case MVT::v2f32:
case MVT::v2i32: Opc = ARM::VLD3d32; break;
- case MVT::v1i64: Opc = ARM::VLD3d64; break;
}
const SDValue Ops[] = { MemAddr, MemUpdate, MemOpc };
return CurDAG->getTargetNode(Opc, dl, VT, VT, VT, MVT::Other, Ops, 3);
case MVT::v4i16: Opc = ARM::VLD4d16; break;
case MVT::v2f32:
case MVT::v2i32: Opc = ARM::VLD4d32; break;
- case MVT::v1i64: Opc = ARM::VLD4d64; break;
}
const SDValue Ops[] = { MemAddr, MemUpdate, MemOpc };
std::vector<MVT> ResTys(4, VT);
def VLD2d8 : VLD2D<"vld2.8">;
def VLD2d16 : VLD2D<"vld2.16">;
def VLD2d32 : VLD2D<"vld2.32">;
-def VLD2d64 : VLD2D<"vld2.64">;
// VLD3 : Vector Load (multiple 3-element structures)
class VLD3D<string OpcodeStr>
def VLD3d8 : VLD3D<"vld3.8">;
def VLD3d16 : VLD3D<"vld3.16">;
def VLD3d32 : VLD3D<"vld3.32">;
-def VLD3d64 : VLD3D<"vld3.64">;
// VLD4 : Vector Load (multiple 4-element structures)
class VLD4D<string OpcodeStr>
def VLD4d8 : VLD4D<"vld4.8">;
def VLD4d16 : VLD4D<"vld4.16">;
def VLD4d32 : VLD4D<"vld4.32">;
-def VLD4d64 : VLD4D<"vld4.64">;
//===----------------------------------------------------------------------===//