diff options
author | Chris Lattner <sabre@nondot.org> | 2007-02-13 07:53:34 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2007-02-13 07:53:34 +0000 |
commit | ec79b3da13ae9ba09f52e177bd71fcc5669d61a5 (patch) | |
tree | 7e7091d79aced6902ecc25b29b2e1c78fa79b4a6 | |
parent | 189395282649f11ece08bc2a792187de3669129c (diff) |
add a setName variant that takes a null-terminated string. This can be
used to avoid std::string allocations in common cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34232 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/Value.h | 2 | ||||
-rw-r--r-- | lib/VMCore/Value.cpp | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/include/llvm/Value.h b/include/llvm/Value.h index be751d5f63..fac596b415 100644 --- a/include/llvm/Value.h +++ b/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/lib/VMCore/Value.cpp b/lib/VMCore/Value.cpp index ee6f94ad38..c7af931359 100644 --- a/lib/VMCore/Value.cpp +++ b/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!"); |