Simplify.
llvm-svn: 77102
diff --git a/llvm/lib/VMCore/Value.cpp b/llvm/lib/VMCore/Value.cpp
index 6157dd5..67cd11a 100644
--- a/llvm/lib/VMCore/Value.cpp
+++ b/llvm/lib/VMCore/Value.cpp
@@ -177,7 +177,10 @@
const char *NameStr = NameData.data();
unsigned NameLen = NameData.size();
- if (NameLen == 0 && !hasName()) return;
+ // Name isn't changing?
+ if (getName() == StringRef(NameStr, NameLen))
+ return;
+
assert(getType() != Type::VoidTy && "Cannot assign a name to void values!");
// Get the symbol table to update for this object.
@@ -193,13 +196,8 @@
return;
}
- if (Name) {
- // Name isn't changing?
- if (NameLen == Name->getKeyLength() &&
- !memcmp(Name->getKeyData(), NameStr, NameLen))
- return;
+ if (Name)
Name->Destroy();
- }
// NOTE: Could optimize for the case the name is shrinking to not deallocate
// then reallocated.
@@ -213,11 +211,6 @@
// NOTE: Could optimize for the case the name is shrinking to not deallocate
// then reallocated.
if (hasName()) {
- // Name isn't changing?
- if (NameLen == Name->getKeyLength() &&
- !memcmp(Name->getKeyData(), NameStr, NameLen))
- return;
-
// Remove old name.
ST->removeValueName(Name);
Name->Destroy();