brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · 6b03f2e Raw
67 lines · plain
1# REQUIRES: x86-registered-target2 3## Show that llvm-objcopy copies the indirect symbol table properly.4# RUN: llvm-mc -assemble -triple x86_64-apple-darwin9 -filetype=obj %s -o %t5# RUN: llvm-objcopy %t %t.copy6# RUN: llvm-readobj --symbols --macho-indirect-symbols %t.copy \7# RUN:   | FileCheck %s8 9# __DATA,__nl_symbol_ptr10.non_lazy_symbol_pointer11bar:12        .long 013baz:14        .long 015 16.indirect_symbol bar17 18# __DATA,__la_symbol_ptr19.lazy_symbol_pointer20foo:21        .long 022 23.indirect_symbol foo24 25# CHECK:      Symbols [26# CHECK-NEXT:   Symbol {27# CHECK-NEXT:     Name: bar (5)28# CHECK-NEXT:     Type: Section (0xE)29# CHECK-NEXT:     Section: __nl_symbol_ptr (0x2)30# CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)31# CHECK-NEXT:     Flags [ (0x0)32# CHECK-NEXT:     ]33# CHECK-NEXT:     Value: 0x034# CHECK-NEXT:   }35# CHECK-NEXT:   Symbol {36# CHECK-NEXT:     Name: baz (1)37# CHECK-NEXT:     Type: Section (0xE)38# CHECK-NEXT:     Section: __nl_symbol_ptr (0x2)39# CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)40# CHECK-NEXT:     Flags [ (0x0)41# CHECK-NEXT:     ]42# CHECK-NEXT:     Value: 0x443# CHECK-NEXT:   }44# CHECK-NEXT:   Symbol {45# CHECK-NEXT:     Name: foo (9)46# CHECK-NEXT:     Type: Section (0xE)47# CHECK-NEXT:     Section: __la_symbol_ptr (0x3)48# CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)49# CHECK-NEXT:     Flags [ (0x0)50# CHECK-NEXT:     ]51# CHECK-NEXT:     Value: 0x852# CHECK-NEXT:   }53# CHECK-NEXT: ]54# CHECK-NEXT: Indirect Symbols {55# CHECK-NEXT:   Number: 256# CHECK-NEXT:   Symbols [57# CHECK-NEXT:     Entry {58# CHECK-NEXT:       Entry Index: 059# CHECK-NEXT:       Symbol Index: 0x8000000060# CHECK-NEXT:     }61# CHECK-NEXT:     Entry {62# CHECK-NEXT:       Entry Index: 163# CHECK-NEXT:       Symbol Index: 0x264# CHECK-NEXT:     }65# CHECK-NEXT:   ]66# CHECK-NEXT: }67