[llvm] r323234 - [WebAssembly] Remove "name" section of object wasm object files

Sam Clegg via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 23 10:30:04 PST 2018


Author: sbc
Date: Tue Jan 23 10:30:04 2018
New Revision: 323234

URL: http://llvm.org/viewvc/llvm-project?rev=323234&view=rev
Log:
[WebAssembly] Remove "name" section of object wasm object files

LLD is unaffected, no changes needed there. LLD continues to
write out a name section, using the symbol names.

Fixes: https://github.com/WebAssembly/tool-conventions/issues/37

Patch by Nicholas Wilson!

Differential Revision: https://reviews.llvm.org/D42425

Modified:
    llvm/trunk/lib/MC/WasmObjectWriter.cpp
    llvm/trunk/test/MC/WebAssembly/comdat.ll
    llvm/trunk/test/MC/WebAssembly/global-ctor-dtor.ll
    llvm/trunk/test/MC/WebAssembly/sections.ll
    llvm/trunk/test/MC/WebAssembly/visibility.ll
    llvm/trunk/test/MC/WebAssembly/weak-alias.ll
    llvm/trunk/test/MC/WebAssembly/weak.ll

Modified: llvm/trunk/lib/MC/WasmObjectWriter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/WasmObjectWriter.cpp?rev=323234&r1=323233&r2=323234&view=diff
==============================================================================
--- llvm/trunk/lib/MC/WasmObjectWriter.cpp (original)
+++ llvm/trunk/lib/MC/WasmObjectWriter.cpp Tue Jan 23 10:30:04 2018
@@ -291,8 +291,6 @@ private:
   void writeCodeSection(const MCAssembler &Asm, const MCAsmLayout &Layout,
                         ArrayRef<WasmFunction> Functions);
   void writeDataSection(ArrayRef<WasmDataSegment> Segments);
