brintos

brintos / llvm-project-archived public Read only

0
0
Text · 9.1 KiB · b2e9a4d Raw
256 lines · plain
1## Check how we print relocations.2 3# RUN: llvm-readobj -r %p/Inputs/trivial.obj.macho-i386 \4# RUN:   | FileCheck %s --check-prefix MACHO-I3865# RUN: llvm-readobj -r %p/Inputs/trivial.obj.macho-x86-64 \6# RUN:   | FileCheck %s --check-prefix MACHO-X86-647# RUN: llvm-readobj -r --expand-relocs %p/Inputs/trivial.obj.macho-ppc \8# RUN:   | FileCheck %s --check-prefix MACHO-PPC9# RUN: llvm-readobj -r --expand-relocs %p/Inputs/trivial.obj.macho-ppc64 \10# RUN:   | FileCheck %s --check-prefix MACHO-PPC6411# RUN: llvm-readobj -r --expand-relocs %p/Inputs/trivial.obj.macho-arm \12# RUN:   | FileCheck %s --check-prefix MACHO-ARM13 14# MACHO-I386:      Relocations [15# MACHO-I386-NEXT:   Section __text {16# MACHO-I386-NEXT:     0x18 1 2 1 GENERIC_RELOC_VANILLA 0 _SomeOtherFunction17# MACHO-I386-NEXT:     0x13 1 2 1 GENERIC_RELOC_VANILLA 0 _puts18# MACHO-I386-NEXT:     0xB 0 2 n/a GENERIC_RELOC_LOCAL_SECTDIFF 1 0x2219# MACHO-I386-NEXT:     0x0 0 2 n/a GENERIC_RELOC_PAIR 1 0x820# MACHO-I386-NEXT:   }21# MACHO-I386-NEXT: ]22 23# MACHO-X86-64: Relocations [24# MACHO-X86-64-NEXT:  Section __text {25# MACHO-X86-64-NEXT:    0xE 1 2 1 X86_64_RELOC_BRANCH 0 _SomeOtherFunction26# MACHO-X86-64-NEXT:    0x9 1 2 1 X86_64_RELOC_BRANCH 0 _puts27# MACHO-X86-64-NEXT:    0x4 1 2 1 X86_64_RELOC_SIGNED 0 L_.str28# MACHO-X86-64-NEXT:  }29# MACHO-X86-64-NEXT:]30 31# MACHO-PPC: Relocations [32# MACHO-PPC-NEXT:   Section __text {33# MACHO-PPC-NEXT:     Relocation {34# MACHO-PPC-NEXT:       Offset: 0x2435# MACHO-PPC-NEXT:       PCRel: 036# MACHO-PPC-NEXT:       Length: 237# MACHO-PPC-NEXT:       Type: PPC_RELOC_LO16_SECTDIFF (11)38# MACHO-PPC-NEXT:       Value: 0x6439# MACHO-PPC-NEXT:     }40# MACHO-PPC-NEXT:     Relocation {41# MACHO-PPC-NEXT:       Offset: 0x042# MACHO-PPC-NEXT:       PCRel: 043# MACHO-PPC-NEXT:       Length: 244# MACHO-PPC-NEXT:       Type: PPC_RELOC_PAIR (1)45# MACHO-PPC-NEXT:       Value: 0xC46# MACHO-PPC-NEXT:     }47# MACHO-PPC-NEXT:     Relocation {48# MACHO-PPC-NEXT:       Offset: 0x1C49# MACHO-PPC-NEXT:       PCRel: 050# MACHO-PPC-NEXT:       Length: 251# MACHO-PPC-NEXT:       Type: PPC_RELOC_HA16_SECTDIFF (12)52# MACHO-PPC-NEXT:       Value: 0x6453# MACHO-PPC-NEXT:     }54# MACHO-PPC-NEXT:     Relocation {55# MACHO-PPC-NEXT:       Offset: 0x5856# MACHO-PPC-NEXT:       PCRel: 057# MACHO-PPC-NEXT:       Length: 258# MACHO-PPC-NEXT:       Type: PPC_RELOC_PAIR (1)59# MACHO-PPC-NEXT:       Value: 0xC60# MACHO-PPC-NEXT:     }61# MACHO-PPC-NEXT:     Relocation {62# MACHO-PPC-NEXT:       Offset: 0x1863# MACHO-PPC-NEXT:       PCRel: 164# MACHO-PPC-NEXT:       Length: 265# MACHO-PPC-NEXT:       Type: PPC_RELOC_BR24 (3)66# MACHO-PPC-NEXT:       Section: __picsymbolstub1 (2)67# MACHO-PPC-NEXT:     }68# MACHO-PPC-NEXT:   }69# MACHO-PPC-NEXT:   Section __picsymbolstub1 {70# MACHO-PPC-NEXT:     Relocation {71# MACHO-PPC-NEXT:       Offset: 0x1472# MACHO-PPC-NEXT:       PCRel: 073# MACHO-PPC-NEXT:       Length: 274# MACHO-PPC-NEXT:       Type: PPC_RELOC_LO16_SECTDIFF (11)75# MACHO-PPC-NEXT:       Value: 0x6876# MACHO-PPC-NEXT:     }77# MACHO-PPC-NEXT:     Relocation {78# MACHO-PPC-NEXT:       Offset: 0x079# MACHO-PPC-NEXT:       PCRel: 080# MACHO-PPC-NEXT:       Length: 281# MACHO-PPC-NEXT:       Type: PPC_RELOC_PAIR (1)82# MACHO-PPC-NEXT:       Value: 0x4883# MACHO-PPC-NEXT:     }84# MACHO-PPC-NEXT:     Relocation {85# MACHO-PPC-NEXT:       Offset: 0xC86# MACHO-PPC-NEXT:       PCRel: 087# MACHO-PPC-NEXT:       Length: 288# MACHO-PPC-NEXT:       Type: PPC_RELOC_HA16_SECTDIFF (12)89# MACHO-PPC-NEXT:       Value: 0x6890# MACHO-PPC-NEXT:     }91# MACHO-PPC-NEXT:     Relocation {92# MACHO-PPC-NEXT:       Offset: 0x2093# MACHO-PPC-NEXT:       PCRel: 094# MACHO-PPC-NEXT:       Length: 295# MACHO-PPC-NEXT:       Type: PPC_RELOC_PAIR (1)96# MACHO-PPC-NEXT:       Value: 0x4897# MACHO-PPC-NEXT:     }98# MACHO-PPC-NEXT:   }99# MACHO-PPC-NEXT:   Section __la_symbol_ptr {100# MACHO-PPC-NEXT:     Relocation {101# MACHO-PPC-NEXT:       Offset: 0x0102# MACHO-PPC-NEXT:       PCRel: 0103# MACHO-PPC-NEXT:       Length: 2104# MACHO-PPC-NEXT:       Type: PPC_RELOC_VANILLA (0)105# MACHO-PPC-NEXT:       Symbol: dyld_stub_binding_helper (5)106# MACHO-PPC-NEXT:     }107# MACHO-PPC-NEXT:   }108# MACHO-PPC-NEXT: ]109 110# MACHO-PPC64: Relocations [111# MACHO-PPC64-NEXT:   Section __text {112# MACHO-PPC64-NEXT:     Relocation {113# MACHO-PPC64-NEXT:       Offset: 0x24114# MACHO-PPC64-NEXT:       PCRel: 0115# MACHO-PPC64-NEXT:       Length: 2116# MACHO-PPC64-NEXT:       Type:  (14)117# MACHO-PPC64-NEXT:       Value: 0x64118# MACHO-PPC64-NEXT:     }119# MACHO-PPC64-NEXT:     Relocation {120# MACHO-PPC64-NEXT:       Offset: 0x0121# MACHO-PPC64-NEXT:       PCRel: 0122# MACHO-PPC64-NEXT:       Length: 2123# MACHO-PPC64-NEXT:       Type:  (1)124# MACHO-PPC64-NEXT:       Value: 0xC125# MACHO-PPC64-NEXT:     }126# MACHO-PPC64-NEXT:     Relocation {127# MACHO-PPC64-NEXT:       Offset: 0x1C128# MACHO-PPC64-NEXT:       PCRel: 0129# MACHO-PPC64-NEXT:       Length: 2130# MACHO-PPC64-NEXT:       Type:  (12)131# MACHO-PPC64-NEXT:       Value: 0x64132# MACHO-PPC64-NEXT:     }133# MACHO-PPC64-NEXT:     Relocation {134# MACHO-PPC64-NEXT:       Offset: 0x58135# MACHO-PPC64-NEXT:       PCRel: 0136# MACHO-PPC64-NEXT:       Length: 2137# MACHO-PPC64-NEXT:       Type:  (1)138# MACHO-PPC64-NEXT:       Value: 0xC139# MACHO-PPC64-NEXT:     }140# MACHO-PPC64-NEXT:     Relocation {141# MACHO-PPC64-NEXT:       Offset: 0x18142# MACHO-PPC64-NEXT:       PCRel: 1143# MACHO-PPC64-NEXT:       Length: 2144# MACHO-PPC64-NEXT:       Type:  (3)145# MACHO-PPC64-NEXT:       Section: __picsymbolstub1 (2)146# MACHO-PPC64-NEXT:     }147# MACHO-PPC64-NEXT:   }148# MACHO-PPC64-NEXT:   Section __picsymbolstub1 {149# MACHO-PPC64-NEXT:     Relocation {150# MACHO-PPC64-NEXT:       Offset: 0x14151# MACHO-PPC64-NEXT:       PCRel: 0152# MACHO-PPC64-NEXT:       Length: 2153# MACHO-PPC64-NEXT:       Type:  (14)154# MACHO-PPC64-NEXT:       Value: 0x6C155# MACHO-PPC64-NEXT:     }156# MACHO-PPC64-NEXT:     Relocation {157# MACHO-PPC64-NEXT:       Offset: 0x0158# MACHO-PPC64-NEXT:       PCRel: 0159# MACHO-PPC64-NEXT:       Length: 2160# MACHO-PPC64-NEXT:       Type:  (1)161# MACHO-PPC64-NEXT:       Value: 0x48162# MACHO-PPC64-NEXT:     }163# MACHO-PPC64-NEXT:     Relocation {164# MACHO-PPC64-NEXT:       Offset: 0xC165# MACHO-PPC64-NEXT:       PCRel: 0166# MACHO-PPC64-NEXT:       Length: 2167# MACHO-PPC64-NEXT:       Type:  (12)168# MACHO-PPC64-NEXT:       Value: 0x6C169# MACHO-PPC64-NEXT:     }170# MACHO-PPC64-NEXT:     Relocation {171# MACHO-PPC64-NEXT:       Offset: 0x24172# MACHO-PPC64-NEXT:       PCRel: 0173# MACHO-PPC64-NEXT:       Length: 2174# MACHO-PPC64-NEXT:       Type:  (1)175# MACHO-PPC64-NEXT:       Value: 0x48176# MACHO-PPC64-NEXT:     }177# MACHO-PPC64-NEXT:   }178# MACHO-PPC64-NEXT:   Section __la_symbol_ptr {179# MACHO-PPC64-NEXT:     Relocation {180# MACHO-PPC64-NEXT:       Offset: 0x0181# MACHO-PPC64-NEXT:       PCRel: 0182# MACHO-PPC64-NEXT:       Length: 3183# MACHO-PPC64-NEXT:       Type:  (0)184# MACHO-PPC64-NEXT:       Symbol: dyld_stub_binding_helper (5)185# MACHO-PPC64-NEXT:     }186# MACHO-PPC64-NEXT:   }187# MACHO-PPC64-NEXT: ]188 189# MACHO-ARM:       Relocations [190# MACHO-ARM-NEXT:    Section __text {191# MACHO-ARM-NEXT:      Relocation {192# MACHO-ARM-NEXT:        Offset: 0x38193# MACHO-ARM-NEXT:        PCRel: 0194# MACHO-ARM-NEXT:        Length: 2195# MACHO-ARM-NEXT:        Type: ARM_RELOC_SECTDIFF (2)196# MACHO-ARM-NEXT:        Value: 0x40197# MACHO-ARM-NEXT:      }198# MACHO-ARM-NEXT:      Relocation {199# MACHO-ARM-NEXT:        Offset: 0x0200# MACHO-ARM-NEXT:        PCRel: 0201# MACHO-ARM-NEXT:        Length: 2202# MACHO-ARM-NEXT:        Type: ARM_RELOC_PAIR (1)203# MACHO-ARM-NEXT:        Value: 0x28204# MACHO-ARM-NEXT:      }205# MACHO-ARM-NEXT:      Relocation {206# MACHO-ARM-NEXT:        Offset: 0x20207# MACHO-ARM-NEXT:        PCRel: 1208# MACHO-ARM-NEXT:        Length: 2209# MACHO-ARM-NEXT:        Type: ARM_RELOC_BR24 (5)210# MACHO-ARM-NEXT:        Symbol: _g211# MACHO-ARM-NEXT:      }212# MACHO-ARM-NEXT:      Relocation {213# MACHO-ARM-NEXT:        Offset: 0x1C214# MACHO-ARM-NEXT:        PCRel: 0215# MACHO-ARM-NEXT:        Length: 1216# MACHO-ARM-NEXT:        Type: ARM_RELOC_HALF (8)217# MACHO-ARM-NEXT:        Symbol: _g218# MACHO-ARM-NEXT:      }219# MACHO-ARM-NEXT:      Relocation {220# MACHO-ARM-NEXT:        Offset: 0x0221# MACHO-ARM-NEXT:        PCRel: 0222# MACHO-ARM-NEXT:        Length: 1223# MACHO-ARM-NEXT:        Type: ARM_RELOC_PAIR (1)224# MACHO-ARM-NEXT:        Section: -225# MACHO-ARM-NEXT:      }226# MACHO-ARM-NEXT:      Relocation {227# MACHO-ARM-NEXT:        Offset: 0x18228# MACHO-ARM-NEXT:        PCRel: 0229# MACHO-ARM-NEXT:        Length: 0230# MACHO-ARM-NEXT:        Type: ARM_RELOC_HALF (8)231# MACHO-ARM-NEXT:        Symbol: _g232# MACHO-ARM-NEXT:      }233# MACHO-ARM-NEXT:      Relocation {234# MACHO-ARM-NEXT:        Offset: 0x0235# MACHO-ARM-NEXT:        PCRel: 0236# MACHO-ARM-NEXT:        Length: 0237# MACHO-ARM-NEXT:        Type: ARM_RELOC_PAIR (1)238# MACHO-ARM-NEXT:        Section: -239# MACHO-ARM-NEXT:      }240# MACHO-ARM-NEXT:      Relocation {241# MACHO-ARM-NEXT:        Offset: 0xC242# MACHO-ARM-NEXT:        PCRel: 0243# MACHO-ARM-NEXT:        Length: 2244# MACHO-ARM-NEXT:        Type: ARM_RELOC_SECTDIFF (2)245# MACHO-ARM-NEXT:        Value: 0x44246# MACHO-ARM-NEXT:      }247# MACHO-ARM-NEXT:      Relocation {248# MACHO-ARM-NEXT:        Offset: 0x0249# MACHO-ARM-NEXT:        PCRel: 0250# MACHO-ARM-NEXT:        Length: 2251# MACHO-ARM-NEXT:        Type: ARM_RELOC_PAIR (1)252# MACHO-ARM-NEXT:        Value: 0x4253# MACHO-ARM-NEXT:      }254# MACHO-ARM-NEXT:    }255# MACHO-ARM-NEXT:  ]256