diff options
author | Nikita Popov <npopov@redhat.com> | 2022-10-12 17:22:11 +0200 |
---|---|---|
committer | Nikita Popov <npopov@redhat.com> | 2022-10-13 10:20:17 +0200 |
commit | 5b3776842f8e14b70199c0f76773b2af1cf32d34 (patch) | |
tree | a5a9ac60da2567bcda783f6397a82322e8e9e506 /llvm/lib/CodeGen/ModuloSchedule.cpp | |
parent | f76e40d1a4d7d95d8ceb1fad7be15bdfe96725a0 (diff) | |
download | llvm-5b3776842f8e14b70199c0f76773b2af1cf32d34.zip llvm-5b3776842f8e14b70199c0f76773b2af1cf32d34.tar.gz llvm-5b3776842f8e14b70199c0f76773b2af1cf32d34.tar.bz2 |
[FunctionAttrs] Account for memory effects of inalloca/preallocated
The code for inferring memory attributes on arguments claims that
inalloca/preallocated arguments are always clobbered:
https://github.com/llvm/llvm-project/blob/d71ad4108056d685f48407447095d8d92fd7685d/llvm/lib/Transforms/IPO/FunctionAttrs.cpp#L640-L642
However, we would still infer memory attributes for the whole
function without taking this into account, so we could still end
up inferring readnone for the function. This adds an argument
clobber if there are any inalloca/preallocated arguments.
Differential Revision: https://reviews.llvm.org/D135783
Diffstat (limited to 'llvm/lib/CodeGen/ModuloSchedule.cpp')
0 files changed, 0 insertions, 0 deletions