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 ParamTypes: 13 - I32 14 ReturnTypes: 15 - I32 16 - Type: IMPORT 17 Imports: 18 - Module: env 19 Field: weak_import_func 20 Kind: FUNCTION 21 SigIndex: 0 22 - Type: FUNCTION 23 FunctionTypes: [ 0 ] 24 - Type: GLOBAL 25 Globals: 26 - Index: 0 27 Type: I32 28 Mutable: false 29 InitExpr: 30 Opcode: I64_CONST 31 Value: 32 32 - Type: CODE 33 Functions: 34 - Index: 1 35 Locals: 36 Body: 00 37 - Type: DATA 38 Segments: 39 - SectionOffset: 6 40 InitFlags: 0 41 Offset: 42 Opcode: I32_CONST 43 Value: 0 44 Content: '616263' 45 - Type: CUSTOM 46 Name: linking 47 Version: 2 48 SymbolTable: 49 - Index: 0 50 Kind: DATA 51 Name: weak_defined_data 52 Flags: [ BINDING_WEAK ] 53 Segment: 0 54 Size: 3 55 - Index: 1 56 Kind: FUNCTION 57 Name: weak_defined_func 58 Flags: [ BINDING_WEAK ] 59 Function: 1 60 - Index: 2 61 Kind: GLOBAL 62 Name: weak_defined_global 63 Flags: [ BINDING_WEAK ] 64 Global: 0 65 - Index: 3 66 Kind: DATA 67 Name: weak_import_data 68 Flags: [ BINDING_WEAK, UNDEFINED ] 69 - Index: 4 70 Kind: FUNCTION 71 Name: weak_import_func 72 Flags: [ BINDING_WEAK, UNDEFINED ] 73 Function: 0 74 SegmentInfo: 75 - Index: 0 76 Name: .rodata.constantData 77 Alignment: 1 78 Flags: [ ] 79 80 81# CHECK: 00000000 W weak_defined_data 82# CHECK-NEXT: 00000001 W weak_defined_func 83# CHECK-NEXT: 00000000 W weak_defined_global 84# CHECK-NEXT: w weak_import_data 85# CHECK-NEXT: w weak_import_func 86