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