xref: /llvm-project/llvm/test/MC/WebAssembly/data-section-combined.s (revision 9647a6f719ee4b1c23eea7aef368c1dcd5317949)
1# Test that placing multiple data symbols in the same section works
2
3# RUN: llvm-mc -triple=wasm32-unknown-unknown < %s | FileCheck %s
4
5test0:
6    .functype   test0 () -> (i32, i32)
7    i32.const a
8    i32.const b
9    end_function
10
11    .section mysec,"",@
12a:
13    .int32 42
14    .int32 43
15    .size a, 8
16b:
17    .int32 44
18    .size b, 4
19
20#      CHECK:   .section  mysec,"",@
21# CHECK-NEXT: a:
22# CHECK-NEXT:   .int32 42
23# CHECK-NEXT:   .int32 43
24# CHECK-NEXT:   .size a, 8
25# CHECK-NEXT: b:
26# CHECK-NEXT:   .int32 44
27# CHECK-NEXT:   .size b, 4
28
29# RUN: llvm-mc -filetype=obj -triple=wasm32-unknown-unknown < %s | llvm-objdump --triple=wasm32-unknown-unknown -d -t -r - | FileCheck %s --check-prefix=OBJ
30
31
32#      OBJ: 00000001 <test0>:
33#      OBJ:        3: 41 80 80 80 80 00     i32.const       0
34# OBJ-NEXT:                         00000004:  R_WASM_MEMORY_ADDR_SLEB      a+0
35# OBJ-NEXT:        9: 41 88 80 80 80 00     i32.const       8
36# OBJ-NEXT:                         0000000a:  R_WASM_MEMORY_ADDR_SLEB      b+0
37# OBJ-NEXT:        f: 0b            end
38