Lines Matching defs:CPURegList
40 class CPURegList {
42 explicit CPURegList(CPURegister reg1,
53 constexpr CPURegList(CPURegister::RegisterType type, unsigned size, RegList list)
60 constexpr CPURegList(CPURegister::RegisterType type,
76 // Construct an empty CPURegList with the specified size and type. If `size`
79 static CPURegList Empty(CPURegister::RegisterType type,
81 return CPURegList(type, GetDefaultSizeFor(type, size), 0);
84 // Construct a CPURegList with all possible registers with the specified size
87 static CPURegList All(CPURegister::RegisterType type,
95 return CPURegList(type, GetDefaultSizeFor(type, size), list);
110 // Combine another CPURegList into this one. Registers that already exist in
113 void Combine(const CPURegList& other) {
120 // Remove every register in the other CPURegList from this one. Registers that
123 void Remove(const CPURegList& other) {
157 static CPURegList Union(const CPURegList& list_1, const CPURegList& list_2) {
160 return CPURegList(list_1.type_, list_1.size_, list_1.list_ | list_2.list_);
162 static CPURegList Union(const CPURegList& list_1,
163 const CPURegList& list_2,
164 const CPURegList& list_3);
165 static CPURegList Union(const CPURegList& list_1,
166 const CPURegList& list_2,
167 const CPURegList& list_3,
168 const CPURegList& list_4);
170 static CPURegList Intersection(const CPURegList& list_1,
171 const CPURegList& list_2) {
174 return CPURegList(list_1.type_, list_1.size_, list_1.list_ & list_2.list_);
176 static CPURegList Intersection(const CPURegList& list_1,
177 const CPURegList& list_2,
178 const CPURegList& list_3);
179 static CPURegList Intersection(const CPURegList& list_1,
180 const CPURegList& list_2,
181 const CPURegList& list_3,
182 const CPURegList& list_4);
184 bool Overlaps(const CPURegList& other) const {
215 static CPURegList GetCalleeSaved(unsigned size = kXRegSize);
216 static CPURegList GetCalleeSavedV(unsigned size = kDRegSize);
221 static CPURegList GetCallerSaved(unsigned size = kXRegSize);
222 static CPURegList GetCallerSavedV(unsigned size = kDRegSize);
295 constexpr CPURegList kCalleeSaved = CPURegList(CPURegister::kRegister, kXRegSize, 19, 28);
296 constexpr CPURegList kCalleeSavedV = CPURegList(CPURegister::kVRegister, kDRegSize, 8, 15);
299 constexpr CPURegList kCallerSaved = CPURegList(CPURegister::kRegister, kXRegSize, 0, 18);
300 constexpr CPURegList kCallerSavedV = CPURegList(CPURegister::kVRegister, kDRegSize, 0xffff00ff);