| 1 | /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |
| 2 | |* *| |
| 3 | |* Calling Convention Implementation Fragment *| |
| 4 | |* *| |
| 5 | |* Automatically generated file, do not edit! *| |
| 6 | |* *| |
| 7 | \*===----------------------------------------------------------------------===*/ |
| 8 | |
| 9 | #ifndef GET_CC_REGISTER_LISTS |
| 10 | |
| 11 | static bool CC_R600(unsigned ValNo, MVT ValVT, |
| 12 | MVT LocVT, CCValAssign::LocInfo LocInfo, |
| 13 | ISD::ArgFlagsTy ArgFlags, CCState &State); |
| 14 | |
| 15 | |
| 16 | static bool CC_R600(unsigned ValNo, MVT ValVT, |
| 17 | MVT LocVT, CCValAssign::LocInfo LocInfo, |
| 18 | ISD::ArgFlagsTy ArgFlags, CCState &State) { |
| 19 | |
| 20 | if (ArgFlags.isInReg()) { |
| 21 | if (LocVT == MVT::v4f32 || |
| 22 | LocVT == MVT::v4i32) { |
| 23 | static const MCPhysReg RegList1[] = { |
| 24 | R600::T0_XYZW, R600::T1_XYZW, R600::T2_XYZW, R600::T3_XYZW, R600::T4_XYZW, R600::T5_XYZW, R600::T6_XYZW, R600::T7_XYZW, R600::T8_XYZW, R600::T9_XYZW, R600::T10_XYZW, R600::T11_XYZW, R600::T12_XYZW, R600::T13_XYZW, R600::T14_XYZW, R600::T15_XYZW, R600::T16_XYZW, R600::T17_XYZW, R600::T18_XYZW, R600::T19_XYZW, R600::T20_XYZW, R600::T21_XYZW, R600::T22_XYZW, R600::T23_XYZW, R600::T24_XYZW, R600::T25_XYZW, R600::T26_XYZW, R600::T27_XYZW, R600::T28_XYZW, R600::T29_XYZW, R600::T30_XYZW, R600::T31_XYZW, R600::T32_XYZW |
| 25 | }; |
| 26 | if (MCRegister Reg = State.AllocateReg(Regs: RegList1)) { |
| 27 | State.addLoc(V: CCValAssign::getReg(ValNo, ValVT, Reg, LocVT, HTP: LocInfo)); |
| 28 | return false; |
| 29 | } |
| 30 | } |
| 31 | } |
| 32 | |
| 33 | return true; // CC didn't match. |
| 34 | } |
| 35 | |
| 36 | #else |
| 37 | |
| 38 | const MCRegister CC_R600_ArgRegs[] = { R600::T0_XYZW, R600::T10_XYZW, R600::T11_XYZW, R600::T12_XYZW, R600::T13_XYZW, R600::T14_XYZW, R600::T15_XYZW, R600::T16_XYZW, R600::T17_XYZW, R600::T18_XYZW, R600::T19_XYZW, R600::T1_XYZW, R600::T20_XYZW, R600::T21_XYZW, R600::T22_XYZW, R600::T23_XYZW, R600::T24_XYZW, R600::T25_XYZW, R600::T26_XYZW, R600::T27_XYZW, R600::T28_XYZW, R600::T29_XYZW, R600::T2_XYZW, R600::T30_XYZW, R600::T31_XYZW, R600::T32_XYZW, R600::T3_XYZW, R600::T4_XYZW, R600::T5_XYZW, R600::T6_XYZW, R600::T7_XYZW, R600::T8_XYZW, R600::T9_XYZW }; |
| 39 | |
| 40 | #endif // CC_REGISTER_LIST |
| 41 | |