radeon/llvm: Remove unused AMDIL TableGen definitons
[mesa.git] / src / gallium / drivers / radeon / SIRegisterInfo.cpp
1 //===-- SIRegisterInfo.cpp - SI Register Information ---------------------===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file contains the SI implementation of the TargetRegisterInfo class.
11 //
12 //===----------------------------------------------------------------------===//
13
14
15 #include "SIRegisterInfo.h"
16 #include "AMDGPUTargetMachine.h"
17 #include "AMDGPUUtil.h"
18
19 using namespace llvm;
20
21 SIRegisterInfo::SIRegisterInfo(AMDGPUTargetMachine &tm,
22 const TargetInstrInfo &tii)
23 : AMDGPURegisterInfo(tm, tii),
24 TM(tm),
25 TII(tii)
26 { }
27
28 BitVector SIRegisterInfo::getReservedRegs(const MachineFunction &MF) const
29 {
30 BitVector Reserved(getNumRegs());
31 return Reserved;
32 }
33
34 unsigned SIRegisterInfo::getBinaryCode(unsigned reg) const
35 {
36 switch (reg) {
37 case AMDIL::M0: return 124;
38 case AMDIL::SREG_LIT_0: return 128;
39 default: return getHWRegNum(reg);
40 }
41 }
42
43 const TargetRegisterClass *
44 SIRegisterInfo::getISARegClass(const TargetRegisterClass * rc) const
45 {
46 switch (rc->getID()) {
47 case AMDIL::GPRF32RegClassID:
48 return &AMDIL::VReg_32RegClass;
49 default: return rc;
50 }
51 }
52
53 const TargetRegisterClass * SIRegisterInfo::getCFGStructurizerRegClass(
54 MVT VT) const
55 {
56 switch(VT.SimpleTy) {
57 default:
58 case MVT::i32: return AMDIL::VReg_32RegisterClass;
59 }
60 }
61 #include "SIRegisterGetHWRegNum.inc"