-
Notifications
You must be signed in to change notification settings - Fork 15.2k
[llvm] Remove an extraneous cast (NFC) #144955
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[llvm] Remove an extraneous cast (NFC) #144955
Conversation
llvm::CallBase::getArgOperand returns Value *, so we do not need const_cast<Value *>.
@llvm/pr-subscribers-llvm-globalisel Author: Kazu Hirata (kazutakahirata) Changesllvm::CallBase::getArgOperand returns Value *, so we do not need Full diff: https://github.com/llvm/llvm-project/pull/144955.diff 3 Files Affected:
diff --git a/llvm/include/llvm/IR/IntrinsicInst.h b/llvm/include/llvm/IR/IntrinsicInst.h
index 20e667524fa0d..d8f8bdeb01d43 100644
--- a/llvm/include/llvm/IR/IntrinsicInst.h
+++ b/llvm/include/llvm/IR/IntrinsicInst.h
@@ -779,8 +779,8 @@ class MinMaxIntrinsic : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getLHS() const { return const_cast<Value *>(getArgOperand(0)); }
- Value *getRHS() const { return const_cast<Value *>(getArgOperand(1)); }
+ Value *getLHS() const { return getArgOperand(0); }
+ Value *getRHS() const { return getArgOperand(1); }
/// Returns the comparison predicate underlying the intrinsic.
static ICmpInst::Predicate getPredicate(Intrinsic::ID ID) {
@@ -868,8 +868,8 @@ class CmpIntrinsic : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getLHS() const { return const_cast<Value *>(getArgOperand(0)); }
- Value *getRHS() const { return const_cast<Value *>(getArgOperand(1)); }
+ Value *getLHS() const { return getArgOperand(0); }
+ Value *getRHS() const { return getArgOperand(1); }
static bool isSigned(Intrinsic::ID ID) { return ID == Intrinsic::scmp; }
bool isSigned() const { return isSigned(getIntrinsicID()); }
@@ -914,8 +914,8 @@ class BinaryOpIntrinsic : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getLHS() const { return const_cast<Value *>(getArgOperand(0)); }
- Value *getRHS() const { return const_cast<Value *>(getArgOperand(1)); }
+ Value *getLHS() const { return getArgOperand(0); }
+ Value *getRHS() const { return getArgOperand(1); }
/// Returns the binary operation underlying the intrinsic.
LLVM_ABI Instruction::BinaryOps getBinaryOp() const;
@@ -1118,7 +1118,7 @@ class MemIntrinsic : public MemIntrinsicBase<MemIntrinsic> {
public:
ConstantInt *getVolatileCst() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(ARG_VOLATILE)));
+ return cast<ConstantInt>(getArgOperand(ARG_VOLATILE));
}
bool isVolatile() const { return !getVolatileCst()->isZero(); }
@@ -1180,7 +1180,7 @@ class MemSetPatternInst : public MemSetBase<MemIntrinsic> {
public:
ConstantInt *getVolatileCst() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(ARG_VOLATILE)));
+ return cast<ConstantInt>(getArgOperand(ARG_VOLATILE));
}
bool isVolatile() const { return !getVolatileCst()->isZero(); }
@@ -1288,7 +1288,7 @@ class AnyMemIntrinsic : public MemIntrinsicBase<AnyMemIntrinsic> {
Value *getRawElementSizeInBytes() const {
assert(isAtomic());
- return const_cast<Value *>(getArgOperand(ARG_ELEMENTSIZE));
+ return getArgOperand(ARG_ELEMENTSIZE);
}
uint32_t getElementSizeInBytes() const {
@@ -1388,7 +1388,7 @@ class VAStartInst : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getArgList() const { return const_cast<Value *>(getArgOperand(0)); }
+ Value *getArgList() const { return getArgOperand(0); }
};
/// This represents the llvm.va_end intrinsic.
@@ -1401,7 +1401,7 @@ class VAEndInst : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getArgList() const { return const_cast<Value *>(getArgOperand(0)); }
+ Value *getArgList() const { return getArgOperand(0); }
};
/// This represents the llvm.va_copy intrinsic.
@@ -1414,8 +1414,8 @@ class VACopyInst : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getDest() const { return const_cast<Value *>(getArgOperand(0)); }
- Value *getSrc() const { return const_cast<Value *>(getArgOperand(1)); }
+ Value *getDest() const { return getArgOperand(0); }
+ Value *getSrc() const { return getArgOperand(1); }
};
/// A base class for all instrprof intrinsics.
@@ -1457,16 +1457,12 @@ class InstrProfInstBase : public IntrinsicInst {
// The "name" operand of the profile instrumentation instruction - this is the
// operand that can be used to relate the instruction to the function it
// belonged to at instrumentation time.
- Value *getNameValue() const {
- return const_cast<Value *>(getArgOperand(0))->stripPointerCasts();
- }
+ Value *getNameValue() const { return getArgOperand(0)->stripPointerCasts(); }
void setNameValue(Value *V) { setArgOperand(0, V); }
// The hash of the CFG for the instrumented function.
- ConstantInt *getHash() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(1)));
- }
+ ConstantInt *getHash() const { return cast<ConstantInt>(getArgOperand(1)); }
};
/// A base class for all instrprof counter intrinsics.
@@ -1563,18 +1559,14 @@ class InstrProfValueProfileInst : public InstrProfCntrInstBase {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getTargetValue() const {
- return cast<Value>(const_cast<Value *>(getArgOperand(2)));
- }
+ Value *getTargetValue() const { return cast<Value>(getArgOperand(2)); }
ConstantInt *getValueKind() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(3)));
+ return cast<ConstantInt>(getArgOperand(3));
}
// Returns the value site index.
- ConstantInt *getIndex() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(4)));
- }
+ ConstantInt *getIndex() const { return cast<ConstantInt>(getArgOperand(4)); }
};
/// A base class for instrprof mcdc intrinsics that require global bitmap bytes.
@@ -1590,7 +1582,7 @@ class InstrProfMCDCBitmapInstBase : public InstrProfInstBase {
/// \return The number of bits used for the MCDC bitmaps for the instrumented
/// function.
ConstantInt *getNumBitmapBits() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(2)));
+ return cast<ConstantInt>(getArgOperand(2));
}
/// \return The number of bytes used for the MCDC bitmaps for the instrumented
@@ -1624,14 +1616,12 @@ class InstrProfMCDCTVBitmapUpdate : public InstrProfMCDCBitmapInstBase {
/// \return The index of the TestVector Bitmap upon which this intrinsic
/// acts.
ConstantInt *getBitmapIndex() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(2)));
+ return cast<ConstantInt>(getArgOperand(2));
}
/// \return The address of the corresponding condition bitmap containing
/// the index of the TestVector to update within the TestVector Bitmap.
- Value *getMCDCCondBitmapAddr() const {
- return cast<Value>(const_cast<Value *>(getArgOperand(3)));
- }
+ Value *getMCDCCondBitmapAddr() const { return cast<Value>(getArgOperand(3)); }
};
class PseudoProbeInst : public IntrinsicInst {
@@ -1645,20 +1635,16 @@ class PseudoProbeInst : public IntrinsicInst {
}
ConstantInt *getFuncGuid() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(0)));
+ return cast<ConstantInt>(getArgOperand(0));
}
- ConstantInt *getIndex() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(1)));
- }
+ ConstantInt *getIndex() const { return cast<ConstantInt>(getArgOperand(1)); }
ConstantInt *getAttributes() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(2)));
+ return cast<ConstantInt>(getArgOperand(2));
}
- ConstantInt *getFactor() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(3)));
- }
+ ConstantInt *getFactor() const { return cast<ConstantInt>(getArgOperand(3)); }
};
class NoAliasScopeDeclInst : public IntrinsicInst {
diff --git a/llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp b/llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
index fbbbea6156fc7..b4e64d7416d86 100644
--- a/llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
+++ b/llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
@@ -240,7 +240,7 @@ bool InlineAsmLowering::lowerInlineAsm(
// Compute the value type for each operand.
if (OpInfo.hasArg()) {
- OpInfo.CallOperandVal = const_cast<Value *>(Call.getArgOperand(ArgNo));
+ OpInfo.CallOperandVal = Call.getArgOperand(ArgNo);
if (isa<BasicBlock>(OpInfo.CallOperandVal)) {
LLVM_DEBUG(dbgs() << "Basic block input operands not supported yet\n");
diff --git a/llvm/lib/IR/IntrinsicInst.cpp b/llvm/lib/IR/IntrinsicInst.cpp
index 256bce1abe71f..b1d3339c5a414 100644
--- a/llvm/lib/IR/IntrinsicInst.cpp
+++ b/llvm/lib/IR/IntrinsicInst.cpp
@@ -239,13 +239,13 @@ void DbgAssignIntrinsic::setValue(Value *V) {
ConstantInt *InstrProfCntrInstBase::getNumCounters() const {
if (InstrProfValueProfileInst::classof(this))
llvm_unreachable("InstrProfValueProfileInst does not have counters!");
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(2)));
+ return cast<ConstantInt>(getArgOperand(2));
}
ConstantInt *InstrProfCntrInstBase::getIndex() const {
if (InstrProfValueProfileInst::classof(this))
llvm_unreachable("Please use InstrProfValueProfileInst::getIndex()");
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(3)));
+ return cast<ConstantInt>(getArgOperand(3));
}
void InstrProfCntrInstBase::setIndex(uint32_t Idx) {
@@ -255,7 +255,7 @@ void InstrProfCntrInstBase::setIndex(uint32_t Idx) {
Value *InstrProfIncrementInst::getStep() const {
if (InstrProfIncrementInstStep::classof(this)) {
- return const_cast<Value *>(getArgOperand(4));
+ return getArgOperand(4);
}
const Module *M = getModule();
LLVMContext &Context = M->getContext();
|
@llvm/pr-subscribers-llvm-ir Author: Kazu Hirata (kazutakahirata) Changesllvm::CallBase::getArgOperand returns Value *, so we do not need Full diff: https://github.com/llvm/llvm-project/pull/144955.diff 3 Files Affected:
diff --git a/llvm/include/llvm/IR/IntrinsicInst.h b/llvm/include/llvm/IR/IntrinsicInst.h
index 20e667524fa0d..d8f8bdeb01d43 100644
--- a/llvm/include/llvm/IR/IntrinsicInst.h
+++ b/llvm/include/llvm/IR/IntrinsicInst.h
@@ -779,8 +779,8 @@ class MinMaxIntrinsic : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getLHS() const { return const_cast<Value *>(getArgOperand(0)); }
- Value *getRHS() const { return const_cast<Value *>(getArgOperand(1)); }
+ Value *getLHS() const { return getArgOperand(0); }
+ Value *getRHS() const { return getArgOperand(1); }
/// Returns the comparison predicate underlying the intrinsic.
static ICmpInst::Predicate getPredicate(Intrinsic::ID ID) {
@@ -868,8 +868,8 @@ class CmpIntrinsic : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getLHS() const { return const_cast<Value *>(getArgOperand(0)); }
- Value *getRHS() const { return const_cast<Value *>(getArgOperand(1)); }
+ Value *getLHS() const { return getArgOperand(0); }
+ Value *getRHS() const { return getArgOperand(1); }
static bool isSigned(Intrinsic::ID ID) { return ID == Intrinsic::scmp; }
bool isSigned() const { return isSigned(getIntrinsicID()); }
@@ -914,8 +914,8 @@ class BinaryOpIntrinsic : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getLHS() const { return const_cast<Value *>(getArgOperand(0)); }
- Value *getRHS() const { return const_cast<Value *>(getArgOperand(1)); }
+ Value *getLHS() const { return getArgOperand(0); }
+ Value *getRHS() const { return getArgOperand(1); }
/// Returns the binary operation underlying the intrinsic.
LLVM_ABI Instruction::BinaryOps getBinaryOp() const;
@@ -1118,7 +1118,7 @@ class MemIntrinsic : public MemIntrinsicBase<MemIntrinsic> {
public:
ConstantInt *getVolatileCst() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(ARG_VOLATILE)));
+ return cast<ConstantInt>(getArgOperand(ARG_VOLATILE));
}
bool isVolatile() const { return !getVolatileCst()->isZero(); }
@@ -1180,7 +1180,7 @@ class MemSetPatternInst : public MemSetBase<MemIntrinsic> {
public:
ConstantInt *getVolatileCst() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(ARG_VOLATILE)));
+ return cast<ConstantInt>(getArgOperand(ARG_VOLATILE));
}
bool isVolatile() const { return !getVolatileCst()->isZero(); }
@@ -1288,7 +1288,7 @@ class AnyMemIntrinsic : public MemIntrinsicBase<AnyMemIntrinsic> {
Value *getRawElementSizeInBytes() const {
assert(isAtomic());
- return const_cast<Value *>(getArgOperand(ARG_ELEMENTSIZE));
+ return getArgOperand(ARG_ELEMENTSIZE);
}
uint32_t getElementSizeInBytes() const {
@@ -1388,7 +1388,7 @@ class VAStartInst : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getArgList() const { return const_cast<Value *>(getArgOperand(0)); }
+ Value *getArgList() const { return getArgOperand(0); }
};
/// This represents the llvm.va_end intrinsic.
@@ -1401,7 +1401,7 @@ class VAEndInst : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getArgList() const { return const_cast<Value *>(getArgOperand(0)); }
+ Value *getArgList() const { return getArgOperand(0); }
};
/// This represents the llvm.va_copy intrinsic.
@@ -1414,8 +1414,8 @@ class VACopyInst : public IntrinsicInst {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getDest() const { return const_cast<Value *>(getArgOperand(0)); }
- Value *getSrc() const { return const_cast<Value *>(getArgOperand(1)); }
+ Value *getDest() const { return getArgOperand(0); }
+ Value *getSrc() const { return getArgOperand(1); }
};
/// A base class for all instrprof intrinsics.
@@ -1457,16 +1457,12 @@ class InstrProfInstBase : public IntrinsicInst {
// The "name" operand of the profile instrumentation instruction - this is the
// operand that can be used to relate the instruction to the function it
// belonged to at instrumentation time.
- Value *getNameValue() const {
- return const_cast<Value *>(getArgOperand(0))->stripPointerCasts();
- }
+ Value *getNameValue() const { return getArgOperand(0)->stripPointerCasts(); }
void setNameValue(Value *V) { setArgOperand(0, V); }
// The hash of the CFG for the instrumented function.
- ConstantInt *getHash() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(1)));
- }
+ ConstantInt *getHash() const { return cast<ConstantInt>(getArgOperand(1)); }
};
/// A base class for all instrprof counter intrinsics.
@@ -1563,18 +1559,14 @@ class InstrProfValueProfileInst : public InstrProfCntrInstBase {
return isa<IntrinsicInst>(V) && classof(cast<IntrinsicInst>(V));
}
- Value *getTargetValue() const {
- return cast<Value>(const_cast<Value *>(getArgOperand(2)));
- }
+ Value *getTargetValue() const { return cast<Value>(getArgOperand(2)); }
ConstantInt *getValueKind() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(3)));
+ return cast<ConstantInt>(getArgOperand(3));
}
// Returns the value site index.
- ConstantInt *getIndex() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(4)));
- }
+ ConstantInt *getIndex() const { return cast<ConstantInt>(getArgOperand(4)); }
};
/// A base class for instrprof mcdc intrinsics that require global bitmap bytes.
@@ -1590,7 +1582,7 @@ class InstrProfMCDCBitmapInstBase : public InstrProfInstBase {
/// \return The number of bits used for the MCDC bitmaps for the instrumented
/// function.
ConstantInt *getNumBitmapBits() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(2)));
+ return cast<ConstantInt>(getArgOperand(2));
}
/// \return The number of bytes used for the MCDC bitmaps for the instrumented
@@ -1624,14 +1616,12 @@ class InstrProfMCDCTVBitmapUpdate : public InstrProfMCDCBitmapInstBase {
/// \return The index of the TestVector Bitmap upon which this intrinsic
/// acts.
ConstantInt *getBitmapIndex() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(2)));
+ return cast<ConstantInt>(getArgOperand(2));
}
/// \return The address of the corresponding condition bitmap containing
/// the index of the TestVector to update within the TestVector Bitmap.
- Value *getMCDCCondBitmapAddr() const {
- return cast<Value>(const_cast<Value *>(getArgOperand(3)));
- }
+ Value *getMCDCCondBitmapAddr() const { return cast<Value>(getArgOperand(3)); }
};
class PseudoProbeInst : public IntrinsicInst {
@@ -1645,20 +1635,16 @@ class PseudoProbeInst : public IntrinsicInst {
}
ConstantInt *getFuncGuid() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(0)));
+ return cast<ConstantInt>(getArgOperand(0));
}
- ConstantInt *getIndex() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(1)));
- }
+ ConstantInt *getIndex() const { return cast<ConstantInt>(getArgOperand(1)); }
ConstantInt *getAttributes() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(2)));
+ return cast<ConstantInt>(getArgOperand(2));
}
- ConstantInt *getFactor() const {
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(3)));
- }
+ ConstantInt *getFactor() const { return cast<ConstantInt>(getArgOperand(3)); }
};
class NoAliasScopeDeclInst : public IntrinsicInst {
diff --git a/llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp b/llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
index fbbbea6156fc7..b4e64d7416d86 100644
--- a/llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
+++ b/llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
@@ -240,7 +240,7 @@ bool InlineAsmLowering::lowerInlineAsm(
// Compute the value type for each operand.
if (OpInfo.hasArg()) {
- OpInfo.CallOperandVal = const_cast<Value *>(Call.getArgOperand(ArgNo));
+ OpInfo.CallOperandVal = Call.getArgOperand(ArgNo);
if (isa<BasicBlock>(OpInfo.CallOperandVal)) {
LLVM_DEBUG(dbgs() << "Basic block input operands not supported yet\n");
diff --git a/llvm/lib/IR/IntrinsicInst.cpp b/llvm/lib/IR/IntrinsicInst.cpp
index 256bce1abe71f..b1d3339c5a414 100644
--- a/llvm/lib/IR/IntrinsicInst.cpp
+++ b/llvm/lib/IR/IntrinsicInst.cpp
@@ -239,13 +239,13 @@ void DbgAssignIntrinsic::setValue(Value *V) {
ConstantInt *InstrProfCntrInstBase::getNumCounters() const {
if (InstrProfValueProfileInst::classof(this))
llvm_unreachable("InstrProfValueProfileInst does not have counters!");
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(2)));
+ return cast<ConstantInt>(getArgOperand(2));
}
ConstantInt *InstrProfCntrInstBase::getIndex() const {
if (InstrProfValueProfileInst::classof(this))
llvm_unreachable("Please use InstrProfValueProfileInst::getIndex()");
- return cast<ConstantInt>(const_cast<Value *>(getArgOperand(3)));
+ return cast<ConstantInt>(getArgOperand(3));
}
void InstrProfCntrInstBase::setIndex(uint32_t Idx) {
@@ -255,7 +255,7 @@ void InstrProfCntrInstBase::setIndex(uint32_t Idx) {
Value *InstrProfIncrementInst::getStep() const {
if (InstrProfIncrementInstStep::classof(this)) {
- return const_cast<Value *>(getArgOperand(4));
+ return getArgOperand(4);
}
const Module *M = getModule();
LLVMContext &Context = M->getContext();
|
llvm::CallBase::getArgOperand returns Value *, so we do not need
const_cast<Value *>.