[llvm] r305762 - The change to llvm-nm in r305733 added fields to the struct NMSymbol

Kevin Enderby via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 19 17:41:04 PDT 2017


Author: enderby
Date: Mon Jun 19 19:41:04 2017
New Revision: 305762

URL: http://llvm.org/viewvc/llvm-project?rev=305762&view=rev
Log:
The change to llvm-nm in r305733 added fields to the struct NMSymbol 
that are not set on the main path.  This diff does a memset to 0 the structs
so this change is to hopefully fix the sanitizer-x86_64-linux-fast bot.

Modified:
    llvm/trunk/tools/llvm-nm/llvm-nm.cpp

Modified: llvm/trunk/tools/llvm-nm/llvm-nm.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-nm/llvm-nm.cpp?rev=305762&r1=305761&r2=305762&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-nm/llvm-nm.cpp (original)
+++ llvm/trunk/tools/llvm-nm/llvm-nm.cpp Mon Jun 19 19:41:04 2017
@@ -48,6 +48,7 @@
 #include <cstring>
 #include <system_error>
 #include <vector>
+#include <string.h>
 
 using namespace llvm;
 using namespace object;
@@ -1116,6 +1117,7 @@ dumpSymbolNamesFromObject(SymbolicFile &
       if (Nsect && Nsect != getNsectInMachO(*MachO, Sym))
         continue;
       NMSymbol S;
+      memset(&S, '\0', sizeof(S));
       S.Size = 0;
       S.Address = 0;
       if (PrintSize) {
@@ -1207,6 +1209,7 @@ dumpSymbolNamesFromObject(SymbolicFile &
         }
         if (!found) {
           NMSymbol S;
+          memset(&S, '\0', sizeof(NMSymbol));
           S.Address = Entry.address() + BaseSegmentAddress;
           S.Size = 0;
           S.TypeChar = '\0';
@@ -1297,6 +1300,7 @@ dumpSymbolNamesFromObject(SymbolicFile &
             // Now create the undefined symbol using the referened dynamic
             // library.
             NMSymbol U;
+            memset(&U, '\0', sizeof(NMSymbol));
             U.Address = 0;
             U.Size = 0;
             U.TypeChar = 'U';
@@ -1361,6 +1365,7 @@ dumpSymbolNamesFromObject(SymbolicFile &
         if (!found) {
           LastSymbolName = Entry.symbolName();
           NMSymbol B;
+          memset(&B, '\0', sizeof(NMSymbol));
           B.Address = 0;
           B.Size = 0;
           B.TypeChar = 'U';
@@ -1420,6 +1425,7 @@ dumpSymbolNamesFromObject(SymbolicFile &
         if (!found) {
           LastSymbolName = Entry.symbolName();
           NMSymbol L;
+          memset(&L, '\0', sizeof(NMSymbol));
           L.Name = Entry.symbolName();
           L.Address = 0;
           L.Size = 0;
@@ -1482,6 +1488,7 @@ dumpSymbolNamesFromObject(SymbolicFile &
         if (!found) {
           LastSymbolName = Entry.symbolName();
           NMSymbol W;
+          memset(&W, '\0', sizeof(NMSymbol));
           W.Name = Entry.symbolName();
           W.Address = 0;
           W.Size = 0;




More information about the llvm-commits mailing list