Skip to content
  1. Feb 15, 2017
    • Stanislav Mekhanoshin's avatar
      [AMDGPU] Revert failed scheduling · 582a5237
      Stanislav Mekhanoshin authored
      This patch reverts region's scheduling to the original untouched state
      in case if we have have decreased occupancy.
      
      In addition it switches to use TargetRegisterInfo occupancy callback
      for pressure limits instead of gradually increasing limits which were
      just passed by. We are going to stay with the best schedule so we do
      not need to tolerate worsened scheduling anymore.
      
      Differential Revision: https://reviews.llvm.org/D29971
      
      llvm-svn: 295206
      582a5237
  2. Jan 26, 2017
  3. Dec 09, 2016
  4. Dec 01, 2016
  5. Nov 25, 2016
  6. Nov 13, 2016
    • Matt Arsenault's avatar
      AMDGPU: Implement SGPR spilling with scalar stores · dc45274d
      Matt Arsenault authored
      nThis avoids the nasty problems caused by using
      memory instructions that read the exec mask while
      spilling / restoring registers used for control flow
      masking, but only for VI when these were added.
      
      This always uses the scalar stores when enabled currently,
      but it may be better to still try to spill to a VGPR
      and use this on the fallback memory path.
      
      The cache also needs to be flushed before wave termination
      if a scalar store is used.
      
      llvm-svn: 286766
      dc45274d
  7. Oct 28, 2016
    • Matt Arsenault's avatar
      AMDGPU: Fix using incorrect private resource with no allocation · 08906a3c
      Matt Arsenault authored
      It's possible to have a use of the private resource descriptor or
      scratch wave offset registers even though there are no allocated
      stack objects. This would result in continuing to use the maximum
      number reserved registers. This could go over the number of SGPRs
      available on VI, or violate the SGPR limit requested by
      the function attributes.
      
      llvm-svn: 285435
      08906a3c
  8. Sep 06, 2016
    • Konstantin Zhuravlyov's avatar
      [AMDGPU] Wave and register controls · 1d65026c
      Konstantin Zhuravlyov authored
      - Implemented amdgpu-flat-work-group-size attribute
      - Implemented amdgpu-num-active-waves-per-eu attribute
      - Implemented amdgpu-num-sgpr attribute
      - Implemented amdgpu-num-vgpr attribute
      - Dynamic LDS constraints are in a separate patch
      
      Patch by Tom Stellard and Konstantin Zhuravlyov
      
      Differential Revision: https://reviews.llvm.org/D21562
      
      llvm-svn: 280747
      1d65026c
Loading