return false;
}
+/// getNameStart - Return a pointer to a null terminated string for this name.
+/// Note that names can have null characters within the string as well as at
+/// their end. This always returns a non-null pointer.
+const char *Value::getNameStart() const {
+ if (Name == 0) return "";
+ return Name->getKeyData();
+}
+
+/// getNameLen - Return the length of the string, correctly handling nul
+/// characters embedded into them.
+unsigned Value::getNameLen() const {
+ return Name ? Name->getKeyLength() : 0;
+}
+
+
std::string Value::getNameStr() const {
if (Name == 0) return "";
return std::string(Name->getKeyData(),
while (!use_empty()) {
Use &U = *UseList;
// Must handle Constants specially, we cannot call replaceUsesOfWith on a
- // constant!
+ // constant because they are uniqued.
if (Constant *C = dyn_cast<Constant>(U.getUser())) {
- if (!isa<GlobalValue>(C))
+ if (!isa<GlobalValue>(C)) {
C->replaceUsesOfWithOnConstant(this, New, &U);
- else
- U.set(New);
- } else {
- U.set(New);
+ continue;
+ }
}
+
+ U.set(New);
}
}