[llvm] [InstCombine] Remove Store which has one-use AddrSpaceCastInst as Ptr (#68120) (PR #79565)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Fri Jan 26 02:04:10 PST 2024
================
@@ -1385,9 +1385,10 @@ Instruction *InstCombinerImpl::visitStoreInst(StoreInst &SI) {
if (Ptr->hasOneUse()) {
if (isa<AllocaInst>(Ptr))
return eraseInstFromFunction(SI);
- if (GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(Ptr)) {
- if (isa<AllocaInst>(GEP->getOperand(0))) {
- if (GEP->getOperand(0)->hasOneUse())
+ if (isa<GetElementPtrInst>(Ptr) || isa<AddrSpaceCastInst>(Ptr)) {
+ Instruction *PtrI = dyn_cast<Instruction>(Ptr);
----------------
arsenm wrote:
Unchecked dyn_cast, use cast<>
https://github.com/llvm/llvm-project/pull/79565
More information about the llvm-commits
mailing list