Home | History | Annotate | Download | only in TableGen

Lines Matching refs:TableInfo

270   void emitTableEntry(DecoderTableInfo &TableInfo) const;
432 unsigned getPredicateIndex(DecoderTableInfo &TableInfo, StringRef P) const;
433 void emitPredicateTableEntry(DecoderTableInfo &TableInfo,
436 void emitSoftFailTableEntry(DecoderTableInfo &TableInfo,
440 void emitSingletonTableEntry(DecoderTableInfo &TableInfo,
444 void emitSingletonTableEntry(DecoderTableInfo &TableInfo,
477 void emitTableEntries(DecoderTableInfo &TableInfo) const;
606 void Filter::emitTableEntry(DecoderTableInfo &TableInfo) const {
607 TableInfo.Table.push_back(MCD::OPC_ExtractField);
608 TableInfo.Table.push_back(StartBit);
609 TableInfo.Table.push_back(NumBits);
612 TableInfo.FixupStack.emplace_back();
614 DecoderTable &Table = TableInfo.Table;
627 FixupList &CurScope = TableInfo.FixupStack.back();
649 Filter.second->emitTableEntries(TableInfo);
663 assert(TableInfo.FixupStack.size() > 1 && "fixup stack underflow!");
664 FixupScopeList::iterator Source = TableInfo.FixupStack.end() - 1;
667 TableInfo.FixupStack.pop_back();
672 TableInfo.FixupStack.back().push_back(PrevFilter);
1175 unsigned FilterChooser::getPredicateIndex(DecoderTableInfo &TableInfo,
1184 TableInfo.Predicates.insert(Predicate.str());
1186 PredicateSet::const_iterator P = std::find(TableInfo.Predicates.begin(),
1187 TableInfo.Predicates.end(),
1189 return (unsigned)(P - TableInfo.Predicates.begin());
1192 void FilterChooser::emitPredicateTableEntry(DecoderTableInfo &TableInfo,
1207 unsigned PIdx = getPredicateIndex(TableInfo, PS.str());
1212 TableInfo.Table.push_back(MCD::OPC_CheckPredicate);
1215 TableInfo.Table.push_back(PBytes[i]);
1217 TableInfo.FixupStack.back().push_back(TableInfo.Table.size());
1218 TableInfo.Table.push_back(0);
1219 TableInfo.Table.push_back(0);
1222 void FilterChooser::emitSoftFailTableEntry(DecoderTableInfo &TableInfo,
1263 TableInfo.Table.push_back(MCD::OPC_SoftFail);
1270 TableInfo.Table.push_back(MaskBytes[i]);
1272 TableInfo.Table.push_back(0);
1277 TableInfo.Table.push_back(MaskBytes[i]);
1279 TableInfo.Table.push_back(0);
1283 void FilterChooser::emitSingletonTableEntry(DecoderTableInfo &TableInfo,
1297 emitPredicateTableEntry(TableInfo, Opc);
1302 TableInfo.Table.push_back(MCD::OPC_CheckField);
1303 TableInfo.Table.push_back(StartBits[I-1]);
1304 TableInfo.Table.push_back(NumBits);
1308 TableInfo.Table.push_back(*p);
1309 TableInfo.Table.push_back(*p);
1311 TableInfo.FixupStack.back().push_back(TableInfo.Table.size());
1315 TableInfo.Table.push_back(0);
1316 TableInfo.Table.push_back(0);
1320 emitSoftFailTableEntry(TableInfo, Opc);
1323 unsigned DIdx = getDecoderIndex(TableInfo.Decoders, Opc, HasCompleteDecoder);
1334 TableInfo.Table.push_back(HasCompleteDecoder ? MCD::OPC_Decode :
1339 TableInfo.Table.push_back(*p);
1340 TableInfo.Table.push_back(*p);
1348 TableInfo.Table.push_back(Bytes[i]);
1352 TableInfo.FixupStack.back().push_back(TableInfo.Table.size());
1354 TableInfo.Table.push_back(0);
1355 TableInfo.Table.push_back(0);
1360 void FilterChooser::emitSingletonTableEntry(DecoderTableInfo &TableInfo,
1366 TableInfo.FixupStack.emplace_back();
1368 emitSingletonTableEntry(TableInfo, Opc);
1370 resolveTableFixups(TableInfo.Table, TableInfo.FixupStack.back(),
1371 TableInfo.Table.size());
1372 TableInfo.FixupStack.pop_back();
1374 Best.getVariableFC().emitTableEntries(TableInfo);
1658 void FilterChooser::emitTableEntries(DecoderTableInfo &TableInfo) const {
1663 emitSingletonTableEntry(TableInfo, Opcodes[0]);
1671 emitSingletonTableEntry(TableInfo, Best);
1673 Best.emitTableEntry(TableInfo);
2255 DecoderTableInfo TableInfo;
2264 TableInfo.Table.clear();
2265 TableInfo.FixupStack.clear();
2266 TableInfo.Table.reserve(16384);
2267 TableInfo.FixupStack.emplace_back();
2268 FC.emitTableEntries(TableInfo);
2271 assert(TableInfo.FixupStack.size() == 1 && "fixup stack phasing error!");
2273 resolveTableFixups(TableInfo.Table, TableInfo.FixupStack.back(),
2274 TableInfo.Table.size());
2275 TableInfo.FixupStack.clear();
2277 TableInfo.Table.push_back(MCD::OPC_Fail);
2280 emitTable(OS, TableInfo.Table, 0, FC.getBitWidth(), Opc.first.first);
2285 emitPredicateFunction(OS, TableInfo.Predicates, 0);
2288 emitDecoderFunction(OS, TableInfo.Decoders, 0);