[PATCH] D151943: [InstCombine] Propagate some func/arg/ret attributes from caller to callsite
Noah Goldstein via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Jun 4 12:05:55 PDT 2023
goldstein.w.n added inline comments.
================
Comment at: llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp:3725
+ // callsite's return value if it is used as the return value of the
+ // caller.
+ std::array CallerReturnAttrPropagations = {Attribute::NoUndef,
----------------
nikic wrote:
> goldstein.w.n wrote:
> > nikic wrote:
> > > This is incorrect for UB-implying attributes like noundef, if the call is not guaranteed to transfer to the return.
> > We check that the return of the callsite is the return value of the function. Are you are worried about the return value escaping then an exception or interrupt between the callsite and return?
> Yes.
is that not also a concern of nonnull?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D151943/new/
https://reviews.llvm.org/D151943
More information about the llvm-commits
mailing list