diff options
author | Vincent Lejeune <vljn@ovi.com> | 2013-05-17 16:49:55 +0000 |
---|---|---|
committer | Vincent Lejeune <vljn@ovi.com> | 2013-05-17 16:49:55 +0000 |
commit | f9f4e1e7db6ea36a449e71f425217e0b3a92c206 (patch) | |
tree | 1f5a7660adcd45c3670d7b71e4beea84fd019cc6 /llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp | |
parent | 709e01688ddb5f15e6eb12f8fe482d847e2997d6 (diff) | |
download | llvm-f9f4e1e7db6ea36a449e71f425217e0b3a92c206.zip llvm-f9f4e1e7db6ea36a449e71f425217e0b3a92c206.tar.gz llvm-f9f4e1e7db6ea36a449e71f425217e0b3a92c206.tar.bz2 |
R600: Factorize Fetch size limit inside AMDGPUSubTarget
llvm-svn: 182122
Diffstat (limited to 'llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp')
-rw-r--r-- | llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp b/llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp index cdda3dab..f1e0732 100644 --- a/llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp +++ b/llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp @@ -148,7 +148,7 @@ private: for (MachineBasicBlock::iterator E = MBB.end(); I != E; ++I) { if (IsTrivialInst(I)) continue; - if (AluInstCount > MaxFetchInst) + if (AluInstCount >= MaxFetchInst) break; if ((IsTex && !TII->usesTextureCache(I)) || (!IsTex && !TII->usesVertexCache(I))) @@ -316,10 +316,7 @@ public: TRI(TII->getRegisterInfo()), ST(tm.getSubtarget<AMDGPUSubtarget>()) { const AMDGPUSubtarget &ST = tm.getSubtarget<AMDGPUSubtarget>(); - if (ST.device()->getGeneration() <= AMDGPUDeviceInfo::HD4XXX) - MaxFetchInst = 8; - else - MaxFetchInst = 16; + MaxFetchInst = ST.getTexVTXClauseSize(); } virtual bool runOnMachineFunction(MachineFunction &MF) { |