summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2016-12-02 00:54:45 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2016-12-02 00:54:45 +0000
commitc47701c0e9a17a92529a564222b58751642c6f90 (patch)
treebdd69a7bf01a57ccbe2c15c09221ebfb3d9f82af /llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
parent28b9668db3995173a10bf6c7ff4f1fc98c575e40 (diff)
downloadbcm5719-llvm-c47701c0e9a17a92529a564222b58751642c6f90.tar.gz
bcm5719-llvm-c47701c0e9a17a92529a564222b58751642c6f90.zip
AMDGPU: Use wider scalar spills for SGPR spilling
Since the spill is for the whole wave, these don't have the swizzling problems that vector stores do and a single 4-byte allocation is enough to spill a 64 element register. This should reduce the number of spill instructions and put all the spills for a register in the same cacheline. This should save allocated private size, but for now it doesn't. The extra slots are allocated for each component, but never used because the frame layout is essentially finalized before frame indices are replaced. For always using the scalar store path, this should probably be moved into processFunctionBeforeFrameFinalized. llvm-svn: 288445
Diffstat (limited to 'llvm/lib/Transforms/Utils/FunctionImportUtils.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud