summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-02-13 07:53:34 +0000
committerChris Lattner <sabre@nondot.org>2007-02-13 07:53:34 +0000
commitcb9a626c671a230cd79424f2dddf9e9827456f36 (patch)
tree02e14f91420018ffc4745740841d0314bcbb1e24 /llvm
parente786eaa3b03bc91fa9a3b28eeea2f9d0b61be7b4 (diff)
downloadbcm5719-llvm-cb9a626c671a230cd79424f2dddf9e9827456f36.tar.gz
bcm5719-llvm-cb9a626c671a230cd79424f2dddf9e9827456f36.zip
add a setName variant that takes a null-terminated string. This can be
used to avoid std::string allocations in common cases. llvm-svn: 34232
Diffstat (limited to 'llvm')
-rw-r--r--llvm/include/llvm/Value.h2
-rw-r--r--llvm/lib/VMCore/Value.cpp4
2 files changed, 6 insertions, 0 deletions
diff --git a/llvm/include/llvm/Value.h b/llvm/include/llvm/Value.h
index be751d5f632..fac596b415c 100644
--- a/llvm/include/llvm/Value.h
+++ b/llvm/include/llvm/Value.h
@@ -92,6 +92,8 @@ public:
void setName(const std::string &name);
void setName(const char *Name, unsigned NameLen);
+ void setName(const char *Name); // Takes a null-terminated string.
+
/// takeName - transfer the name from V to this value, setting V's name to
/// empty. It is an error to call V->takeName(V).
diff --git a/llvm/lib/VMCore/Value.cpp b/llvm/lib/VMCore/Value.cpp
index ee6f94ad386..c7af9313598 100644
--- a/llvm/lib/VMCore/Value.cpp
+++ b/llvm/lib/VMCore/Value.cpp
@@ -122,6 +122,10 @@ void Value::setName(const std::string &name) {
setName(&name[0], name.size());
}
+void Value::setName(const char *Name) {
+ setName(Name, Name ? strlen(Name) : 0);
+}
+
void Value::setName(const char *NameStr, unsigned NameLen) {
if (NameLen == 0 && !hasName()) return;
if (getType() != Type::VoidTy && "Cannot assign a name to void values!");
OpenPOWER on IntegriCloud