[lld] r360110 - [WebAssembly] Add more test coverage for reloctions against section symbols

Sam Clegg via llvm-commits llvm-commits at lists.llvm.org
Mon May 6 20:53:17 PDT 2019


Author: sbc
Date: Mon May  6 20:53:16 2019
New Revision: 360110

URL: http://llvm.org/viewvc/llvm-project?rev=360110&view=rev
Log:
[WebAssembly] Add more test coverage for reloctions against section symbols

The only known user of this relocation type and symbol type is
the debug info sections, but we were not testing the `--relocatable`
output path.

This change adds a minimal test case to cover relocations against
section symbols includes `--relocatable` output.

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

Added:
    lld/trunk/test/wasm/section-symbol-relocs.yaml

Added: lld/trunk/test/wasm/section-symbol-relocs.yaml
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/wasm/section-symbol-relocs.yaml?rev=360110&view=auto
==============================================================================
--- lld/trunk/test/wasm/section-symbol-relocs.yaml (added)
+++ lld/trunk/test/wasm/section-symbol-relocs.yaml Mon May  6 20:53:16 2019
@@ -0,0 +1,51 @@
+# RUN: yaml2obj %s -o %t.o
+# RUN: llc -filetype=obj  %S/Inputs/custom.ll -o %t2.o
+# RUN: wasm-ld --no-entry -o - %t2.o %t.o | obj2yaml | FileCheck %s
+# RUN: wasm-ld -r --no-entry -o - %t2.o %t.o | obj2yaml | FileCheck %s -check-prefix=RELOC
+
+--- !WASM
+FileHeader:
+  Version:         0x00000001
+Sections:
+  - Type:            CUSTOM
+    Name:            green
+    Payload:         'AA0000000000000000'
+    Relocations:
+      - Type:            R_WASM_SECTION_OFFSET_I32
+        Index:           0
+        Offset:          0x00000001
+      - Type:            R_WASM_SECTION_OFFSET_I32
+        Index:           1
+        Offset:          0x00000005
+  - Type:            CUSTOM
+    Name:            red
+    Payload:         'BB0000000000000000'
+  - Type:            CUSTOM
+    Name:            linking
+    Version:         2
+    SymbolTable:
+      - Index:           0
+        Kind:            SECTION
+        Section:         0
+        Flags:           [ BINDING_LOCAL ]
+      - Index:           1
+        Kind:            SECTION
+        Section:         1
+        Flags:           [ BINDING_LOCAL ]
+...
+
+# CHECK:        Name:            green
+# CHECK-NEXT:   Payload:         626172717578AA0600000003000000
+# CHECK:        Name:            red
+# CHECK-NEXT:   Payload:         666F6FBB0000000000000000
+
+# RELOC:        Relocations:
+# RELOC-NEXT:       - Type:            R_WASM_SECTION_OFFSET_I32
+# RELOC-NEXT:         Index:           0
+# RELOC-NEXT:         Offset:          0x00000007
+# RELOC-NEXT:         Addend:          6
+# RELOC-NEXT:       - Type:            R_WASM_SECTION_OFFSET_I32
+# RELOC-NEXT:         Index:           1
+# RELOC-NEXT:         Offset:          0x0000000B
+# RELOC-NEXT:         Addend:          3
+# RELOC-NEXT:    Name:            green




More information about the llvm-commits mailing list