1 # RUN: llvm-mc -filetype=obj -triple x86_64-pc-win32 %s | llvm-readobj -symbols | FileCheck %s 2 3 # This assembly should make an object with two .text sections, two .xdata 4 # sections, and two .pdata sections. 5 6 .def f; 7 .scl 2; 8 .type 32; 9 .endef 10 .section .text,"xr",discard,f 11 .globl f 12 .p2align 4, 0x90 13 f: # @f 14 .Ltmp0: 15 .seh_proc f 16 # BB#0: 17 subq $40, %rsp 18 .Ltmp1: 19 .seh_stackalloc 40 20 .Ltmp2: 21 .seh_endprologue 22 callq g 23 nop 24 addq $40, %rsp 25 retq 26 .seh_handlerdata 27 .section .text,"xr",discard,f 28 .Ltmp3: 29 .seh_endproc 30 31 .def g; 32 .scl 3; 33 .type 32; 34 .endef 35 .section .text,"xr",associative,f 36 .p2align 4, 0x90 37 g: # @g 38 .Ltmp4: 39 .seh_proc g 40 # BB#0: 41 .Ltmp5: 42 .seh_endprologue 43 retq 44 .seh_handlerdata 45 .section .text,"xr",associative,f 46 .Ltmp6: 47 .seh_endproc 48 49 50 # CHECK: Symbols [ 51 # CHECK: Symbol { 52 # CHECK: Name: .text 53 # CHECK: Section: .text (4) 54 # CHECK: AuxSymbolCount: 1 55 # CHECK: AuxSectionDef { 56 # CHECK: Length: 15 57 # CHECK: RelocationCount: 1 58 # CHECK: LineNumberCount: 0 59 # CHECK: Checksum: 0xE17CBB7 60 # CHECK: Number: 4 61 # CHECK: Selection: Any (0x2) 62 # CHECK: } 63 # CHECK: } 64 # CHECK: Symbol { 65 # CHECK: Name: .xdata 66 # CHECK: Value: 0 67 # CHECK: Section: .xdata (5) 68 # CHECK: BaseType: Null (0x0) 69 # CHECK: ComplexType: Null (0x0) 70 # CHECK: StorageClass: Static (0x3) 71 # CHECK: AuxSymbolCount: 1 72 # CHECK: AuxSectionDef { 73 # CHECK: Length: 8 74 # CHECK: RelocationCount: 0 75 # CHECK: LineNumberCount: 0 76 # CHECK: Checksum: 0xFC539D1 77 # CHECK: Number: 4 78 # CHECK: Selection: Associative (0x5) 79 # CHECK: AssocSection: .text (4) 80 # CHECK: } 81 # CHECK: } 82 # CHECK: Symbol { 83 # CHECK: Name: .text 84 # CHECK: Value: 0 85 # CHECK: Section: .text (6) 86 # CHECK: BaseType: Null (0x0) 87 # CHECK: ComplexType: Null (0x0) 88 # CHECK: StorageClass: Static (0x3) 89 # CHECK: AuxSymbolCount: 1 90 # CHECK: AuxSectionDef { 91 # CHECK: Length: 1 92 # CHECK: RelocationCount: 0 93 # CHECK: LineNumberCount: 0 94 # CHECK: Checksum: 0x26D930A 95 # CHECK: Number: 4 96 # CHECK: Selection: Associative (0x5) 97 # CHECK: AssocSection: .text (4) 98 # CHECK: } 99 # CHECK: } 100 # CHECK: Symbol { 101 # CHECK: Name: .xdata 102 # CHECK: Value: 0 103 # CHECK: Section: .xdata (7) 104 # CHECK: BaseType: Null (0x0) 105 # CHECK: ComplexType: Null (0x0) 106 # CHECK: StorageClass: Static (0x3) 107 # CHECK: AuxSymbolCount: 1 108 # CHECK: AuxSectionDef { 109 # CHECK: Length: 8 110 # CHECK: RelocationCount: 0 111 # CHECK: LineNumberCount: 0 112 # CHECK: Checksum: 0xCCAA009E 113 # CHECK: Number: 4 114 # CHECK: Selection: Associative (0x5) 115 # CHECK: AssocSection: .text (4) 116 # CHECK: } 117 # CHECK: } 118 # CHECK: Symbol { 119 # CHECK: Name: .pdata 120 # CHECK: Value: 0 121 # CHECK: Section: .pdata (8) 122 # CHECK: BaseType: Null (0x0) 123 # CHECK: ComplexType: Null (0x0) 124 # CHECK: StorageClass: Static (0x3) 125 # CHECK: AuxSymbolCount: 1 126 # CHECK: AuxSectionDef { 127 # CHECK: Length: 12 128 # CHECK: RelocationCount: 3 129 # CHECK: LineNumberCount: 0 130 # CHECK: Checksum: 0xD92012AC 131 # CHECK: Number: 4 132 # CHECK: Selection: Associative (0x5) 133 # CHECK: AssocSection: .text (4) 134 # CHECK: } 135 # CHECK: } 136 # CHECK: Symbol { 137 # CHECK: Name: .pdata 138 # CHECK: Value: 0 139 # CHECK: Section: .pdata (9) 140 # CHECK: BaseType: Null (0x0) 141 # CHECK: ComplexType: Null (0x0) 142 # CHECK: StorageClass: Static (0x3) 143 # CHECK: AuxSymbolCount: 1 144 # CHECK: AuxSectionDef { 145 # CHECK: Length: 12 146 # CHECK: RelocationCount: 3 147 # CHECK: LineNumberCount: 0 148 # CHECK: Checksum: 0xCCAA009E 149 # CHECK: Number: 4 150 # CHECK: Selection: Associative (0x5) 151 # CHECK: AssocSection: .text (4) 152 # CHECK: } 153 # CHECK: } 154 # CHECK: ] 155