Files
clang-p2996/lld/test/wasm/map-file.s
Sam Clegg 8e44f037dc [lld][WebAssembly] Add support for -soname
This change writes the module name to the name section of the wasm
binary.  We use the `-soname` argument to determine the name and we
default the output file basename if this option is not specified.

In the future we will likely want to embed the soname in the dylink
section too, but this the first step in supporting `-soname`.

Differential Revision: https://reviews.llvm.org/D158001
2023-08-15 18:33:45 -07:00

75 lines
2.6 KiB
ArmAsm

# RUN: llvm-mc -filetype=obj -triple=wasm32-unknown-unknown %s -o %t1.o
# RUN: wasm-ld %t1.o -o %t -M | FileCheck --match-full-lines --strict-whitespace %s
# RUN: wasm-ld %t1.o -o %t -print-map | FileCheck --match-full-lines --strict-whitespace %s
# RUN: wasm-ld %t1.o -o %t -Map=%t.map
# RUN: FileCheck --match-full-lines --strict-whitespace %s < %t.map
.globaltype wasm_global, i32, immutable
wasm_global:
bar:
.functype bar () -> (i32)
i32.const somedata
i32.const somezeroes
drop
end_function
write_global:
.functype write_global (i32) -> ()
local.get 0
global.set wasm_global
end_function
.globl _start
_start:
.functype _start () -> ()
call bar
call write_global
end_function
.section .data.somedata,"",@
somedata:
.int32 123
.int32 bar
.size somedata, 8
.section .bss.somezeroes,"",@
somezeroes:
.int32 0
.size somezeroes, 4
.section .debug_info,"",@
.int32 bar
# CHECK: Addr Off Size Out In Symbol
# CHECK-NEXT: - 8 e TYPE
# CHECK-NEXT: - 16 6 FUNCTION
# CHECK-NEXT: - 1c 7 TABLE
# CHECK-NEXT: - 23 5 MEMORY
# CHECK-NEXT: - 28 f GLOBAL
# CHECK-NEXT: 0 0 0 __stack_pointer
# CHECK-NEXT: 1 0 0 wasm_global
# CHECK-NEXT: - 37 15 EXPORT
# CHECK-NEXT: - 4c 9 ELEM
# CHECK-NEXT: - 55 2d CODE
# CHECK-NEXT: - 56 10 {{.*}}{{/|\\}}map-file.s.tmp1.o:(bar)
# CHECK-NEXT: - 56 10 bar
# CHECK-NEXT: - 66 b {{.*}}{{/|\\}}map-file.s.tmp1.o:(write_global)
# CHECK-NEXT: - 66 b write_global
# CHECK-NEXT: - 71 f {{.*}}{{/|\\}}map-file.s.tmp1.o:(_start)
# CHECK-NEXT: - 71 f _start
# CHECK-NEXT: - 82 11 DATA
# CHECK-NEXT: 400 83 8 .data
# CHECK-NEXT: 400 89 8 {{.*}}{{/|\\}}map-file.s.tmp1.o:(.data.somedata)
# CHECK-NEXT: 400 89 8 somedata
# CHECK-NEXT: 408 82 4 .bss
# CHECK-NEXT: 408 0 4 {{.*}}{{/|\\}}map-file.s.tmp1.o:(.bss.somezeroes)
# CHECK-NEXT: 408 0 4 somezeroes
# CHECK-NEXT: - 93 12 CUSTOM(.debug_info)
# CHECK-NEXT: - a5 61 CUSTOM(name)
# RUN: not wasm-ld %t1.o -o /dev/null -Map=/ 2>&1 \
# RUN: | FileCheck -check-prefix=FAIL %s
# FAIL: wasm-ld: error: cannot open map file /