• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# RUN: yaml2obj < %s | llvm-nm - | FileCheck -strict-whitespace %s
2
3# Check that wasm weak function/global/data symbols are displayed correctly
4
5--- !WASM
6FileHeader:
7  Version:         0x00000001
8Sections:
9  - Type:            TYPE
10    Signatures:
11      - Index:           0
12        ReturnType:      I32
13        ParamTypes:
14          - I32
15  - Type:            IMPORT
16    Imports:
17      - Module:          env
18        Field:           weak_import_func
19        Kind:            FUNCTION
20        SigIndex:        0
21  - Type:            FUNCTION
22    FunctionTypes: [ 0 ]
23  - Type:            GLOBAL
24    Globals:
25      - Index:       0
26        Type:        I32
27        Mutable:     false
28        InitExpr:
29          Opcode:          I64_CONST
30          Value:           32
31  - Type:            CODE
32    Functions:
33      - Index:           1
34        Locals:
35        Body:            00
36  - Type:            DATA
37    Segments:
38      - SectionOffset:   6
39        MemoryIndex:     0
40        Offset:
41          Opcode:          I32_CONST
42          Value:           0
43        Content:         '616263'
44  - Type:            CUSTOM
45    Name:            linking
46    Version:         1
47    SymbolTable:
48       - Index:           0
49         Kind:            DATA
50         Name:            weak_defined_data
51         Flags:           [ BINDING_WEAK ]
52         Segment:         0
53         Size:            3
54       - Index:           1
55         Kind:            FUNCTION
56         Name:            weak_defined_func
57         Flags:           [ BINDING_WEAK ]
58         Function:        1
59       - Index:           2
60         Kind:            GLOBAL
61         Name:            weak_defined_global
62         Flags:           [ BINDING_WEAK ]
63         Global:          0
64       - Index:           3
65         Kind:            DATA
66         Name:            weak_import_data
67         Flags:           [ BINDING_WEAK, UNDEFINED ]
68       - Index:           4
69         Kind:            FUNCTION
70         Name:            weak_import_func
71         Flags:           [ BINDING_WEAK, UNDEFINED ]
72         Function:        0
73    SegmentInfo:
74      - Index:           0
75        Name:            .rodata.constantData
76        Alignment:       1
77        Flags:           [  ]
78
79
80# CHECK:      00000000 W weak_defined_data
81# CHECK-NEXT: 00000001 W weak_defined_func
82# CHECK-NEXT: 00000000 W weak_defined_global
83# CHECK-NEXT:          w weak_import_data
84# CHECK-NEXT:          w weak_import_func
85