[PATCH] D137360: [Linker] Remove nocallback attribute while linking
Johannes Doerfert via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 3 19:40:39 PDT 2022
jdoerfert added a comment.
I somewhat assume we could remove the attribute whenever we actually move a function (lazy linking) rather than for all in the module.
Other than that I'm happy with dropping nocallback *and* inacc* (see https://reviews.llvm.org/D131628#3724307 for the latter).
================
Comment at: llvm/lib/Linker/LinkModules.cpp:530
+ // Since nocallback function attribute is treated as a hint on
+ // the module level, it is removed while linking modules.
----------------
mysterymath wrote:
> mysterymath wrote:
> > We'll also need to do this with inaccessiblememonly, inaccessiblemem_or_argmemonly, and the inaccessiblemem option for the memory() attribute.
> Scratch this, it looks like the FunctionAttrs pass rewrites these based on the results of the bitcode link.
We cannot rely on a pass to clean things up. We need to drop inacc* here too, as shown here: https://reviews.llvm.org/D131628#3724307
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D137360/new/
https://reviews.llvm.org/D137360
More information about the llvm-commits
mailing list