1*9880d681SAndroid Build Coastguard Worker// RUN: llvm-mc -triple i386-apple-darwin10 %s -filetype=obj -o %t.o 2*9880d681SAndroid Build Coastguard Worker// RUN: llvm-readobj -file-headers -s -sd -r -t -macho-segment -macho-dysymtab -macho-indirect-symbols < %t.o > %t.dump 3*9880d681SAndroid Build Coastguard Worker// RUN: FileCheck --check-prefix=CHECK-I386 < %t.dump %s 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Worker// RUN: llvm-mc -triple x86_64-apple-darwin10 %s -filetype=obj -o %t.o 6*9880d681SAndroid Build Coastguard Worker// RUN: llvm-readobj -file-headers -s -sd -r -t -macho-segment -macho-dysymtab -macho-indirect-symbols < %t.o > %t.dump 7*9880d681SAndroid Build Coastguard Worker// RUN: FileCheck --check-prefix=CHECK-X86_64 < %t.dump %s 8*9880d681SAndroid Build Coastguard Worker 9*9880d681SAndroid Build Coastguard Worker.data 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Worker .long 0 12*9880d681SAndroid Build Coastguard Workera: 13*9880d681SAndroid Build Coastguard Worker .long 0 14*9880d681SAndroid Build Coastguard Workerb = a 15*9880d681SAndroid Build Coastguard Worker 16*9880d681SAndroid Build Coastguard Workerc: .long b 17*9880d681SAndroid Build Coastguard Worker 18*9880d681SAndroid Build Coastguard Workerd2 = d 19*9880d681SAndroid Build Coastguard Worker.globl d2 20*9880d681SAndroid Build Coastguard Workerd3 = d + 4 21*9880d681SAndroid Build Coastguard Worker.globl d3 22*9880d681SAndroid Build Coastguard Worker 23*9880d681SAndroid Build Coastguard Workere = a + 4 24*9880d681SAndroid Build Coastguard Worker 25*9880d681SAndroid Build Coastguard Workerg: 26*9880d681SAndroid Build Coastguard Workerf = g 27*9880d681SAndroid Build Coastguard Worker .long 0 28*9880d681SAndroid Build Coastguard Worker 29*9880d681SAndroid Build Coastguard Worker .long b 30*9880d681SAndroid Build Coastguard Worker .long e 31*9880d681SAndroid Build Coastguard Worker .long a + 4 32*9880d681SAndroid Build Coastguard Worker .long d 33*9880d681SAndroid Build Coastguard Worker .long d2 34*9880d681SAndroid Build Coastguard Worker .long d3 35*9880d681SAndroid Build Coastguard Worker .long f 36*9880d681SAndroid Build Coastguard Worker .long g 37*9880d681SAndroid Build Coastguard Worker 38*9880d681SAndroid Build Coastguard Worker/// 39*9880d681SAndroid Build Coastguard Worker .text 40*9880d681SAndroid Build Coastguard Workert0: 41*9880d681SAndroid Build Coastguard WorkerLt0_a: 42*9880d681SAndroid Build Coastguard Worker ret 43*9880d681SAndroid Build Coastguard Worker 44*9880d681SAndroid Build Coastguard Worker .data 45*9880d681SAndroid Build Coastguard WorkerLt0_b: 46*9880d681SAndroid Build Coastguard WorkerLt0_x = Lt0_a - Lt0_b 47*9880d681SAndroid Build Coastguard Worker .quad Lt0_x 48*9880d681SAndroid Build Coastguard Worker 49*9880d681SAndroid Build Coastguard Worker// CHECK-I386: File: <stdin> 50*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Format: Mach-O 32-bit i386 51*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Arch: i386 52*9880d681SAndroid Build Coastguard Worker// CHECK-I386: AddressSize: 32bit 53*9880d681SAndroid Build Coastguard Worker// CHECK-I386: MachHeader { 54*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Magic: Magic (0xFEEDFACE) 55*9880d681SAndroid Build Coastguard Worker// CHECK-I386: CpuType: X86 (0x7) 56*9880d681SAndroid Build Coastguard Worker// CHECK-I386: CpuSubType: CPU_SUBTYPE_I386_ALL (0x3) 57*9880d681SAndroid Build Coastguard Worker// CHECK-I386: FileType: Relocatable (0x1) 58*9880d681SAndroid Build Coastguard Worker// CHECK-I386: NumOfLoadCommands: 4 59*9880d681SAndroid Build Coastguard Worker// CHECK-I386: SizeOfLoadCommands: 312 60*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Flags [ (0x0) 61*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 62*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 63*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Sections [ 64*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section { 65*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Index: 0 66*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: __text (5F 5F 74 65 78 74 00 00 00 00 00 00 00 00 00 00) 67*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00) 68*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Address: 0x0 69*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Size: 0x1 70*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Offset: 340 71*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Alignment: 0 72*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RelocationOffset: 0x0 73*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RelocationCount: 0 74*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: 0x0 75*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Attributes [ (0x800004) 76*9880d681SAndroid Build Coastguard Worker// CHECK-I386: PureInstructions (0x800000) 77*9880d681SAndroid Build Coastguard Worker// CHECK-I386: SomeInstructions (0x4) 78*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 79*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Reserved1: 0x0 80*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Reserved2: 0x0 81*9880d681SAndroid Build Coastguard Worker// CHECK-I386: SectionData ( 82*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0000: C3 |.| 83*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ) 84*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 85*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section { 86*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Index: 1 87*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: __data (5F 5F 64 61 74 61 00 00 00 00 00 00 00 00 00 00) 88*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00) 89*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Address: 0x1 90*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Size: 0x38 91*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Offset: 341 92*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Alignment: 0 93*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RelocationOffset: 0x190 94*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RelocationCount: 9 95*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: 0x0 96*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Attributes [ (0x0) 97*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 98*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Reserved1: 0x0 99*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Reserved2: 0x0 100*9880d681SAndroid Build Coastguard Worker// CHECK-I386: SectionData ( 101*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0000: 00000000 00000000 05000000 00000000 |................| 102*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0010: 05000000 09000000 09000000 00000000 |................| 103*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0020: 00000000 00000000 0D000000 0D000000 |................| 104*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0030: CFFFFFFF FFFFFFFF |........| 105*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ) 106*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 107*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 108*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Relocations [ 109*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section __data { 110*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0x2C 0 2 0 GENERIC_RELOC_VANILLA 0 __data 111*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0x28 0 2 0 GENERIC_RELOC_VANILLA 0 __data 112*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0x24 0 2 1 GENERIC_RELOC_VANILLA 0 d3 113*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0x20 0 2 1 GENERIC_RELOC_VANILLA 0 d2 114*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0x1C 0 2 1 GENERIC_RELOC_VANILLA 0 d 115*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0x18 0 2 n/a GENERIC_RELOC_VANILLA 1 0x5 116*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0x14 0 2 0 GENERIC_RELOC_VANILLA 0 __data 117*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0x10 0 2 0 GENERIC_RELOC_VANILLA 0 __data 118*9880d681SAndroid Build Coastguard Worker// CHECK-I386: 0x8 0 2 0 GENERIC_RELOC_VANILLA 0 __data 119*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 120*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 121*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbols [ 122*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbol { 123*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: a (13) 124*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: Section (0xE) 125*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section: __data (0x2) 126*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RefType: UndefinedNonLazy (0x0) 127*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Flags [ (0x0) 128*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 129*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Value: 0x5 130*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 131*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbol { 132*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: b (11) 133*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: Section (0xE) 134*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section: __data (0x2) 135*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RefType: UndefinedNonLazy (0x0) 136*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Flags [ (0x0) 137*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 138*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Value: 0x5 139*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 140*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbol { 141*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: c (9) 142*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: Section (0xE) 143*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section: __data (0x2) 144*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RefType: UndefinedNonLazy (0x0) 145*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Flags [ (0x0) 146*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 147*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Value: 0x9 148*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 149*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbol { 150*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: e (5) 151*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: Section (0xE) 152*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section: __data (0x2) 153*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RefType: UndefinedNonLazy (0x0) 154*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Flags [ (0x200) 155*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 156*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Value: 0x9 157*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 158*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbol { 159*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: g (1) 160*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: Section (0xE) 161*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section: __data (0x2) 162*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RefType: UndefinedNonLazy (0x0) 163*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Flags [ (0x0) 164*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 165*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Value: 0xD 166*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 167*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbol { 168*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: f (3) 169*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: Section (0xE) 170*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section: __data (0x2) 171*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RefType: UndefinedNonLazy (0x0) 172*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Flags [ (0x0) 173*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 174*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Value: 0xD 175*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 176*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbol { 177*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: t0 (21) 178*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: Section (0xE) 179*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section: __text (0x1) 180*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RefType: UndefinedNonLazy (0x0) 181*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Flags [ (0x0) 182*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 183*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Value: 0x0 184*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 185*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbol { 186*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: d (7) 187*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Extern 188*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: Undef (0x0) 189*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section: (0x0) 190*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RefType: UndefinedNonLazy (0x0) 191*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Flags [ (0x0) 192*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 193*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Value: 0x0 194*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 195*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbol { 196*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: d2 (18) 197*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Extern 198*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: Indirect (0xA) 199*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section: (0x0) 200*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RefType: UndefinedNonLazy (0x0) 201*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Flags [ (0x0) 202*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 203*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Value: 0x7 204*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 205*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbol { 206*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: d3 (15) 207*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Extern 208*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Type: Undef (0x0) 209*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Section: (0x0) 210*9880d681SAndroid Build Coastguard Worker// CHECK-I386: RefType: UndefinedNonLazy (0x0) 211*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Flags [ (0x200) 212*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 213*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Value: 0x0 214*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 215*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 216*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Indirect Symbols { 217*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Number: 0 218*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Symbols [ 219*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ] 220*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 221*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Segment { 222*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Cmd: LC_SEGMENT 223*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Name: 224*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Size: 192 225*9880d681SAndroid Build Coastguard Worker// CHECK-I386: vmaddr: 0x0 226*9880d681SAndroid Build Coastguard Worker// CHECK-I386: vmsize: 0x39 227*9880d681SAndroid Build Coastguard Worker// CHECK-I386: fileoff: 340 228*9880d681SAndroid Build Coastguard Worker// CHECK-I386: filesize: 57 229*9880d681SAndroid Build Coastguard Worker// CHECK-I386: maxprot: rwx 230*9880d681SAndroid Build Coastguard Worker// CHECK-I386: initprot: rwx 231*9880d681SAndroid Build Coastguard Worker// CHECK-I386: nsects: 2 232*9880d681SAndroid Build Coastguard Worker// CHECK-I386: flags: 0x0 233*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 234*9880d681SAndroid Build Coastguard Worker// CHECK-I386: Dysymtab { 235*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ilocalsym: 0 236*9880d681SAndroid Build Coastguard Worker// CHECK-I386: nlocalsym: 7 237*9880d681SAndroid Build Coastguard Worker// CHECK-I386: iextdefsym: 7 238*9880d681SAndroid Build Coastguard Worker// CHECK-I386: nextdefsym: 0 239*9880d681SAndroid Build Coastguard Worker// CHECK-I386: iundefsym: 7 240*9880d681SAndroid Build Coastguard Worker// CHECK-I386: nundefsym: 3 241*9880d681SAndroid Build Coastguard Worker// CHECK-I386: tocoff: 0 242*9880d681SAndroid Build Coastguard Worker// CHECK-I386: ntoc: 0 243*9880d681SAndroid Build Coastguard Worker// CHECK-I386: modtaboff: 0 244*9880d681SAndroid Build Coastguard Worker// CHECK-I386: nmodtab: 0 245*9880d681SAndroid Build Coastguard Worker// CHECK-I386: extrefsymoff: 0 246*9880d681SAndroid Build Coastguard Worker// CHECK-I386: nextrefsyms: 0 247*9880d681SAndroid Build Coastguard Worker// CHECK-I386: indirectsymoff: 0 248*9880d681SAndroid Build Coastguard Worker// CHECK-I386: nindirectsyms: 0 249*9880d681SAndroid Build Coastguard Worker// CHECK-I386: extreloff: 0 250*9880d681SAndroid Build Coastguard Worker// CHECK-I386: nextrel: 0 251*9880d681SAndroid Build Coastguard Worker// CHECK-I386: locreloff: 0 252*9880d681SAndroid Build Coastguard Worker// CHECK-I386: nlocrel: 0 253*9880d681SAndroid Build Coastguard Worker// CHECK-I386: } 254*9880d681SAndroid Build Coastguard Worker 255*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: File: <stdin> 256*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Format: Mach-O 64-bit x86-64 257*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Arch: x86_64 258*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: AddressSize: 64bit 259*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: MachHeader { 260*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Magic: Magic64 (0xFEEDFACF) 261*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: CpuType: X86-64 (0x1000007) 262*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: CpuSubType: CPU_SUBTYPE_X86_64_ALL (0x3) 263*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: FileType: Relocatable (0x1) 264*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: NumOfLoadCommands: 4 265*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: SizeOfLoadCommands: 352 266*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Flags [ (0x0) 267*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 268*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Reserved: 0x0 269*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 270*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Sections [ 271*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section { 272*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Index: 0 273*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: __text (5F 5F 74 65 78 74 00 00 00 00 00 00 00 00 00 00) 274*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00) 275*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Address: 0x0 276*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Size: 0x1 277*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Offset: 384 278*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Alignment: 0 279*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RelocationOffset: 0x0 280*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RelocationCount: 0 281*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: 0x0 282*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Attributes [ (0x800004) 283*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: PureInstructions (0x800000) 284*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: SomeInstructions (0x4) 285*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 286*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Reserved1: 0x0 287*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Reserved2: 0x0 288*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Reserved3: 0x0 289*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: SectionData ( 290*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0000: C3 |.| 291*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ) 292*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 293*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section { 294*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Index: 1 295*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: __data (5F 5F 64 61 74 61 00 00 00 00 00 00 00 00 00 00) 296*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00) 297*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Address: 0x1 298*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Size: 0x38 299*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Offset: 385 300*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Alignment: 0 301*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RelocationOffset: 0x1BC 302*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RelocationCount: 9 303*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: 0x0 304*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Attributes [ (0x0) 305*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 306*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Reserved1: 0x0 307*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Reserved2: 0x0 308*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Reserved3: 0x0 309*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: SectionData ( 310*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0000: 00000000 00000000 00000000 00000000 |................| 311*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0010: 00000000 00000000 04000000 00000000 |................| 312*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0020: 00000000 00000000 00000000 00000000 |................| 313*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0030: CFFFFFFF FFFFFFFF |........| 314*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ) 315*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 316*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 317*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Relocations [ 318*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section __data { 319*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0x2C 0 2 1 X86_64_RELOC_UNSIGNED 0 g 320*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0x28 0 2 1 X86_64_RELOC_UNSIGNED 0 f 321*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0x24 0 2 1 X86_64_RELOC_UNSIGNED 0 d3 322*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0x20 0 2 1 X86_64_RELOC_UNSIGNED 0 d2 323*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0x1C 0 2 1 X86_64_RELOC_UNSIGNED 0 d 324*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0x18 0 2 1 X86_64_RELOC_UNSIGNED 0 a 325*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0x14 0 2 1 X86_64_RELOC_UNSIGNED 0 e 326*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0x10 0 2 1 X86_64_RELOC_UNSIGNED 0 b 327*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: 0x8 0 2 1 X86_64_RELOC_UNSIGNED 0 b 328*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 329*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 330*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbols [ 331*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbol { 332*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: a (13) 333*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: Section (0xE) 334*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section: __data (0x2) 335*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RefType: UndefinedNonLazy (0x0) 336*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Flags [ (0x0) 337*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 338*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Value: 0x5 339*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 340*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbol { 341*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: b (11) 342*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: Section (0xE) 343*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section: __data (0x2) 344*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RefType: UndefinedNonLazy (0x0) 345*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Flags [ (0x0) 346*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 347*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Value: 0x5 348*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 349*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbol { 350*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: c (9) 351*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: Section (0xE) 352*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section: __data (0x2) 353*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RefType: UndefinedNonLazy (0x0) 354*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Flags [ (0x0) 355*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 356*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Value: 0x9 357*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 358*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbol { 359*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: e (5) 360*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: Section (0xE) 361*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section: __data (0x2) 362*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RefType: UndefinedNonLazy (0x0) 363*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Flags [ (0x200) 364*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 365*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Value: 0x9 366*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 367*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbol { 368*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: g (1) 369*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: Section (0xE) 370*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section: __data (0x2) 371*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RefType: UndefinedNonLazy (0x0) 372*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Flags [ (0x0) 373*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 374*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Value: 0xD 375*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 376*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbol { 377*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: f (3) 378*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: Section (0xE) 379*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section: __data (0x2) 380*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RefType: UndefinedNonLazy (0x0) 381*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Flags [ (0x0) 382*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 383*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Value: 0xD 384*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 385*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbol { 386*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: t0 (21) 387*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: Section (0xE) 388*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section: __text (0x1) 389*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RefType: UndefinedNonLazy (0x0) 390*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Flags [ (0x0) 391*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 392*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Value: 0x0 393*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 394*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbol { 395*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: d (7) 396*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Extern 397*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: Undef (0x0) 398*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section: (0x0) 399*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RefType: UndefinedNonLazy (0x0) 400*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Flags [ (0x0) 401*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 402*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Value: 0x0 403*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 404*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbol { 405*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: d2 (18) 406*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Extern 407*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: Indirect (0xA) 408*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section: (0x0) 409*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RefType: UndefinedNonLazy (0x0) 410*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Flags [ (0x0) 411*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 412*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Value: 0x7 413*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 414*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbol { 415*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: d3 (15) 416*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Extern 417*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Type: Undef (0x0) 418*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Section: (0x0) 419*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: RefType: UndefinedNonLazy (0x0) 420*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Flags [ (0x200) 421*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 422*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Value: 0x0 423*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 424*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 425*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Indirect Symbols { 426*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Number: 0 427*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Symbols [ 428*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ] 429*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 430*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Segment { 431*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Cmd: LC_SEGMENT_64 432*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Name: 433*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Size: 232 434*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: vmaddr: 0x0 435*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: vmsize: 0x39 436*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: fileoff: 384 437*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: filesize: 57 438*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: maxprot: rwx 439*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: initprot: rwx 440*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: nsects: 2 441*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: flags: 0x0 442*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 443*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: Dysymtab { 444*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ilocalsym: 0 445*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: nlocalsym: 7 446*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: iextdefsym: 7 447*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: nextdefsym: 0 448*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: iundefsym: 7 449*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: nundefsym: 3 450*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: tocoff: 0 451*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: ntoc: 0 452*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: modtaboff: 0 453*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: nmodtab: 0 454*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: extrefsymoff: 0 455*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: nextrefsyms: 0 456*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: indirectsymoff: 0 457*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: nindirectsyms: 0 458*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: extreloff: 0 459*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: nextrel: 0 460*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: locreloff: 0 461*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: nlocrel: 0 462*9880d681SAndroid Build Coastguard Worker// CHECK-X86_64: } 463