Home | History | Annotate | Download | only in TableGen

Lines Matching refs:CodeGenRegister

126   /// CodeGenRegister - Represents a register definition.
127 struct CodeGenRegister {
135 typedef std::map<CodeGenSubRegIndex *, CodeGenRegister *, deref<llvm::less>>
138 CodeGenRegister(Record *R, unsigned Enum);
143 // graph after all CodeGenRegister objects have been created.
163 void addSubRegsPreOrder(SetVector<const CodeGenRegister*> &OSet,
168 CodeGenSubRegIndex *getSubRegIndex(const CodeGenRegister *Reg) const {
172 typedef std::vector<const CodeGenRegister*> SuperRegList;
185 ArrayRef<CodeGenRegister*> getExplicitAliases() const {
235 typedef std::vector<const CodeGenRegister*> Vec;
244 SmallVector<CodeGenRegister*, 8> ExplicitSubRegs;
247 SmallVector<CodeGenRegister*, 8> ExplicitAliases;
254 DenseMap<const CodeGenRegister*, CodeGenSubRegIndex*> SubReg2Idx;
259 inline bool operator<(const CodeGenRegister &A, const CodeGenRegister &B) {
263 inline bool operator==(const CodeGenRegister &A, const CodeGenRegister &B) {
268 CodeGenRegister::Vec Members;
331 bool contains(const CodeGenRegister*) const;
392 const CodeGenRegister::Vec &getMembers() const { return Members; }
406 const CodeGenRegister::Vec *Members;
410 Key(const CodeGenRegister::Vec *M, unsigned S = 0, unsigned A = 0)
444 const CodeGenRegister *Roots[2];
454 ArrayRef<const CodeGenRegister*> getRoots() const {
491 std::deque<CodeGenRegister> Registers;
492 StringMap<CodeGenRegister*> RegistersByName;
493 DenseMap<Record*, CodeGenRegister*> Def2Reg;
528 const CodeGenRegister::Vec *Membs,
592 const std::deque<CodeGenRegister> &getRegisters() { return Registers; }
593 const StringMap<CodeGenRegister*> &getRegistersByName() {
598 CodeGenRegister *getReg(Record*);
601 unsigned getRegIndex(const CodeGenRegister *Reg) const {
612 // This function is only for use by CodeGenRegister::computeSuperRegs().
620 unsigned newRegUnit(CodeGenRegister *R0, CodeGenRegister *R1 = nullptr) {