aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Lex/ModuleMap.cpp
diff options
context:
space:
mode:
authorAnshil Gandhi <Anshil.Gandhi@amd.com>2021-10-15 11:13:12 -0600
committerAnshil Gandhi <Anshil.Gandhi@amd.com>2021-10-15 11:39:15 -0600
commit03375a3fb33b11e1249d9c88070b7f33cb97802a (patch)
tree154388cbabbcce13785a447b56753614ecf1bc84 /clang/lib/Lex/ModuleMap.cpp
parent4e572db0c2ec4e96f8ddfade7384e8ee8ad97384 (diff)
downloadllvm-03375a3fb33b11e1249d9c88070b7f33cb97802a.zip
llvm-03375a3fb33b11e1249d9c88070b7f33cb97802a.tar.gz
llvm-03375a3fb33b11e1249d9c88070b7f33cb97802a.tar.bz2
[HIP] [AlwaysInliner] Disable AlwaysInliner to eliminate undefined symbols
By default clang emits complete contructors as alias of base constructors if they are the same. The backend is supposed to emit symbols for the alias, otherwise it causes undefined symbols. @yaxunl observed that this issue is related to the llvm options `-amdgpu-early-inline-all=true` and `-amdgpu-function-calls=false`. This issue is resolved by only inlining global values with internal linkage. The `getCalleeFunction()` in AMDGPUResourceUsageAnalysis also had to be extended to support aliases to functions. inline-calls.ll was corrected appropriately. Reviewed By: yaxunl, #amdgpu Differential Revision: https://reviews.llvm.org/D109707
Diffstat (limited to 'clang/lib/Lex/ModuleMap.cpp')
0 files changed, 0 insertions, 0 deletions