Lines Matching full:record
21 #include "llvm/TableGen/Record.h"
30 typedef std::vector<Record*> RecVec;
31 typedef std::vector<Record*>::const_iterator RecIter;
49 Record *TheDef;
61 CodeGenSchedRW(unsigned Idx, Record *Def)
71 // (but no record).
83 assert((!HasVariants || TheDef) && "Variant write needs record def");
125 /// itinerary class. Each inherits the processor index from the ItinRW record
130 Record *ItinClassDef;
147 bool isKeyEqual(Record *IC, ArrayRef<unsigned> W, ArrayRef<unsigned> R) {
170 // ItinsDef always points to a valid record definition, but may point to the
178 Record *ModelDef;
179 Record *ItinsDef;
200 CodeGenProcModel(unsigned Idx, const std::string &Name, Record *MDef,
201 Record *IDef) :
212 unsigned getProcResourceIdx(Record *PRDef) const;
231 typedef DenseMap<Record*, unsigned> ProcModelMapTy;
246 typedef DenseMap<Record*, unsigned> InstClassMapTy;
272 Record *getModelOrItinDef(Record *ProcDef) const {
273 Record *ModelDef = ProcDef->getValueAsDef("SchedModel");
274 Record *ItinsDef = ProcDef->getValueAsDef("ProcItin");
283 const CodeGenProcModel &getModelForProc(Record *ProcDef) const {
284 Record *ModelDef = getModelOrItinDef(ProcDef);
290 CodeGenProcModel &getProcModel(Record *ModelDef) {
295 const CodeGenProcModel &getProcModel(Record *ModelDef) const {
323 CodeGenSchedRW &getSchedRW(Record *Def) {
329 const CodeGenSchedRW &getSchedRW(Record*Def) const {
333 unsigned getSchedRWIdx(Record *Def, bool IsRead, unsigned After = 0) const;
335 // Return true if the given write record is referenced by a ReadAdvance.
336 bool hasReadOfWrite(Record *WriteDef) const;
365 unsigned addSchedClass(Record *ItinDef, ArrayRef<unsigned> OperWrites,
371 unsigned findSchedClassIdx(Record *ItinClassDef, ArrayRef<unsigned> Writes,
374 Record *findProcResUnits(Record *ProcResKind,
381 void addProcModel(Record *ProcDef);
390 std::string createSchedClassName(Record *ItinClassDef,
394 void createInstRWClass(Record *InstRWDef);
404 void inferFromItinClass(Record *ItinClassDef, unsigned FromClassIdx);
412 void collectItinProcResources(Record *ItinClassDef);
420 void addProcResource(Record *ProcResourceKind, CodeGenProcModel &PM);
422 void addWriteRes(Record *ProcWriteResDef, unsigned PIdx);
424 void addReadAdvance(Record *ProcReadAdvanceDef, unsigned PIdx);