xref: /llvm-project/llvm/test/MC/WebAssembly/init-array-label.s (revision ed91843d435d0cd2c39ebb1a50f2907c621f07ed)
1# RUN: llvm-mc -triple=wasm32-unknown-unknown -filetype=obj < %s | obj2yaml | FileCheck %s
2
3init1:
4	.functype	init1 () -> ()
5	end_function
6
7init2:
8	.functype	init2 () -> ()
9	end_function
10
11	.section	.init_array.42,"",@
12	.p2align	2, 0x0
13	.int32	init1
14
15	.section	.init_array,"",@
16	.globl	p_init1
17	.p2align	2, 0x0
18p_init1:
19	.int32	init1
20	.size	p_init1, 4
21
22	.section	.init_array,"",@
23	.globl	p_init2
24	.p2align	2, 0x0
25p_init2:
26	.int32	init1
27	.int32	init2
28	.size	p_init2, 8
29
30# CHECK:        - Type:            FUNCTION
31# CHECK-NEXT:     FunctionTypes:   [ 0, 0 ]
32# CHECK-NEXT:   - Type:            DATACOUNT
33# CHECK-NEXT:     Count:           1
34# CHECK-NEXT:   - Type:            CODE
35# CHECK-NEXT:     Functions:
36# CHECK-NEXT:       - Index:           0
37# CHECK-NEXT:         Locals:          []
38# CHECK-NEXT:         Body:            0B
39# CHECK-NEXT:       - Index:           1
40# CHECK-NEXT:         Locals:          []
41# CHECK-NEXT:         Body:            0B
42# CHECK-NEXT:   - Type:            DATA
43# CHECK-NEXT:     Segments:
44# CHECK-NEXT:       - SectionOffset:   6
45# CHECK-NEXT:         InitFlags:       0
46# CHECK-NEXT:         Offset:
47# CHECK-NEXT:           Opcode:          I32_CONST
48# CHECK-NEXT:           Value:           0
49# CHECK-NEXT:         Content:         '000000000000000000000000'
50# CHECK-NEXT:   - Type:            CUSTOM
51# CHECK-NEXT:     Name:            linking
52# CHECK-NEXT:     Version:         2
53# CHECK-NEXT:     SymbolTable:
54# CHECK-NEXT:       - Index:           0
55# CHECK-NEXT:         Kind:            FUNCTION
56# CHECK-NEXT:         Name:            init1
57# CHECK-NEXT:         Flags:           [ BINDING_LOCAL ]
58# CHECK-NEXT:         Function:        0
59# CHECK-NEXT:       - Index:           1
60# CHECK-NEXT:         Kind:            FUNCTION
61# CHECK-NEXT:         Name:            init2
62# CHECK-NEXT:         Flags:           [ BINDING_LOCAL ]
63# CHECK-NEXT:         Function:        1
64# CHECK-NEXT:       - Index:           2
65# CHECK-NEXT:         Kind:            DATA
66# CHECK-NEXT:         Name:            p_init1
67# CHECK-NEXT:         Flags:           [  ]
68# CHECK-NEXT:         Segment:         0
69# CHECK-NEXT:         Size:            4
70# CHECK-NEXT:       - Index:           3
71# CHECK-NEXT:         Kind:            DATA
72# CHECK-NEXT:         Name:            p_init2
73# CHECK-NEXT:         Flags:           [  ]
74# CHECK-NEXT:         Segment:         0
75# CHECK-NEXT:         Offset:          4
76# CHECK-NEXT:         Size:            8
77# CHECK-NEXT:     SegmentInfo:
78# CHECK-NEXT:       - Index:           0
79# CHECK-NEXT:         Name:            .init_array
80# CHECK-NEXT:         Alignment:       2
81# CHECK-NEXT:         Flags:           [  ]
82# CHECK-NEXT:     InitFunctions:
83# CHECK-NEXT:       - Priority:        42
84# CHECK-NEXT:         Symbol:          0
85# CHECK-NEXT:       - Priority:        65535
86# CHECK-NEXT:         Symbol:          0
87# CHECK-NEXT:       - Priority:        65535
88# CHECK-NEXT:         Symbol:          0
89# CHECK-NEXT:       - Priority:        65535
90# CHECK-NEXT:         Symbol:          1
91# CHECK-NEXT: ...
92