[llvm] 6c92770 - [RewriteStatepointsForGC] Remove unnecessary bitcasts (NFCI)
Nikita Popov via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 10 07:40:56 PST 2024
Author: Nikita Popov
Date: 2024-01-10T16:40:46+01:00
New Revision: 6c92770a80257018df69369fd617628c80b9fa18
URL: https://github.com/llvm/llvm-project/commit/6c92770a80257018df69369fd617628c80b9fa18
DIFF: https://github.com/llvm/llvm-project/commit/6c92770a80257018df69369fd617628c80b9fa18.diff
LOG: [RewriteStatepointsForGC] Remove unnecessary bitcasts (NFCI)
Added:
Modified:
llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp b/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
index 3f02441b74ba81..b98f823ab00b1d 100644
--- a/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
+++ b/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
@@ -1975,19 +1975,10 @@ insertRelocationStores(iterator_range<Value::user_iterator> GCRelocs,
assert(AllocaMap.count(OriginalValue));
Value *Alloca = AllocaMap[OriginalValue];
- // Emit store into the related alloca
- // All gc_relocates are i8 addrspace(1)* typed, and it must be bitcasted to
- // the correct type according to alloca.
+ // Emit store into the related alloca.
assert(Relocate->getNextNode() &&
"Should always have one since it's not a terminator");
- IRBuilder<> Builder(Relocate->getNextNode());
- Value *CastedRelocatedValue =
- Builder.CreateBitCast(Relocate,
- cast<AllocaInst>(Alloca)->getAllocatedType(),
- suffixed_name_or(Relocate, ".casted", ""));
-
- new StoreInst(CastedRelocatedValue, Alloca,
- cast<Instruction>(CastedRelocatedValue)->getNextNode());
+ new StoreInst(Relocate, Alloca, Relocate->getNextNode());
#ifndef NDEBUG
VisitedLiveValues.insert(OriginalValue);
@@ -2620,13 +2611,9 @@ static bool inlineGetBaseAndOffset(Function &F,
Value *Base =
findBasePointer(Callsite->getOperand(0), DVCache, KnownBases);
assert(!DVCache.count(Callsite));
- auto *BaseBC = IRBuilder<>(Callsite).CreateBitCast(
- Base, Callsite->getType(), suffixed_name_or(Base, ".cast", ""));
- if (BaseBC != Base)
- DVCache[BaseBC] = Base;
- Callsite->replaceAllUsesWith(BaseBC);
- if (!BaseBC->hasName())
- BaseBC->takeName(Callsite);
+ Callsite->replaceAllUsesWith(Base);
+ if (!Base->hasName())
+ Base->takeName(Callsite);
Callsite->eraseFromParent();
break;
}
More information about the llvm-commits
mailing list