aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/Object/Wasm/obj2yaml-tables.test
blob: 877238437b0105a835ebb87a754d223dde46e4f1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
RUN: obj2yaml %p/../Inputs/WASM/multi-table.wasm | FileCheck %s


# CHECK:  - Type:            TABLE
# CHECK:    Tables:
# CHECK:      - Index:           1
# CHECK:        ElemType:        FUNCREF
# CHECK:        Limits:
# CHECK:          Flags:           [ HAS_MAX ]
# CHECK:          Minimum:         0x3
# CHECK:          Maximum:         0x3
# CHECK:      - Index:           2
# CHECK:        ElemType:        FUNCREF
# CHECK:        Limits:
# CHECK:          Flags:           [ HAS_MAX ]
# CHECK:          Minimum:         0x4
# CHECK:          Maximum:         0x4
# CHECK:      - Index:           3
# CHECK:        ElemType:        EXTERNREF
# CHECK:        Limits:
# CHECK:          Minimum:         0x0
# CHECK:      - Index:           4
# CHECK:        ElemType:        OTHERREF
# CHECK:        Limits:
# CHECK:          Flags:           [ HAS_MAX ]
# CHECK:          Minimum:         0x5
# CHECK:          Maximum:         0x5
# CHECK:  - Type:            GLOBAL
# CHECK:    Globals:
# CHECK:      - Index:           0
# CHECK:        Type:            OTHERREF
# CHECK:        Mutable:         false
# CHECK:        InitExpr:
# CHECK:          Extended:        true
# CHECK:          Body:            D2000B
# CHECK:      - Index:           1
# CHECK:        Type:            I32
# CHECK:        Mutable:         false
# CHECK:        InitExpr:
# CHECK:          Opcode:          I32_CONST
# CHECK:          Value:           0
# CHECK:  - Type:            ELEM
# CHECK:    Segments:
# CHECK:      - Offset:
# CHECK:          Opcode:          I32_CONST
# CHECK:          Value:           0
# CHECK:        Functions:       [ 0 ]
# CHECK:      - Flags:           2
# CHECK:        TableNumber:     1
# CHECK:        ElemKind:        FUNCREF
# CHECK:        Offset:
# CHECK:          Opcode:          I32_CONST
# CHECK:          Value:           0
# CHECK:        Functions:       [ 0 ]
# CHECK:      - Flags:           2
# CHECK:        TableNumber:     1
# CHECK:        ElemKind:        FUNCREF
# CHECK:        Offset:
# CHECK:          Opcode:          I32_CONST
# CHECK:          Value:           1
# CHECK:        Functions:       [ 0, 1 ]
# CHECK:      - Flags:           6
# CHECK:        TableNumber:     2
# CHECK:        ElemKind:        FUNCREF
# CHECK:        Offset:
# CHECK:          Opcode:          GLOBAL_GET
# CHECK:          Index:           1
# There are 2 funcions encoded with initexprs in this segment
# but initexprs in tables are unmodeled.
# CHECK:        Functions:       [  ]
# CHECK:      - Flags:           6
# CHECK:        TableNumber:     2
# This elemkind is OTHERREF because it's encoded as a typed funcref
# CHECK:        ElemKind:        OTHERREF
# CHECK:        Offset:
# CHECK:          Opcode:          I32_CONST
# CHECK:          Value:           2
# CHECK:        Functions:       [  ]
# CHECK:      - Flags:           1
# CHECK:        ElemKind:        FUNCREF
# CHECK:        Offset:
# CHECK:          Opcode:          I32_CONST
# CHECK:          Value:           0
# CHECK:        Functions:       [ 0, 1 ]
# CHECK:      - Flags:           5
# CHECK:        ElemKind:        FUNCREF
# CHECK:        Offset:
# CHECK:          Opcode:          I32_CONST
# CHECK:          Value:           0
# Empty function list, encoded with initexprs
# CHECK:        Functions:       [  ]
# CHECK:      - Flags:           5
# CHECK:        ElemKind:        OTHERREF
# CHECK:        Offset:
# CHECK:          Opcode:          I32_CONST
# CHECK:          Value:           0
# Function list encoded with initexprs
# CHECK:        Functions:       [  ]
# CHECK:      - Flags:           1
# CHECK:        ElemKind:        FUNCREF
# CHECK:        Offset:
# CHECK:          Opcode:          I32_CONST
# CHECK:          Value:           0
# CHECK:        Functions:       [  ]
# CHECK:      - Flags:           6
# CHECK:        TableNumber:     4
# CHECK:        ElemKind:        OTHERREF
# CHECK:        Offset:
# CHECK:          Opcode:          I32_CONST
# CHECK:          Value:           0
# Function list encoded with initexprs
# CHECK:        Functions:       [  ]