[PATCH] D103138: [AMDGPU] [IndirectCalls] Don't propagate attributes to address taken functions and their callees
Madhur Amilkanthwar via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue May 25 22:50:07 PDT 2021
madhur13490 created this revision.
madhur13490 added reviewers: rampitec, arsenm.
Herald added subscribers: foad, nikic, jdoerfert, kerbowa, hiraditya, t-tye, tpr, dstuttard, yaxunl, nhaehnle, jvesely, kzhuravl.
madhur13490 requested review of this revision.
Herald added subscribers: llvm-commits, wdng.
Herald added a project: LLVM.
Don't propagate launch bound related attributes to
address taken functions and their callees. The idea
is to do a traversal over the call graph starting at
address taken functions and erase the attributes
set by previous logic i.e. process().
This two phase approach makes sure that we don't
miss out on deep nested callees from address taken
functions as a function might be called directly as
well as indirectly.
This patch is also reattempt to D94585 <https://reviews.llvm.org/D94585> as latent issues
are fixed in hasAddressTaken function in the recent
past.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D103138
Files:
llvm/lib/Target/AMDGPU/AMDGPUPropagateAttributes.cpp
llvm/test/CodeGen/AMDGPU/opt-pipeline.ll
llvm/test/CodeGen/AMDGPU/propagate-attributes-common-callees.ll
llvm/test/CodeGen/AMDGPU/propagate-attributes-direct-indirect-common-callee.ll
llvm/test/CodeGen/AMDGPU/propagate-attributes-indirect.ll
llvm/test/CodeGen/AMDGPU/propagate-attributes-launch-bounds.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D103138.347849.patch
Type: text/x-patch
Size: 12684 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210526/e7b893c5/attachment.bin>
More information about the llvm-commits
mailing list