xref: /llvm-project/llvm/test/tools/llvm-nm/wasm/linked.yaml (revision 01706e767777aeac9d5a22617d522826b64fce3e)
1428cf71fSDerek Schuff# RUN: yaml2obj %s -o %t.wasm
2428cf71fSDerek Schuff# RUN: llvm-nm %t.wasm | FileCheck %s
3*01706e76SDerek Schuff# RUN: llvm-nm -P %t.wasm | FileCheck %s --check-prefix=POSIX
4428cf71fSDerek Schuff
5428cf71fSDerek Schuff# CHECK: 0000009f T my_func_export
6428cf71fSDerek Schuff# CHECK-NEXT: 0000002a D my_global_export
7428cf71fSDerek Schuff# CHECK-NEXT: 00000000 D my_table_export
8428cf71fSDerek Schuff
9*01706e76SDerek Schuff# POSIX: my_func_export T 9f 3
10*01706e76SDerek Schuff# POSIX-NEXT: my_global_export D 2a 0
11*01706e76SDerek Schuff# POSIX-NEXT: my_table_export D 0 0
12*01706e76SDerek Schuff
13428cf71fSDerek Schuff--- !WASM
14428cf71fSDerek SchuffFileHeader:
15428cf71fSDerek Schuff  Version:         0x1
16428cf71fSDerek SchuffSections:
17428cf71fSDerek Schuff  - Type:            TYPE
18428cf71fSDerek Schuff    Signatures:
19428cf71fSDerek Schuff      - Index:           0
20428cf71fSDerek Schuff        ParamTypes:      []
21428cf71fSDerek Schuff        ReturnTypes:     []
22428cf71fSDerek Schuff  - Type:            IMPORT
23428cf71fSDerek Schuff    Imports:
24428cf71fSDerek Schuff      - Module:          env
25428cf71fSDerek Schuff        Field:           foo
26428cf71fSDerek Schuff        Kind:            FUNCTION
27428cf71fSDerek Schuff        SigIndex:        0
28428cf71fSDerek Schuff      - Module:          env
29428cf71fSDerek Schuff        Field:           bar
30428cf71fSDerek Schuff        Kind:            GLOBAL
31428cf71fSDerek Schuff        GlobalType:      I32
32428cf71fSDerek Schuff        GlobalMutable:   true
33428cf71fSDerek Schuff      - Module:          env
34428cf71fSDerek Schuff        Field:           memory
35428cf71fSDerek Schuff        Kind:            MEMORY
36428cf71fSDerek Schuff        Memory:
37428cf71fSDerek Schuff          Minimum:         0x1
38428cf71fSDerek Schuff  - Type:            FUNCTION
39428cf71fSDerek Schuff    FunctionTypes:   [ 0 ]
40428cf71fSDerek Schuff  - Type:            TABLE
41428cf71fSDerek Schuff    Tables:
42428cf71fSDerek Schuff      - Index:           0
43428cf71fSDerek Schuff        ElemType:        FUNCREF
44428cf71fSDerek Schuff        Limits:
45428cf71fSDerek Schuff          Flags:           [ HAS_MAX ]
46428cf71fSDerek Schuff          Minimum:         0x1
47428cf71fSDerek Schuff          Maximum:         0x1
48428cf71fSDerek Schuff  - Type:            GLOBAL
49428cf71fSDerek Schuff    Globals:
50428cf71fSDerek Schuff      - Index:           1
51428cf71fSDerek Schuff        Mutable:         false
52428cf71fSDerek Schuff        Type:            I32
53428cf71fSDerek Schuff        InitExpr:
54428cf71fSDerek Schuff          Opcode:          I32_CONST
55428cf71fSDerek Schuff          Value:           42
56428cf71fSDerek Schuff  - Type:            EXPORT
57428cf71fSDerek Schuff    Exports:
58428cf71fSDerek Schuff      - Name:            my_func_export
59428cf71fSDerek Schuff        Kind:            FUNCTION
60428cf71fSDerek Schuff        Index:           1
61428cf71fSDerek Schuff      - Name:            my_global_export
62428cf71fSDerek Schuff        Kind:            GLOBAL
63428cf71fSDerek Schuff        Index:           1
64428cf71fSDerek Schuff      - Name:            my_table_export
65428cf71fSDerek Schuff        Kind:            TABLE
66428cf71fSDerek Schuff        Index:           0
67428cf71fSDerek Schuff  - Type:            CODE
68428cf71fSDerek Schuff    Functions:
69428cf71fSDerek Schuff      - Index:           1
70428cf71fSDerek Schuff        Locals:
71428cf71fSDerek Schuff        Body:            00
72428cf71fSDerek Schuff  - Type:            DATA
73428cf71fSDerek Schuff    Segments:
74428cf71fSDerek Schuff      - SectionOffset:   0
75428cf71fSDerek Schuff        InitFlags:       0
76428cf71fSDerek Schuff        Offset:
77428cf71fSDerek Schuff          Opcode:          I32_CONST
78428cf71fSDerek Schuff          Value:           0
79428cf71fSDerek Schuff        Content:         ''
80