/// that class natively.
void addRegisterClass(MVT VT, const TargetRegisterClass *RC) {
assert((unsigned)VT.SimpleTy < array_lengthof(RegClassForVT));
- AvailableRegClasses.push_back(std::make_pair(VT, RC));
RegClassForVT[VT.SimpleTy] = RC;
}
/// Remove all register classes.
void clearRegisterClasses() {
std::fill(std::begin(RegClassForVT), std::end(RegClassForVT), nullptr);
-
- AvailableRegClasses.clear();
}
/// \brief Remove all operation actions.
LegalizeKind getTypeConversion(LLVMContext &Context, EVT VT) const;
private:
- std::vector<std::pair<MVT, const TargetRegisterClass*> > AvailableRegClasses;
/// Targets can specify ISD nodes that they would like PerformDAGCombine
/// callbacks for by calling setTargetDAGCombine(), which sets a bit in this