[all-commits] [llvm/llvm-project] 97dfa5: [FunctionAttrs] Infer precise FMRB
Nikita Popov via All-commits
all-commits at lists.llvm.org
Tue Sep 27 01:15:38 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 97dfa536260c434e68913129d79d863b26c1c179
https://github.com/llvm/llvm-project/commit/97dfa536260c434e68913129d79d863b26c1c179
Author: Nikita Popov <npopov at redhat.com>
Date: 2022-09-27 (Tue, 27 Sep 2022)
Changed paths:
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/test/Transforms/FunctionAttrs/argmemonly.ll
Log Message:
-----------
[FunctionAttrs] Infer precise FMRB
This updates checkFunctionMemoryAccess() to infer a precise
FunctionModRefBehavior, rather than an approximation split into
read/write and argmemonly.
Afterwards, we still map this back to imprecise function attributes.
This still allows us to infer some cases that we previously did not
handle, namely inaccessiblememonly and inaccessiblemem_or_argmemonly.
In practice, this means we get better memory attributes in the
presence of intrinsics like @llvm.assume.
Differential Revision: https://reviews.llvm.org/D134527
More information about the All-commits
mailing list