aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/IPO/FunctionAttrs.cpp
diff options
context:
space:
mode:
authorDianQK <dianqk@dianqk.net>2024-07-23 20:50:25 +0800
committerGitHub <noreply@github.com>2024-07-23 20:50:25 +0800
commita213edd32abff8d154dad96824689b98ec7b5a35 (patch)
tree694b4d855842ff8dad3b6a94d1e7fbb3b8693992 /llvm/lib/Transforms/IPO/FunctionAttrs.cpp
parentc74730070a0261d582e01ee7e5eef2e7c39fb11f (diff)
downloadllvm-a213edd32abff8d154dad96824689b98ec7b5a35.zip
llvm-a213edd32abff8d154dad96824689b98ec7b5a35.tar.gz
llvm-a213edd32abff8d154dad96824689b98ec7b5a35.tar.bz2
[FunctionAttrs] Determine underlying object by `getUnderlyingObjectAggressive` (#100102)
Thanks to #99509, we can fix https://github.com/rust-lang/rust/issues/119573 too.
Diffstat (limited to 'llvm/lib/Transforms/IPO/FunctionAttrs.cpp')
-rw-r--r--llvm/lib/Transforms/IPO/FunctionAttrs.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/IPO/FunctionAttrs.cpp b/llvm/lib/Transforms/IPO/FunctionAttrs.cpp
index 7b419d0..c9ce73d 100644
--- a/llvm/lib/Transforms/IPO/FunctionAttrs.cpp
+++ b/llvm/lib/Transforms/IPO/FunctionAttrs.cpp
@@ -118,7 +118,7 @@ static void addLocAccess(MemoryEffects &ME, const MemoryLocation &Loc,
if (isNoModRef(MR))
return;
- const Value *UO = getUnderlyingObject(Loc.Ptr);
+ const Value *UO = getUnderlyingObjectAggressive(Loc.Ptr);
assert(!isa<AllocaInst>(UO) &&
"Should have been handled by getModRefInfoMask()");
if (isa<Argument>(UO)) {