1// RUN: llvm-mc -triple x86_64-apple-darwin10 %s -filetype=obj -o - | llvm-readobj -t | FileCheck %s 2 3 .text 4L0: 5D0: 6 .section __TEXT,__text,regular,pure_instructions 7L1: 8D1: 9 .const 10L2: 11D2: 12 .static_const 13L3: 14D3: 15 .cstring 16L4: 17D4: 18 .literal4 19L5: 20D5: 21 .literal8 22L6: 23D6: 24 .literal16 25L7: 26D7: 27 .constructor 28L8: 29D8: 30 .destructor 31L9: 32D9: 33// .symbol_stub 34//L10: 35//D10: 36// .picsymbol_stub 37//L11: 38//D11: 39 .data 40L12: 41D12: 42 .static_data 43L13: 44D13: 45// .non_lazy_symbol_pointer 46//L14: 47//D14: 48// .lazy_symbol_pointer 49//L15: 50//D15: 51 .dyld 52L16: 53D16: 54 .mod_init_func 55L17: 56D17: 57 .mod_term_func 58L18: 59D18: 60 .const_data 61L19: 62D19: 63 .objc_class 64L20: 65D20: 66 .objc_meta_class 67L21: 68D21: 69 .objc_cat_cls_meth 70L22: 71D22: 72 .objc_cat_inst_meth 73L23: 74D23: 75 .objc_protocol 76L24: 77D24: 78 .objc_string_object 79L25: 80D25: 81 .objc_cls_meth 82L26: 83D26: 84 .objc_inst_meth 85L27: 86D27: 87 .objc_cls_refs 88L28: 89D28: 90 .objc_message_refs 91L29: 92D29: 93 .objc_symbols 94L30: 95D30: 96 .objc_category 97L31: 98D31: 99 .objc_class_vars 100L32: 101D32: 102 .objc_instance_vars 103L33: 104D33: 105 .objc_module_info 106L34: 107D34: 108 .objc_class_names 109L35: 110D35: 111 .objc_meth_var_types 112L36: 113D36: 114 .objc_meth_var_names 115L37: 116D37: 117 .objc_selector_strs 118L38: 119D38: 120// .section __TEXT,__picsymbolstub4,symbol_stubs,none,16 121//L39: 122//D39: 123 124 .section foo, bar 125 .long L4 + 1 126 .long L35 + 1 127 .long L36 + 1 128 .long L37 + 1 129 .long L38 + 1 130 131// CHECK: Symbols [ 132// CHECK-NEXT: Symbol { 133// CHECK-NEXT: Name: D0 (139) 134// CHECK-NEXT: Type: Section (0xE) 135// CHECK-NEXT: Section: __text (0x1) 136// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 137// CHECK-NEXT: Flags [ (0x0) 138// CHECK-NEXT: ] 139// CHECK-NEXT: Value: 0x0 140// CHECK-NEXT: } 141// CHECK-NEXT: Symbol { 142// CHECK-NEXT: Name: D1 (128) 143// CHECK-NEXT: Type: Section (0xE) 144// CHECK-NEXT: Section: __text (0x1) 145// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 146// CHECK-NEXT: Flags [ (0x0) 147// CHECK-NEXT: ] 148// CHECK-NEXT: Value: 0x0 149// CHECK-NEXT: } 150// CHECK-NEXT: Symbol { 151// CHECK-NEXT: Name: D2 (113) 152// CHECK-NEXT: Type: Section (0xE) 153// CHECK-NEXT: Section: __const (0x2) 154// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 155// CHECK-NEXT: Flags [ (0x0) 156// CHECK-NEXT: ] 157// CHECK-NEXT: Value: 0x0 158// CHECK-NEXT: } 159// CHECK-NEXT: Symbol { 160// CHECK-NEXT: Name: D3 (98) 161// CHECK-NEXT: Type: Section (0xE) 162// CHECK-NEXT: Section: __static_const (0x3) 163// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 164// CHECK-NEXT: Flags [ (0x0) 165// CHECK-NEXT: ] 166// CHECK-NEXT: Value: 0x0 167// CHECK-NEXT: } 168// CHECK-NEXT: Symbol { 169// CHECK-NEXT: Name: L4 (84) 170// CHECK-NEXT: Type: Section (0xE) 171// CHECK-NEXT: Section: __cstring (0x4) 172// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 173// CHECK-NEXT: Flags [ (0x0) 174// CHECK-NEXT: ] 175// CHECK-NEXT: Value: 0x0 176// CHECK-NEXT: } 177// CHECK-NEXT: Symbol { 178// CHECK-NEXT: Name: D4 (87) 179// CHECK-NEXT: Type: Section (0xE) 180// CHECK-NEXT: Section: __cstring (0x4) 181// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 182// CHECK-NEXT: Flags [ (0x0) 183// CHECK-NEXT: ] 184// CHECK-NEXT: Value: 0x0 185// CHECK-NEXT: } 186// CHECK-NEXT: Symbol { 187// CHECK-NEXT: Name: D5 (69) 188// CHECK-NEXT: Type: Section (0xE) 189// CHECK-NEXT: Section: __literal4 (0x5) 190// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 191// CHECK-NEXT: Flags [ (0x0) 192// CHECK-NEXT: ] 193// CHECK-NEXT: Value: 0x0 194// CHECK-NEXT: } 195// CHECK-NEXT: Symbol { 196// CHECK-NEXT: Name: D6 (50) 197// CHECK-NEXT: Type: Section (0xE) 198// CHECK-NEXT: Section: __literal8 (0x6) 199// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 200// CHECK-NEXT: Flags [ (0x0) 201// CHECK-NEXT: ] 202// CHECK-NEXT: Value: 0x0 203// CHECK-NEXT: } 204// CHECK-NEXT: Symbol { 205// CHECK-NEXT: Name: D7 (31) 206// CHECK-NEXT: Type: Section (0xE) 207// CHECK-NEXT: Section: __literal16 (0x7) 208// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 209// CHECK-NEXT: Flags [ (0x0) 210// CHECK-NEXT: ] 211// CHECK-NEXT: Value: 0x0 212// CHECK-NEXT: } 213// CHECK-NEXT: Symbol { 214// CHECK-NEXT: Name: D8 (12) 215// CHECK-NEXT: Type: Section (0xE) 216// CHECK-NEXT: Section: __constructor (0x8) 217// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 218// CHECK-NEXT: Flags [ (0x0) 219// CHECK-NEXT: ] 220// CHECK-NEXT: Value: 0x0 221// CHECK-NEXT: } 222// CHECK-NEXT: Symbol { 223// CHECK-NEXT: Name: D9 (1) 224// CHECK-NEXT: Type: Section (0xE) 225// CHECK-NEXT: Section: __destructor (0x9) 226// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 227// CHECK-NEXT: Flags [ (0x0) 228// CHECK-NEXT: ] 229// CHECK-NEXT: Value: 0x0 230// CHECK-NEXT: } 231// CHECK-NEXT: Symbol { 232// CHECK-NEXT: Name: D12 (124) 233// CHECK-NEXT: Type: Section (0xE) 234// CHECK-NEXT: Section: __data (0xA) 235// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 236// CHECK-NEXT: Flags [ (0x0) 237// CHECK-NEXT: ] 238// CHECK-NEXT: Value: 0x0 239// CHECK-NEXT: } 240// CHECK-NEXT: Symbol { 241// CHECK-NEXT: Name: D13 (109) 242// CHECK-NEXT: Type: Section (0xE) 243// CHECK-NEXT: Section: __static_data (0xB) 244// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 245// CHECK-NEXT: Flags [ (0x0) 246// CHECK-NEXT: ] 247// CHECK-NEXT: Value: 0x0 248// CHECK-NEXT: } 249// CHECK-NEXT: Symbol { 250// CHECK-NEXT: Name: D16 (65) 251// CHECK-NEXT: Type: Section (0xE) 252// CHECK-NEXT: Section: __dyld (0xC) 253// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 254// CHECK-NEXT: Flags [ (0x0) 255// CHECK-NEXT: ] 256// CHECK-NEXT: Value: 0x0 257// CHECK-NEXT: } 258// CHECK-NEXT: Symbol { 259// CHECK-NEXT: Name: D17 (46) 260// CHECK-NEXT: Type: Section (0xE) 261// CHECK-NEXT: Section: __mod_init_func (0xD) 262// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 263// CHECK-NEXT: Flags [ (0x0) 264// CHECK-NEXT: ] 265// CHECK-NEXT: Value: 0x0 266// CHECK-NEXT: } 267// CHECK-NEXT: Symbol { 268// CHECK-NEXT: Name: D18 (27) 269// CHECK-NEXT: Type: Section (0xE) 270// CHECK-NEXT: Section: __mod_term_func (0xE) 271// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 272// CHECK-NEXT: Flags [ (0x0) 273// CHECK-NEXT: ] 274// CHECK-NEXT: Value: 0x0 275// CHECK-NEXT: } 276// CHECK-NEXT: Symbol { 277// CHECK-NEXT: Name: D19 (8) 278// CHECK-NEXT: Type: Section (0xE) 279// CHECK-NEXT: Section: __const (0xF) 280// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 281// CHECK-NEXT: Flags [ (0x0) 282// CHECK-NEXT: ] 283// CHECK-NEXT: Value: 0x0 284// CHECK-NEXT: } 285// CHECK-NEXT: Symbol { 286// CHECK-NEXT: Name: D20 (146) 287// CHECK-NEXT: Type: Section (0xE) 288// CHECK-NEXT: Section: __class (0x10) 289// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 290// CHECK-NEXT: Flags [ (0x0) 291// CHECK-NEXT: ] 292// CHECK-NEXT: Value: 0x0 293// CHECK-NEXT: } 294// CHECK-NEXT: Symbol { 295// CHECK-NEXT: Name: D21 (135) 296// CHECK-NEXT: Type: Section (0xE) 297// CHECK-NEXT: Section: __meta_class (0x11) 298// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 299// CHECK-NEXT: Flags [ (0x0) 300// CHECK-NEXT: ] 301// CHECK-NEXT: Value: 0x0 302// CHECK-NEXT: } 303// CHECK-NEXT: Symbol { 304// CHECK-NEXT: Name: D22 (120) 305// CHECK-NEXT: Type: Section (0xE) 306// CHECK-NEXT: Section: __cat_cls_meth (0x12) 307// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 308// CHECK-NEXT: Flags [ (0x0) 309// CHECK-NEXT: ] 310// CHECK-NEXT: Value: 0x0 311// CHECK-NEXT: } 312// CHECK-NEXT: Symbol { 313// CHECK-NEXT: Name: D23 (105) 314// CHECK-NEXT: Type: Section (0xE) 315// CHECK-NEXT: Section: __cat_inst_meth (0x13) 316// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 317// CHECK-NEXT: Flags [ (0x0) 318// CHECK-NEXT: ] 319// CHECK-NEXT: Value: 0x0 320// CHECK-NEXT: } 321// CHECK-NEXT: Symbol { 322// CHECK-NEXT: Name: D24 (94) 323// CHECK-NEXT: Type: Section (0xE) 324// CHECK-NEXT: Section: __protocol (0x14) 325// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 326// CHECK-NEXT: Flags [ (0x0) 327// CHECK-NEXT: ] 328// CHECK-NEXT: Value: 0x0 329// CHECK-NEXT: } 330// CHECK-NEXT: Symbol { 331// CHECK-NEXT: Name: D25 (80) 332// CHECK-NEXT: Type: Section (0xE) 333// CHECK-NEXT: Section: __string_object (0x15) 334// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 335// CHECK-NEXT: Flags [ (0x0) 336// CHECK-NEXT: ] 337// CHECK-NEXT: Value: 0x0 338// CHECK-NEXT: } 339// CHECK-NEXT: Symbol { 340// CHECK-NEXT: Name: D26 (61) 341// CHECK-NEXT: Type: Section (0xE) 342// CHECK-NEXT: Section: __cls_meth (0x16) 343// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 344// CHECK-NEXT: Flags [ (0x0) 345// CHECK-NEXT: ] 346// CHECK-NEXT: Value: 0x0 347// CHECK-NEXT: } 348// CHECK-NEXT: Symbol { 349// CHECK-NEXT: Name: D27 (42) 350// CHECK-NEXT: Type: Section (0xE) 351// CHECK-NEXT: Section: __inst_meth (0x17) 352// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 353// CHECK-NEXT: Flags [ (0x0) 354// CHECK-NEXT: ] 355// CHECK-NEXT: Value: 0x0 356// CHECK-NEXT: } 357// CHECK-NEXT: Symbol { 358// CHECK-NEXT: Name: D28 (23) 359// CHECK-NEXT: Type: Section (0xE) 360// CHECK-NEXT: Section: __cls_refs (0x18) 361// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 362// CHECK-NEXT: Flags [ (0x0) 363// CHECK-NEXT: ] 364// CHECK-NEXT: Value: 0x0 365// CHECK-NEXT: } 366// CHECK-NEXT: Symbol { 367// CHECK-NEXT: Name: D29 (4) 368// CHECK-NEXT: Type: Section (0xE) 369// CHECK-NEXT: Section: __message_refs (0x19) 370// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 371// CHECK-NEXT: Flags [ (0x0) 372// CHECK-NEXT: ] 373// CHECK-NEXT: Value: 0x0 374// CHECK-NEXT: } 375// CHECK-NEXT: Symbol { 376// CHECK-NEXT: Name: D30 (142) 377// CHECK-NEXT: Type: Section (0xE) 378// CHECK-NEXT: Section: __symbols (0x1A) 379// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 380// CHECK-NEXT: Flags [ (0x0) 381// CHECK-NEXT: ] 382// CHECK-NEXT: Value: 0x0 383// CHECK-NEXT: } 384// CHECK-NEXT: Symbol { 385// CHECK-NEXT: Name: D31 (131) 386// CHECK-NEXT: Type: Section (0xE) 387// CHECK-NEXT: Section: __category (0x1B) 388// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 389// CHECK-NEXT: Flags [ (0x0) 390// CHECK-NEXT: ] 391// CHECK-NEXT: Value: 0x0 392// CHECK-NEXT: } 393// CHECK-NEXT: Symbol { 394// CHECK-NEXT: Name: D32 (116) 395// CHECK-NEXT: Type: Section (0xE) 396// CHECK-NEXT: Section: __class_vars (0x1C) 397// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 398// CHECK-NEXT: Flags [ (0x0) 399// CHECK-NEXT: ] 400// CHECK-NEXT: Value: 0x0 401// CHECK-NEXT: } 402// CHECK-NEXT: Symbol { 403// CHECK-NEXT: Name: D33 (101) 404// CHECK-NEXT: Type: Section (0xE) 405// CHECK-NEXT: Section: __instance_vars (0x1D) 406// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 407// CHECK-NEXT: Flags [ (0x0) 408// CHECK-NEXT: ] 409// CHECK-NEXT: Value: 0x0 410// CHECK-NEXT: } 411// CHECK-NEXT: Symbol { 412// CHECK-NEXT: Name: D34 (90) 413// CHECK-NEXT: Type: Section (0xE) 414// CHECK-NEXT: Section: __module_info (0x1E) 415// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 416// CHECK-NEXT: Flags [ (0x0) 417// CHECK-NEXT: ] 418// CHECK-NEXT: Value: 0x0 419// CHECK-NEXT: } 420// CHECK-NEXT: Symbol { 421// CHECK-NEXT: Name: L35 (72) 422// CHECK-NEXT: Type: Section (0xE) 423// CHECK-NEXT: Section: __cstring (0x4) 424// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 425// CHECK-NEXT: Flags [ (0x0) 426// CHECK-NEXT: ] 427// CHECK-NEXT: Value: 0x0 428// CHECK-NEXT: } 429// CHECK-NEXT: Symbol { 430// CHECK-NEXT: Name: D35 (76) 431// CHECK-NEXT: Type: Section (0xE) 432// CHECK-NEXT: Section: __cstring (0x4) 433// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 434// CHECK-NEXT: Flags [ (0x0) 435// CHECK-NEXT: ] 436// CHECK-NEXT: Value: 0x0 437// CHECK-NEXT: } 438// CHECK-NEXT: Symbol { 439// CHECK-NEXT: Name: L36 (53) 440// CHECK-NEXT: Type: Section (0xE) 441// CHECK-NEXT: Section: __cstring (0x4) 442// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 443// CHECK-NEXT: Flags [ (0x0) 444// CHECK-NEXT: ] 445// CHECK-NEXT: Value: 0x0 446// CHECK-NEXT: } 447// CHECK-NEXT: Symbol { 448// CHECK-NEXT: Name: D36 (57) 449// CHECK-NEXT: Type: Section (0xE) 450// CHECK-NEXT: Section: __cstring (0x4) 451// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 452// CHECK-NEXT: Flags [ (0x0) 453// CHECK-NEXT: ] 454// CHECK-NEXT: Value: 0x0 455// CHECK-NEXT: } 456// CHECK-NEXT: Symbol { 457// CHECK-NEXT: Name: L37 (34) 458// CHECK-NEXT: Type: Section (0xE) 459// CHECK-NEXT: Section: __cstring (0x4) 460// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 461// CHECK-NEXT: Flags [ (0x0) 462// CHECK-NEXT: ] 463// CHECK-NEXT: Value: 0x0 464// CHECK-NEXT: } 465// CHECK-NEXT: Symbol { 466// CHECK-NEXT: Name: D37 (38) 467// CHECK-NEXT: Type: Section (0xE) 468// CHECK-NEXT: Section: __cstring (0x4) 469// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 470// CHECK-NEXT: Flags [ (0x0) 471// CHECK-NEXT: ] 472// CHECK-NEXT: Value: 0x0 473// CHECK-NEXT: } 474// CHECK-NEXT: Symbol { 475// CHECK-NEXT: Name: L38 (15) 476// CHECK-NEXT: Type: Section (0xE) 477// CHECK-NEXT: Section: __selector_strs (0x1F) 478// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 479// CHECK-NEXT: Flags [ (0x0) 480// CHECK-NEXT: ] 481// CHECK-NEXT: Value: 0x0 482// CHECK-NEXT: } 483// CHECK-NEXT: Symbol { 484// CHECK-NEXT: Name: D38 (19) 485// CHECK-NEXT: Type: Section (0xE) 486// CHECK-NEXT: Section: __selector_strs (0x1F) 487// CHECK-NEXT: RefType: UndefinedNonLazy (0x0) 488// CHECK-NEXT: Flags [ (0x0) 489// CHECK-NEXT: ] 490// CHECK-NEXT: Value: 0x0 491// CHECK-NEXT: } 492// CHECK-NEXT: ] 493