OLD | NEW |
1 //===-- X86RegisterInfo.h - X86 Register Information Impl -------*- C++ -*-===// | 1 //===-- X86RegisterInfo.h - X86 Register Information Impl -------*- C++ -*-===// |
2 // | 2 // |
3 // The LLVM Compiler Infrastructure | 3 // The LLVM Compiler Infrastructure |
4 // | 4 // |
5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 // | 9 // |
10 // This file contains the X86 implementation of the TargetRegisterInfo class. | 10 // This file contains the X86 implementation of the TargetRegisterInfo class. |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
115 | 115 |
116 bool hasReservedSpillSlot(const MachineFunction &MF, unsigned Reg, | 116 bool hasReservedSpillSlot(const MachineFunction &MF, unsigned Reg, |
117 int &FrameIdx) const override; | 117 int &FrameIdx) const override; |
118 | 118 |
119 void eliminateFrameIndex(MachineBasicBlock::iterator MI, | 119 void eliminateFrameIndex(MachineBasicBlock::iterator MI, |
120 int SPAdj, unsigned FIOperandNum, | 120 int SPAdj, unsigned FIOperandNum, |
121 RegScavenger *RS = nullptr) const override; | 121 RegScavenger *RS = nullptr) const override; |
122 | 122 |
123 // Debug information queries. | 123 // Debug information queries. |
124 unsigned getFrameRegister(const MachineFunction &MF) const override; | 124 unsigned getFrameRegister(const MachineFunction &MF) const override; |
| 125 unsigned getPtrSizedFrameRegister(const MachineFunction &MF) const; |
125 unsigned getStackRegister() const { return StackPtr; } | 126 unsigned getStackRegister() const { return StackPtr; } |
126 unsigned getBaseRegister() const { return BasePtr; } | 127 unsigned getBaseRegister() const { return BasePtr; } |
127 // FIXME: Move to FrameInfok | 128 // FIXME: Move to FrameInfok |
128 unsigned getSlotSize() const { return SlotSize; } | 129 unsigned getSlotSize() const { return SlotSize; } |
129 }; | 130 }; |
130 | 131 |
131 // getX86SubSuperRegister - X86 utility function. It returns the sub or super | 132 // getX86SubSuperRegister - X86 utility function. It returns the sub or super |
132 // register of a specific X86 register. | 133 // register of a specific X86 register. |
133 // e.g. getX86SubSuperRegister(X86::EAX, MVT::i16) return X86:AX | 134 // e.g. getX86SubSuperRegister(X86::EAX, MVT::i16) return X86:AX |
134 unsigned getX86SubSuperRegister(unsigned, MVT::SimpleValueType, bool High=false)
; | 135 unsigned getX86SubSuperRegister(unsigned, MVT::SimpleValueType, bool High=false)
; |
135 | 136 |
136 //get512BitRegister - X86 utility - returns 512-bit super register | 137 //get512BitRegister - X86 utility - returns 512-bit super register |
137 unsigned get512BitSuperRegister(unsigned Reg); | 138 unsigned get512BitSuperRegister(unsigned Reg); |
138 | 139 |
139 } // End llvm namespace | 140 } // End llvm namespace |
140 | 141 |
141 #endif | 142 #endif |
OLD | NEW |