[llvm] r304416 - AMDGPU: Set high getCSRFirstUseCost

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 1 07:38:02 PDT 2017


Author: arsenm
Date: Thu Jun  1 09:38:02 2017
New Revision: 304416

URL: http://llvm.org/viewvc/llvm-project?rev=304416&view=rev
Log:
AMDGPU: Set high getCSRFirstUseCost

Modified:
    llvm/trunk/lib/Target/AMDGPU/SIRegisterInfo.h

Modified: llvm/trunk/lib/Target/AMDGPU/SIRegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AMDGPU/SIRegisterInfo.h?rev=304416&r1=304415&r2=304416&view=diff
==============================================================================
--- llvm/trunk/lib/Target/AMDGPU/SIRegisterInfo.h (original)
+++ llvm/trunk/lib/Target/AMDGPU/SIRegisterInfo.h Thu Jun  1 09:38:02 2017
@@ -66,6 +66,12 @@ public:
   const uint32_t *getCallPreservedMask(const MachineFunction &MF,
                                        CallingConv::ID) const override;
 
+  // Stack access is very expensive. CSRs are also the high registers, and we
+  // want to minimize the number of used registers.
+  unsigned getCSRFirstUseCost() const override {
+    return 100;
+  }
+
   unsigned getFrameRegister(const MachineFunction &MF) const override;
 
   bool requiresRegisterScavenging(const MachineFunction &Fn) const override;




More information about the llvm-commits mailing list