aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/R600/R600InstrInfo.h
diff options
context:
space:
mode:
authorTom Stellard <thomas.stellard@amd.com>2013-11-13 23:36:50 +0000
committerTom Stellard <thomas.stellard@amd.com>2013-11-13 23:36:50 +0000
commita2b4eb6d15a13de257319ac6231b5ab622cd02b1 (patch)
tree3147a7994db9c80cbaa22526fae0dbfdc780c212 /lib/Target/R600/R600InstrInfo.h
parentb52bf6a3b31596a309f4b12884522e9b4a344654 (diff)
downloadexternal_llvm-a2b4eb6d15a13de257319ac6231b5ab622cd02b1.zip
external_llvm-a2b4eb6d15a13de257319ac6231b5ab622cd02b1.tar.gz
external_llvm-a2b4eb6d15a13de257319ac6231b5ab622cd02b1.tar.bz2
R600/SI: Add support for private address space load/store
Private address space is emulated using the register file with MOVRELS and MOVRELD instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194626 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/R600/R600InstrInfo.h')
-rw-r--r--lib/Target/R600/R600InstrInfo.h11
1 files changed, 3 insertions, 8 deletions
diff --git a/lib/Target/R600/R600InstrInfo.h b/lib/Target/R600/R600InstrInfo.h
index d7438ef..e2996c7 100644
--- a/lib/Target/R600/R600InstrInfo.h
+++ b/lib/Target/R600/R600InstrInfo.h
@@ -193,14 +193,9 @@ namespace llvm {
virtual int getInstrLatency(const InstrItineraryData *ItinData,
SDNode *Node) const { return 1;}
- /// \returns a list of all the registers that may be accesed using indirect
- /// addressing.
- std::vector<unsigned> getIndirectReservedRegs(const MachineFunction &MF) const;
-
- virtual int getIndirectIndexBegin(const MachineFunction &MF) const;
-
- virtual int getIndirectIndexEnd(const MachineFunction &MF) const;
-
+ /// \brief Reserve the registers that may be accesed using indirect addressing.
+ void reserveIndirectRegisters(BitVector &Reserved,
+ const MachineFunction &MF) const;
virtual unsigned calculateIndirectAddress(unsigned RegIndex,
unsigned Channel) const;