[llvm] r295138 - Instead of a series of string operations, use snprintf().

Rui Ueyama via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 14 17:09:40 PST 2017


Author: ruiu
Date: Tue Feb 14 19:09:40 2017
New Revision: 295138

URL: http://llvm.org/viewvc/llvm-project?rev=295138&view=rev
Log:
Instead of a series of string operations, use snprintf().

Modified:
    llvm/trunk/lib/MC/WinCOFFObjectWriter.cpp

Modified: llvm/trunk/lib/MC/WinCOFFObjectWriter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/WinCOFFObjectWriter.cpp?rev=295138&r1=295137&r2=295138&view=diff
==============================================================================
--- llvm/trunk/lib/MC/WinCOFFObjectWriter.cpp (original)
+++ llvm/trunk/lib/MC/WinCOFFObjectWriter.cpp Tue Feb 14 19:09:40 2017
@@ -434,10 +434,8 @@ void WinCOFFObjectWriter::SetSectionName
 
   uint64_t StringTableEntry = Strings.getOffset(S.Name);
   if (StringTableEntry <= Max7DecimalOffset) {
-    SmallVector<char, COFF::NameSize> Buffer;
-    Twine('/').concat(Twine(StringTableEntry)).toVector(Buffer);
-    assert(Buffer.size() <= COFF::NameSize && Buffer.size() >= 2);
-    std::memcpy(S.Header.Name, Buffer.data(), Buffer.size());
+    snprintf(S.Header.Name, sizeof(S.Header.Name), "/%" PRIu64,
+             StringTableEntry);
     return;
   }
   if (StringTableEntry <= MaxBase64Offset) {




More information about the llvm-commits mailing list