AMDGPU: Force inlining if LDS global address is used
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Mon, 9 Jul 2018 19:22:22 +0000 (19:22 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Mon, 9 Jul 2018 19:22:22 +0000 (19:22 +0000)
commit40cb6cab563372d0a0b1bc8c127503508dc114e6
tree33a3ddf313e3cb7eff250174be7c0bfd7d85db29
parentdc73f512ae77888fac7f80af9bdc44a7208fbce8
AMDGPU: Force inlining if LDS global address is used

These won't work for the forseeable future. These aren't allowed
from OpenCL, but IPO optimizations can make them appear.

Also directly set the attributes on functions, regardless
of the linkage rather than cloning functions like before.

llvm-svn: 336587
llvm/lib/Target/AMDGPU/AMDGPUAlwaysInlinePass.cpp
llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
llvm/test/CodeGen/AMDGPU/early-inline.ll
llvm/test/CodeGen/AMDGPU/force-alwaysinline-lds-global-address.ll [new file with mode: 0644]
llvm/test/CodeGen/AMDGPU/stress-calls.ll