-  void writeNameSection(ArrayRef<WasmFunction> Functions,
-                        ArrayRef<WasmImport> Imports);
   void writeCodeRelocSection();
   void writeDataRelocSection();
   void writeLinkingMetaDataSection(
@@ -851,36 +849,6 @@ void WasmObjectWriter::writeDataSection(
   endSection(Section);
 }
 
-void WasmObjectWriter::writeNameSection(ArrayRef<WasmFunction> Functions,
-                                        ArrayRef<WasmImport> Imports) {
-  uint32_t TotalFunctions = NumFunctionImports + Functions.size();
-  if (TotalFunctions == 0)
-    return;
-
-  SectionBookkeeping Section;
-  startSection(Section, wasm::WASM_SEC_CUSTOM, "name");
-  SectionBookkeeping SubSection;
-  startSection(SubSection, wasm::WASM_NAMES_FUNCTION);
-
-  encodeULEB128(TotalFunctions, getStream());
-  uint32_t Index = 0;
-  for (const WasmImport &Import : Imports) {
-    if (Import.Kind == wasm::WASM_EXTERNAL_FUNCTION) {
-      encodeULEB128(Index, getStream());
-      writeString(Import.FieldName);
-      ++Index;
-    }
-  }
-  for (const WasmFunction &Func : Functions) {
-    encodeULEB128(Index, getStream());
-    writeString(Func.Sym->getName());
-    ++Index;
-  }
-
-  endSection(SubSection);
-  endSection(Section);
-}
-
 void WasmObjectWriter::writeCodeRelocSection() {
   // See: https://github.com/WebAssembly/tool-conventions/blob/master/Linking.md
   // for descriptions of the reloc sections.
@@ -1405,7 +1373,6 @@ void WasmObjectWriter::writeObject(MCAss
   writeElemSection(TableElems);
   writeCodeSection(Asm, Layout, Functions);
   writeDataSection(DataSegments);
-  writeNameSection(Functions, Imports);
   writeCodeRelocSection();
   writeDataRelocSection();
   writeLinkingMetaDataSection(DataSegments, DataSize, SymbolFlags,

Modified: llvm/trunk/test/MC/WebAssembly/comdat.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/WebAssembly/comdat.ll?rev=323234&r1=323233&r2=323234&view=diff
==============================================================================
--- llvm/trunk/test/MC/WebAssembly/comdat.ll (original)
+++ llvm/trunk/test/MC/WebAssembly/comdat.ll Tue Jan 23 10:30:04 2018
@@ -94,17 +94,6 @@ define linkonce_odr i32 @sharedFn() #1 c
 ; CHECK-NEXT:          Value:           0
 ; CHECK-NEXT:        Content:         '616263'
 ; CHECK-NEXT:  - Type:            CUSTOM
-; CHECK-NEXT:    Name:            name
-; CHECK-NEXT:    FunctionNames:
-; CHECK-NEXT:      - Index:           0
-; CHECK-NEXT:        Name:            funcImport
-; CHECK-NEXT:      - Index:           1
-; CHECK-NEXT:        Name:            callImport
-; CHECK-NEXT:      - Index:           2
-; CHECK-NEXT:        Name:            basicInlineFn
-; CHECK-NEXT:      - Index:           3
-; CHECK-NEXT:        Name:            sharedFn
-; CHECK-NEXT:  - Type:            CUSTOM
 ; CHECK-NEXT:    Name:            linking
 ; CHECK-NEXT:    DataSize:        3
 ; CHECK-NEXT:    SymbolInfo:

Modified: llvm/trunk/test/MC/WebAssembly/global-ctor-dtor.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/WebAssembly/global-ctor-dtor.ll?rev=323234&r1=323233&r2=323234&view=diff
==============================================================================
--- llvm/trunk/test/MC/WebAssembly/global-ctor-dtor.ll (original)
+++ llvm/trunk/test/MC/WebAssembly/global-ctor-dtor.ll Tue Jan 23 10:30:04 2018
@@ -137,27 +137,6 @@ declare void @func3()
 ; CHECK-NEXT:           Value:           0
 ; CHECK-NEXT:         Content:         '01040000'
 ; CHECK-NEXT:   - Type:            CUSTOM
-; CHECK-NEXT:     Name:            name
-; CHECK-NEXT:     FunctionNames:   
-; CHECK-NEXT:       - Index:           0
-; CHECK-NEXT:         Name:            func3
-; CHECK-NEXT:       - Index:           1
-; CHECK-NEXT:         Name:            __cxa_atexit
-; CHECK-NEXT:       - Index:           2
-; CHECK-NEXT:         Name:            func2
-; CHECK-NEXT:       - Index:           3
-; CHECK-NEXT:         Name:            func1
-; CHECK-NEXT:       - Index:           4
-; CHECK-NEXT:         Name:            func0
-; CHECK-NEXT:       - Index:           5
-; CHECK-NEXT:         Name:            .Lcall_dtors.42
-; CHECK-NEXT:       - Index:           6
-; CHECK-NEXT:         Name:            .Lregister_call_dtors.42
-; CHECK-NEXT:       - Index:           7
-; CHECK-NEXT:         Name:            .Lcall_dtors
-; CHECK-NEXT:       - Index:           8
-; CHECK-NEXT:         Name:            .Lregister_call_dtors
-; CHECK-NEXT:   - Type:            CUSTOM
 ; CHECK-NEXT:     Name:            linking
 ; CHECK-NEXT:     DataSize:        4
 ; CHECK-NEXT:     SymbolInfo:      

Modified: llvm/trunk/test/MC/WebAssembly/sections.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/WebAssembly/sections.ll?rev=323234&r1=323233&r2=323234&view=diff
==============================================================================
--- llvm/trunk/test/MC/WebAssembly/sections.ll (original)
+++ llvm/trunk/test/MC/WebAssembly/sections.ll Tue Jan 23 10:30:04 2018
@@ -41,10 +41,6 @@ entry:
 ; CHECK:  }
 ; CHECK:  Section {
 ; CHECK:    Type: CUSTOM (0x0)
-; CHECK:    Name: name
-; CHECK:  }
-; CHECK:  Section {
-; CHECK:    Type: CUSTOM (0x0)
 ; CHECK:    Name: reloc.CODE
 ; CHECK:  }
 ; CHECK:]

Modified: llvm/trunk/test/MC/WebAssembly/visibility.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/WebAssembly/visibility.ll?rev=323234&r1=323233&r2=323234&view=diff
==============================================================================
--- llvm/trunk/test/MC/WebAssembly/visibility.ll (original)
+++ llvm/trunk/test/MC/WebAssembly/visibility.ll Tue Jan 23 10:30:04 2018
@@ -13,8 +13,6 @@ entry:
 }
 
 ; CHECK:        - Type:            CUSTOM
-
-; CHECK:        - Type:            CUSTOM
 ; CHECK-NEXT:     Name:            linking
 ; CHECK-NEXT:     DataSize:        0
 ; CHECK-NEXT:     SymbolInfo:

Modified: llvm/trunk/test/MC/WebAssembly/weak-alias.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/WebAssembly/weak-alias.ll?rev=323234&r1=323233&r2=323234&view=diff
==============================================================================
--- llvm/trunk/test/MC/WebAssembly/weak-alias.ll (original)
+++ llvm/trunk/test/MC/WebAssembly/weak-alias.ll Tue Jan 23 10:30:04 2018
@@ -191,21 +191,6 @@ entry:
 ; CHECK-NEXT:         Content:         '01000000'
 
 ; CHECK:        - Type:            CUSTOM
-; CHECK-NEXT:     Name:            name
-; CHECK-NEXT:     FunctionNames:   
-; CHECK-NEXT:       - Index:           0
-; CHECK-NEXT:         Name:            foo_alias
-; CHECK-NEXT:       - Index:           1
-; CHECK-NEXT:         Name:            foo
-; CHECK-NEXT:       - Index:           2
-; CHECK-NEXT:         Name:            call_direct
-; CHECK-NEXT:       - Index:           3
-; CHECK-NEXT:         Name:            call_alias
-; CHECK-NEXT:       - Index:           4
-; CHECK-NEXT:         Name:            call_direct_ptr
-; CHECK-NEXT:       - Index:           5
-; CHECK-NEXT:         Name:            call_alias_ptr
-; CHECK-NEXT:   - Type:            CUSTOM
 ; CHECK-NEXT:     Name:            linking
 ; CHECK-NEXT:     DataSize:        20
 ; CHECK-NEXT:     SymbolInfo:      

Modified: llvm/trunk/test/MC/WebAssembly/weak.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/WebAssembly/weak.ll?rev=323234&r1=323233&r2=323234&view=diff
==============================================================================
--- llvm/trunk/test/MC/WebAssembly/weak.ll (original)
+++ llvm/trunk/test/MC/WebAssembly/weak.ll Tue Jan 23 10:30:04 2018
@@ -24,11 +24,6 @@ entry:
 
 
 ; CHECK:        - Type:            CUSTOM
-; CHECK-NEXT:     Name:            name
-; CHECK-NEXT:     FunctionNames:   
-; CHECK-NEXT:       - Index:           0
-; CHECK-NEXT:         Name:            weak_function
-; CHECK-NEXT:   - Type:            CUSTOM
 ; CHECK-NEXT:     Name:            linking
 ; CHECK-NEXT:     DataSize:        0
 ; CHECK-NEXT:     SymbolInfo:      




More information about the llvm-commits mailing list