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