[llvm] r339366 - [NFC] Remove magic bool param in RAUW
JF Bastien via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 9 11:28:54 PDT 2018
Author: jfb
Date: Thu Aug 9 11:28:54 2018
New Revision: 339366
URL: http://llvm.org/viewvc/llvm-project?rev=339366&view=rev
Log:
[NFC] Remove magic bool param in RAUW
Use an enum class instead.
Modified:
llvm/trunk/include/llvm/IR/Value.h
llvm/trunk/lib/IR/Value.cpp
Modified: llvm/trunk/include/llvm/IR/Value.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/IR/Value.h?rev=339366&r1=339365&r2=339366&view=diff
==============================================================================
--- llvm/trunk/include/llvm/IR/Value.h (original)
+++ llvm/trunk/include/llvm/IR/Value.h Thu Aug 9 11:28:54 2018
@@ -254,7 +254,8 @@ public:
private:
void destroyValueName();
- void doRAUW(Value *New, bool NoMetadata);
+ enum class ReplaceMetadataUses { No, Yes };
+ void doRAUW(Value *New, ReplaceMetadataUses);
void setNameImpl(const Twine &Name);
public:
Modified: llvm/trunk/lib/IR/Value.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/IR/Value.cpp?rev=339366&r1=339365&r2=339366&view=diff
==============================================================================
--- llvm/trunk/lib/IR/Value.cpp (original)
+++ llvm/trunk/lib/IR/Value.cpp Thu Aug 9 11:28:54 2018
@@ -405,7 +405,7 @@ static bool contains(Value *Expr, Value
}
#endif // NDEBUG
-void Value::doRAUW(Value *New, bool NoMetadata) {
+void Value::doRAUW(Value *New, ReplaceMetadataUses ReplaceMetaUses) {
assert(New && "Value::replaceAllUsesWith(<null>) is invalid!");
assert(!contains(New, this) &&
"this->replaceAllUsesWith(expr(this)) is NOT valid!");
@@ -415,7 +415,7 @@ void Value::doRAUW(Value *New, bool NoMe
// Notify all ValueHandles (if present) that this value is going away.
if (HasValueHandle)
ValueHandleBase::ValueIsRAUWd(this, New);
- if (!NoMetadata && isUsedByMetadata())
+ if (ReplaceMetaUses == ReplaceMetadataUses::Yes && isUsedByMetadata())
ValueAsMetadata::handleRAUW(this, New);
while (!materialized_use_empty()) {
@@ -437,11 +437,11 @@ void Value::doRAUW(Value *New, bool NoMe
}
void Value::replaceAllUsesWith(Value *New) {
- doRAUW(New, false /* NoMetadata */);
+ doRAUW(New, ReplaceMetadataUses::Yes);
}
void Value::replaceNonMetadataUsesWith(Value *New) {
- doRAUW(New, true /* NoMetadata */);
+ doRAUW(New, ReplaceMetadataUses::No);
}
// Like replaceAllUsesWith except it does not handle constants or basic blocks.
More information about the llvm-commits
mailing list