Home | History | Annotate | Download | only in SelectionDAG

Lines Matching defs:VTs

58 static SDVTList makeVTList(const EVT *VTs, unsigned NumVTs) {
59 SDVTList Res = {VTs, NumVTs};
333 ID.AddPointer(VTList.VTs);
1306 "Vector Shuffle VTs must be a vectors");
1308 && "Vector Shuffle VTs must have same element type");
2661 SDVTList VTs = getVTList(VT);
2665 AddNodeIDNode(ID, Opcode, VTs, Ops, 1);
2670 N = new (NodeAllocator) UnarySDNode(Opcode, DL, VTs, Operand);
2673 N = new (NodeAllocator) UnarySDNode(Opcode, DL, VTs, Operand);
3070 "Extract subvector VTs must be a vectors!");
3072 "Extract subvector VTs must have the same element type!");
3233 SDVTList VTs = getVTList(VT);
3237 AddNodeIDNode(ID, Opcode, VTs, Ops, 2);
3242 N = new (NodeAllocator) BinarySDNode(Opcode, DL, VTs, N1, N2);
3245 N = new (NodeAllocator) BinarySDNode(Opcode, DL, VTs, N1, N2);
3296 "Insert subvector VTs must be a vectors");
3323 SDVTList VTs = getVTList(VT);
3327 AddNodeIDNode(ID, Opcode, VTs, Ops, 3);
3332 N = new (NodeAllocator) TernarySDNode(Opcode, DL, VTs, N1, N2, N3);
3335 N = new (NodeAllocator) TernarySDNode(Opcode, DL, VTs, N1, N2, N3);
4094 SDVTList VTs = getVTList(VT, MVT::Other);
4098 AddNodeIDNode(ID, Opcode, VTs, Ops, 4);
4105 SDNode *N = new (NodeAllocator) AtomicSDNode(Opcode, dl, VTs, MemVT, Chain,
4166 SDVTList VTs = Opcode == ISD::ATOMIC_STORE ? getVTList(MVT::Other) :
4171 AddNodeIDNode(ID, Opcode, VTs, Ops, 3);
4178 SDNode *N = new (NodeAllocator) AtomicSDNode(Opcode, dl, VTs, MemVT, Chain,
4225 SDVTList VTs = getVTList(VT, MVT::Other);
4229 AddNodeIDNode(ID, Opcode, VTs, Ops, 2);
4236 SDNode *N = new (NodeAllocator) AtomicSDNode(Opcode, dl, VTs, MemVT, Chain,
4249 SmallVector<EVT, 4> VTs;
4250 VTs.reserve(NumOps);
4252 VTs.push_back(Ops[i].getValueType());
4253 return getNode(ISD::MERGE_VALUES, dl, getVTList(&VTs[0], NumOps),
4259 const EVT *VTs, unsigned NumVTs,
4264 return getMemIntrinsicNode(Opcode, dl, makeVTList(VTs, NumVTs), Ops, NumOps,
4307 if (VTList.VTs[VTList.NumVTs-1] != MVT::Glue) {
4421 SDVTList VTs = Indexed ?
4425 AddNodeIDNode(ID, ISD::LOAD, VTs, Ops, 3);
4436 SDNode *N = new (NodeAllocator) LoadSDNode(Ops, dl, VTs, AM, ExtType,
4512 SDVTList VTs = getVTList(MVT::Other);
4516 AddNodeIDNode(ID, ISD::STORE, VTs, Ops, 4);
4526 SDNode *N = new (NodeAllocator) StoreSDNode(Ops, dl, VTs, ISD::UNINDEXED,
4580 SDVTList VTs = getVTList(MVT::Other);
4584 AddNodeIDNode(ID, ISD::STORE, VTs, Ops, 4);
4594 SDNode *N = new (NodeAllocator) StoreSDNode(Ops, dl, VTs, ISD::UNINDEXED,
4607 SDVTList VTs = getVTList(Base.getValueType(), MVT::Other);
4610 AddNodeIDNode(ID, ISD::STORE, VTs, Ops, 4);
4618 SDNode *N = new (NodeAllocator) StoreSDNode(Ops, dl, VTs, AM,
4683 SDVTList VTs = getVTList(VT);
4687 AddNodeIDNode(ID, Opcode, VTs, Ops, NumOps);
4693 N = new (NodeAllocator) SDNode(Opcode, DL, VTs, Ops, NumOps);
4696 N = new (NodeAllocator) SDNode(Opcode, DL, VTs, Ops, NumOps);
4714 const EVT *VTs, unsigned NumVTs,
4717 return getNode(Opcode, DL, VTs[0], Ops, NumOps);
4718 return getNode(Opcode, DL, makeVTList(VTs, NumVTs), Ops, NumOps);
4724 return getNode(Opcode, DL, VTList.VTs[0], Ops, NumOps);
4751 if (VTList.VTs[VTList.NumVTs-1] != MVT::Glue) {
4831 if (I->NumVTs == 2 && I->VTs[0] == VT1 && I->VTs[1] == VT2)
4845 if (I->NumVTs == 3 && I->VTs[0] == VT1 && I->VTs[1] == VT2 &&
4846 I->VTs[2] == VT3)
4861 if (I->NumVTs == 4 && I->VTs[0] == VT1 && I->VTs[1] == VT2 &&
4862 I->VTs[2] == VT3 && I->VTs[3] == VT4)
4875 SDVTList SelectionDAG::getVTList(const EVT *VTs, unsigned NumVTs) {
4878 case 1: return getVTList(VTs[0]);
4879 case 2: return getVTList(VTs[0], VTs[1]);
4880 case 3: return getVTList(VTs[0], VTs[1], VTs[2]);
4881 case 4: return getVTList(VTs[0], VTs[1], VTs[2], VTs[3]);
4887 if (I->NumVTs != NumVTs || VTs[0] != I->VTs[0] || VTs[1] != I->VTs[1])
4890 if (std::equal(&VTs[2], &VTs[NumVTs], &I->VTs[2]))
4895 std::copy(VTs, VTs+NumVTs, Array);
5033 SDVTList VTs = getVTList(VT);
5034 return SelectNodeTo(N, MachineOpc, VTs, 0, 0);
5039 SDVTList VTs = getVTList(VT);
5041 return SelectNodeTo(N, MachineOpc, VTs, Ops, 1);
5047 SDVTList VTs = getVTList(VT);
5049 return SelectNodeTo(N, MachineOpc, VTs, Ops, 2);
5055 SDVTList VTs = getVTList(VT);
5057 return SelectNodeTo(N, MachineOpc, VTs, Ops, 3);
5063 SDVTList VTs = getVTList(VT);
5064 return SelectNodeTo(N, MachineOpc, VTs, Ops, NumOps);
5070 SDVTList VTs = getVTList(VT1, VT2);
5071 return SelectNodeTo(N, MachineOpc, VTs, Ops, NumOps);
5076 SDVTList VTs = getVTList(VT1, VT2);
5077 return SelectNodeTo(N, MachineOpc, VTs, (SDValue *)0, 0);
5083 SDVTList VTs = getVTList(VT1, VT2, VT3);
5084 return SelectNodeTo(N, MachineOpc, VTs, Ops, NumOps);
5090 SDVTList VTs = getVTList(VT1, VT2, VT3, VT4);
5091 return SelectNodeTo(N, MachineOpc, VTs, Ops, NumOps);
5097 SDVTList VTs = getVTList(VT1, VT2);
5099 return SelectNodeTo(N, MachineOpc, VTs, Ops, 1);
5105 SDVTList VTs = getVTList(VT1, VT2);
5107 return SelectNodeTo(N, MachineOpc, VTs, Ops, 2);
5114 SDVTList VTs = getVTList(VT1, VT2);
5116 return SelectNodeTo(N, MachineOpc, VTs, Ops, 3);
5123 SDVTList VTs = getVTList(VT1, VT2, VT3);
5125 return SelectNodeTo(N, MachineOpc, VTs, Ops, 3);
5129 SDVTList VTs, const SDValue *Ops,
5131 N = MorphNodeTo(N, ~MachineOpc, VTs, Ops, NumOps);
5164 SDVTList VTs, const SDValue *Ops,
5168 if (VTs.VTs[VTs.NumVTs-1] != MVT::Glue) {
5170 AddNodeIDNode(ID, Opc, VTs, Ops, NumOps);
5180 N->ValueList = VTs.VTs;
5181 N->NumValues = VTs.NumVTs;
5250 SDVTList VTs = getVTList(VT);
5251 return getMachineNode(Opcode, dl, VTs, 0, 0);
5256 SDVTList VTs = getVTList(VT);
5258 return getMachineNode(Opcode, dl, VTs, Ops, array_lengthof(Ops));
5264 SDVTList VTs = getVTList(VT);
5266 return getMachineNode(Opcode, dl, VTs, Ops, array_lengthof(Ops));
5272 SDVTList VTs = getVTList(VT);
5274 return getMachineNode(Opcode, dl, VTs, Ops, array_lengthof(Ops));
5280 SDVTList VTs = getVTList(VT);
5281 return getMachineNode(Opcode, dl, VTs, Ops, NumOps);
5286 SDVTList VTs = getVTList(VT1, VT2);
5287 return getMachineNode(Opcode, dl, VTs, 0, 0);
5293 SDVTList VTs = getVTList(VT1, VT2);
5295 return getMachineNode(Opcode, dl, VTs, Ops, array_lengthof(Ops));
5301 SDVTList VTs = getVTList(VT1, VT2);
5303 return getMachineNode(Opcode, dl, VTs, Ops, array_lengthof(Ops));
5310 SDVTList VTs = getVTList(VT1, VT2);
5312 return getMachineNode(Opcode, dl, VTs, Ops, array_lengthof(Ops));
5319 SDVTList VTs = getVTList(VT1, VT2);
5320 return getMachineNode(Opcode, dl, VTs, Ops, NumOps);
5327 SDVTList VTs = getVTList(VT1, VT2, VT3);
5329 return getMachineNode(Opcode, dl, VTs, Ops, array_lengthof(Ops));
5336 SDVTList VTs = getVTList(VT1, VT2, VT3);
5338 return getMachineNode(Opcode, dl, VTs, Ops, array_lengthof(Ops));
5345 SDVTList VTs = getVTList(VT1, VT2, VT3);
5346 return getMachineNode(Opcode, dl, VTs, Ops, NumOps);
5353 SDVTList VTs = getVTList(VT1, VT2, VT3, VT4);
5354 return getMachineNode(Opcode, dl, VTs, Ops, NumOps);
5361 SDVTList VTs = getVTList(&ResultTys[0], ResultTys.size());
5362 return getMachineNode(Opcode, dl, VTs, Ops, NumOps);
5366 SelectionDAG::getMachineNode(unsigned Opcode, DebugLoc DL, SDVTList VTs,
5368 bool DoCSE = VTs.VTs[VTs.NumVTs-1] != MVT::Glue;
5374 AddNodeIDNode(ID, ~Opcode, VTs, Ops, NumOps);
5382 N = new (NodeAllocator) MachineSDNode(~Opcode, DL, VTs);
5431 if (VTList.VTs[VTList.NumVTs-1] != MVT::Glue) {
5900 MemSDNode::MemSDNode(unsigned Opc, DebugLoc dl, SDVTList VTs, EVT memvt,
5902 : SDNode(Opc, dl, VTs), MemoryVT(memvt), MMO(mmo) {
5911 MemSDNode::MemSDNode(unsigned Opc, DebugLoc dl, SDVTList VTs,
5914 : SDNode(Opc, dl, VTs, Ops, NumOps),
5930 std::vector<EVT> VTs;
5933 VTs.reserve(MVT::LAST_VALUETYPE);
5935 VTs.push_back(MVT((MVT::SimpleValueType)i));
5953 return &SimpleVTArray->VTs[VT.getSimpleVT().SimpleTy];