495 lines · yaml
1# RUN: yaml2obj %s -o %t2# RUN: llvm-objdump --macho --reloc %t | FileCheck %s --check-prefix=OBJDUMP-VERIFY3 4# OBJDUMP-VERIFY: Relocation information (__TEXT,__text) 2 entries5# OBJDUMP-VERIFY-NEXT: address pcrel length extern type scattered symbolnum/value6# OBJDUMP-VERIFY-NEXT: 00000015 True long True SIGNED False _w7# OBJDUMP-VERIFY-NEXT: 0000000e True long True SIGNED False _z8# OBJDUMP-VERIFY-NEXT: Relocation information (__TEXT,__StaticInit) 4 entries9# OBJDUMP-VERIFY-NEXT: address pcrel length extern type scattered symbolnum/value10# OBJDUMP-VERIFY-NEXT: 00000025 True long True BRANCH False ___cxx_global_var_init11# OBJDUMP-VERIFY-NEXT: 00000018 True long True SIGNED False _w12# OBJDUMP-VERIFY-NEXT: 0000000e True long True SIGNED False _x13# OBJDUMP-VERIFY-NEXT: 00000007 True long True SIGNED False _y14# OBJDUMP-VERIFY-NEXT: Relocation information (__DATA,__data) 1 entries15# OBJDUMP-VERIFY-NEXT: address pcrel length extern type scattered symbolnum/value16# OBJDUMP-VERIFY-NEXT: 00000008 False quad True UNSIGND False _x17# OBJDUMP-VERIFY-NEXT: Relocation information (__DATA,__mod_init_func) 1 entries18# OBJDUMP-VERIFY-NEXT: address pcrel length extern type scattered symbolnum/value19# OBJDUMP-VERIFY-NEXT: 00000000 False quad True UNSIGND False __GLOBAL__sub_I_main.cpp20# OBJDUMP-VERIFY-NEXT: Relocation information (__LD,__compact_unwind) 3 entries21# OBJDUMP-VERIFY-NEXT: address pcrel length extern type scattered symbolnum/value22# OBJDUMP-VERIFY-NEXT: 00000040 False quad False UNSIGND False 2 (__TEXT,__StaticInit)23# OBJDUMP-VERIFY-NEXT: 00000020 False quad False UNSIGND False 1 (__TEXT,__text)24# OBJDUMP-VERIFY-NEXT: 00000000 False quad False UNSIGND False 2 (__TEXT,__StaticInit)25 26# RUN: obj2yaml %t | FileCheck %s 27# CHECK: Sections:28# CHECK-NEXT: - sectname: __text29# CHECK-NEXT: segname: __TEXT30# CHECK-NEXT: addr: 0x031# CHECK-NEXT: size: 2732# CHECK-NEXT: offset: 0x31033# CHECK-NEXT: align: 434# CHECK-NEXT: reloff: 0x46835# CHECK-NEXT: nreloc: 236# CHECK-NEXT: flags: 0x8000040037# CHECK-NEXT: reserved1: 0x038# CHECK-NEXT: reserved2: 0x039# CHECK-NEXT: reserved3: 0x040# CHECK-NEXT: content: 41# CHECK-NEXT: relocations:42# CHECK-NEXT: - address: 0x1543# CHECK-NEXT: symbolnum: 344# CHECK-NEXT: pcrel: true45# CHECK-NEXT: length: 246# CHECK-NEXT: extern: true47# CHECK-NEXT: type: 148# CHECK-NEXT: scattered: false49# CHECK-NEXT: value: 050# CHECK-NEXT: - address: 0xE51# CHECK-NEXT: symbolnum: 652# CHECK-NEXT: pcrel: true53# CHECK-NEXT: length: 254# CHECK-NEXT: extern: true55# CHECK-NEXT: type: 156# CHECK-NEXT: scattered: false57# CHECK-NEXT: value: 058# CHECK-NEXT: - sectname: __StaticInit59# CHECK-NEXT: segname: __TEXT60# CHECK-NEXT: addr: 0x2061# CHECK-NEXT: size: 4362# CHECK-NEXT: offset: 0x33063# CHECK-NEXT: align: 464# CHECK-NEXT: reloff: 0x47865# CHECK-NEXT: nreloc: 466# CHECK-NEXT: flags: 0x8000040067# CHECK-NEXT: reserved1: 0x068# CHECK-NEXT: reserved2: 0x069# CHECK-NEXT: reserved3: 0x070# CHECK-NEXT: content:71# CHECK-NEXT: relocations:72# CHECK-NEXT: - address: 0x2573# CHECK-NEXT: symbolnum: 074# CHECK-NEXT: pcrel: true75# CHECK-NEXT: length: 276# CHECK-NEXT: extern: true77# CHECK-NEXT: type: 278# CHECK-NEXT: scattered: false79# CHECK-NEXT: value: 080# CHECK-NEXT: - address: 0x1881# CHECK-NEXT: symbolnum: 382# CHECK-NEXT: pcrel: true83# CHECK-NEXT: length: 284# CHECK-NEXT: extern: true85# CHECK-NEXT: type: 186# CHECK-NEXT: scattered: false87# CHECK-NEXT: value: 088# CHECK-NEXT: - address: 0xE89# CHECK-NEXT: symbolnum: 490# CHECK-NEXT: pcrel: true91# CHECK-NEXT: length: 292# CHECK-NEXT: extern: true93# CHECK-NEXT: type: 194# CHECK-NEXT: scattered: false95# CHECK-NEXT: value: 096# CHECK-NEXT: - address: 0x797# CHECK-NEXT: symbolnum: 598# CHECK-NEXT: pcrel: true99# CHECK-NEXT: length: 2100# CHECK-NEXT: extern: true101# CHECK-NEXT: type: 1102# CHECK-NEXT: scattered: false103# CHECK-NEXT: value: 0104# CHECK-NEXT: - sectname: __data105# CHECK-NEXT: segname: __DATA106# CHECK-NEXT: addr: 0x50107# CHECK-NEXT: size: 16108# CHECK-NEXT: offset: 0x360109# CHECK-NEXT: align: 3110# CHECK-NEXT: reloff: 0x498111# CHECK-NEXT: nreloc: 1112# CHECK-NEXT: flags: 0x0113# CHECK-NEXT: reserved1: 0x0114# CHECK-NEXT: reserved2: 0x0115# CHECK-NEXT: reserved3: 0x0116# CHECK-NEXT: content: '01000000020000000000000000000000'117# CHECK-NEXT: relocations:118# CHECK-NEXT: - address: 0x8119# CHECK-NEXT: symbolnum: 4120# CHECK-NEXT: pcrel: false121# CHECK-NEXT: length: 3122# CHECK-NEXT: extern: true123# CHECK-NEXT: type: 0124# CHECK-NEXT: scattered: false125# CHECK-NEXT: value: 0126# CHECK-NEXT: - sectname: __common127# CHECK-NEXT: segname: __DATA128# CHECK-NEXT: addr: 0x158129# CHECK-NEXT: size: 8130# CHECK-NEXT: offset: 0x0131# CHECK-NEXT: align: 3132# CHECK-NEXT: reloff: 0x0133# CHECK-NEXT: nreloc: 0134# CHECK-NEXT: flags: 0x1135# CHECK-NEXT: reserved1: 0x0136# CHECK-NEXT: reserved2: 0x0137# CHECK-NEXT: reserved3: 0x0138# CHECK-NEXT: - sectname: __mod_init_func139# CHECK-NEXT: segname: __DATA140# CHECK-NEXT: addr: 0x60141# CHECK-NEXT: size: 8142# CHECK-NEXT: offset: 0x370143# CHECK-NEXT: align: 3144# CHECK-NEXT: reloff: 0x4A0145# CHECK-NEXT: nreloc: 1146# CHECK-NEXT: flags: 0x9147# CHECK-NEXT: reserved1: 0x0148# CHECK-NEXT: reserved2: 0x0149# CHECK-NEXT: reserved3: 0x0150# CHECK-NEXT: content: 151# CHECK-NEXT: relocations:152# CHECK-NEXT: - address: 0x0153# CHECK-NEXT: symbolnum: 1154# CHECK-NEXT: pcrel: false155# CHECK-NEXT: length: 3156# CHECK-NEXT: extern: true157# CHECK-NEXT: type: 0158# CHECK-NEXT: scattered: false159# CHECK-NEXT: value: 0160# CHECK-NEXT: - sectname: __compact_unwind161# CHECK-NEXT: segname: __LD162# CHECK-NEXT: addr: 0x68163# CHECK-NEXT: size: 96164# CHECK-NEXT: offset: 0x378165# CHECK-NEXT: align: 3166# CHECK-NEXT: reloff: 0x4A8167# CHECK-NEXT: nreloc: 3168# CHECK-NEXT: flags: 0x2000000169# CHECK-NEXT: reserved1: 0x0170# CHECK-NEXT: reserved2: 0x0171# CHECK-NEXT: reserved3: 0x0172# CHECK-NEXT: content:173# CHECK-NEXT: relocations:174# CHECK-NEXT: - address: 0x40175# CHECK-NEXT: symbolnum: 2176# CHECK-NEXT: pcrel: false177# CHECK-NEXT: length: 3178# CHECK-NEXT: extern: false179# CHECK-NEXT: type: 0180# CHECK-NEXT: scattered: false181# CHECK-NEXT: value: 0182# CHECK-NEXT: - address: 0x20183# CHECK-NEXT: symbolnum: 1184# CHECK-NEXT: pcrel: false185# CHECK-NEXT: length: 3186# CHECK-NEXT: extern: false187# CHECK-NEXT: type: 0188# CHECK-NEXT: scattered: false189# CHECK-NEXT: value: 0190# CHECK-NEXT: - address: 0x0191# CHECK-NEXT: symbolnum: 2192# CHECK-NEXT: pcrel: false193# CHECK-NEXT: length: 3194# CHECK-NEXT: extern: false195# CHECK-NEXT: type: 0196# CHECK-NEXT: scattered: false197# CHECK-NEXT: value: 0198# CHECK-NEXT: - sectname: __eh_frame199# CHECK-NEXT: segname: __TEXT200# CHECK-NEXT: addr: 0xC8201# CHECK-NEXT: size: 144202# CHECK-NEXT: offset: 0x3D8203# CHECK-NEXT: align: 3204# CHECK-NEXT: reloff: 0x0205# CHECK-NEXT: nreloc: 0206# CHECK-NEXT: flags: 0x6800000B207# CHECK-NEXT: reserved1: 0x0208# CHECK-NEXT: reserved2: 0x0209# CHECK-NEXT: reserved3: 0x0210 211--- !mach-o212FileHeader:213 magic: 0xFEEDFACF214 cputype: 0x01000007215 cpusubtype: 0x00000003216 filetype: 0x00000001217 ncmds: 4218 sizeofcmds: 752219 flags: 0x00002000220 reserved: 0x00000000221LoadCommands:222 - cmd: LC_SEGMENT_64223 cmdsize: 632224 segname: ''225 vmaddr: 0226 vmsize: 352227 fileoff: 784228 filesize: 344229 maxprot: 7230 initprot: 7231 nsects: 7232 flags: 0233 Sections:234 - sectname: __text235 segname: __TEXT236 addr: 0x0000000000000000237 size: 27238 offset: 0x00000310239 align: 4240 reloff: 0x00000468241 nreloc: 2242 flags: 0x80000400243 reserved1: 0x00000000244 reserved2: 0x00000000245 reserved3: 0x00000000246 content: 554889E5C745FC00000000488B0500000000480305000000005DC3247 relocations:248 - address: 0x00000015249 symbolnum: 3250 pcrel: true251 length: 2252 extern: true253 type: 1254 scattered: false255 value: 0256 - address: 0x0000000E257 symbolnum: 6258 pcrel: true259 length: 2260 extern: true261 type: 1262 scattered: false263 value: 0264 - sectname: __StaticInit265 segname: __TEXT266 addr: 0x0000000000000020267 size: 43268 offset: 0x00000330269 align: 4270 reloff: 0x00000478271 nreloc: 4272 flags: 0x80000400273 reserved1: 0x00000000274 reserved2: 0x00000000275 reserved3: 0x00000000276 content: 554889E5488D0500000000488D0D000000004829C148890D000000005DC36690554889E5E8000000005DC3277 relocations:278 - address: 0x00000025279 symbolnum: 0280 pcrel: true281 length: 2282 extern: true283 type: 2284 scattered: false285 value: 0286 - address: 0x00000018287 symbolnum: 3288 pcrel: true289 length: 2290 extern: true291 type: 1292 scattered: false293 value: 0294 - address: 0x0000000E295 symbolnum: 4296 pcrel: true297 length: 2298 extern: true299 type: 1300 scattered: false301 value: 0302 - address: 0x00000007303 symbolnum: 5304 pcrel: true305 length: 2306 extern: true307 type: 1308 scattered: false309 value: 0310 - sectname: __data311 segname: __DATA312 addr: 0x0000000000000050313 size: 16314 offset: 0x00000360315 align: 3316 reloff: 0x00000498317 nreloc: 1318 flags: 0x00000000319 reserved1: 0x00000000320 reserved2: 0x00000000321 reserved3: 0x00000000322 content: '01000000020000000000000000000000'323 relocations:324 - address: 0x00000008325 symbolnum: 4326 pcrel: false327 length: 3328 extern: true329 type: 0330 scattered: false331 value: 0332 - sectname: __common333 segname: __DATA334 addr: 0x0000000000000158335 size: 8336 offset: 0x00000000337 align: 3338 reloff: 0x00000000339 nreloc: 0340 flags: 0x00000001341 reserved1: 0x00000000342 reserved2: 0x00000000343 reserved3: 0x00000000344 - sectname: __mod_init_func345 segname: __DATA346 addr: 0x0000000000000060347 size: 8348 offset: 0x00000370349 align: 3350 reloff: 0x000004A0351 nreloc: 1352 flags: 0x00000009353 reserved1: 0x00000000354 reserved2: 0x00000000355 reserved3: 0x00000000356 content: '0000000000000000'357 relocations:358 - address: 0x00000000359 symbolnum: 1360 pcrel: false361 length: 3362 extern: true363 type: 0364 scattered: false365 value: 0366 - sectname: __compact_unwind367 segname: __LD368 addr: 0x0000000000000068369 size: 96370 offset: 0x00000378371 align: 3372 reloff: 0x000004A8373 nreloc: 3374 flags: 0x02000000375 reserved1: 0x00000000376 reserved2: 0x00000000377 reserved3: 0x00000000378 content: 20000000000000001E000000000000010000000000000000000000000000000000000000000000001B000000000000010000000000000000000000000000000040000000000000000B0000000000000100000000000000000000000000000000379 relocations:380 - address: 0x00000040381 symbolnum: 2382 pcrel: false383 length: 3384 extern: false385 type: 0386 scattered: false387 value: 0388 - address: 0x00000020389 symbolnum: 1390 pcrel: false391 length: 3392 extern: false393 type: 0394 scattered: false395 value: 0396 - address: 0x00000000397 symbolnum: 2398 pcrel: false399 length: 3400 extern: false401 type: 0402 scattered: false403 value: 0404 - sectname: __eh_frame405 segname: __TEXT406 addr: 0x00000000000000C8407 size: 144408 offset: 0x000003D8409 align: 3410 reloff: 0x00000000411 nreloc: 0412 flags: 0x6800000B413 reserved1: 0x00000000414 reserved2: 0x00000000415 reserved3: 0x00000000416 content: 1400000000000000017A520001781001100C070890010000240000001C00000038FFFFFFFFFFFFFF1E0000000000000000410E108602430D06000000000000002400000044000000F0FEFFFFFFFFFFFF1B0000000000000000410E108602430D0600000000000000240000006C00000008FFFFFFFFFFFFFF0B0000000000000000410E108602430D0600000000000000417 - cmd: LC_VERSION_MIN_MACOSX418 cmdsize: 16419 version: 658944420 sdk: 0421 - cmd: LC_SYMTAB422 cmdsize: 24423 symoff: 1216424 nsyms: 7425 stroff: 1328426 strsize: 68427 - cmd: LC_DYSYMTAB428 cmdsize: 80429 ilocalsym: 0430 nlocalsym: 2431 iextdefsym: 2432 nextdefsym: 5433 iundefsym: 7434 nundefsym: 0435 tocoff: 0436 ntoc: 0437 modtaboff: 0438 nmodtab: 0439 extrefsymoff: 0440 nextrefsyms: 0441 indirectsymoff: 0442 nindirectsyms: 0443 extreloff: 0444 nextrel: 0445 locreloff: 0446 nlocrel: 0447LinkEditData:448 NameList:449 - n_strx: 13450 n_type: 0x0E451 n_sect: 2452 n_desc: 0453 n_value: 32454 - n_strx: 36455 n_type: 0x0E456 n_sect: 2457 n_desc: 0458 n_value: 64459 - n_strx: 61460 n_type: 0x0F461 n_sect: 1462 n_desc: 0463 n_value: 0464 - n_strx: 10465 n_type: 0x0F466 n_sect: 4467 n_desc: 0468 n_value: 344469 - n_strx: 7470 n_type: 0x0F471 n_sect: 3472 n_desc: 0473 n_value: 80474 - n_strx: 4475 n_type: 0x0F476 n_sect: 3477 n_desc: 0478 n_value: 84479 - n_strx: 1480 n_type: 0x0F481 n_sect: 3482 n_desc: 0483 n_value: 88484 StringTable:485 - ''486 - _z487 - _y488 - _x489 - _w490 - ___cxx_global_var_init491 - __GLOBAL__sub_I_main.cpp492 - _main493 - ''494...495