1 #source: startv2.s 2 #source: funref.s 3 #as: -a64 4 #ld: -melf64ppc --emit-stub-syms 5 #ld_after_inputfiles: tmpdir/funv2.so 6 #readelf: -rs --wide 7 # Check that we do the right thing with funref.s that doesn't have 8 # anything to mark it as ELFv1 or ELFv2. We should get a dynamic 9 # reloc on the function address, not have a global entry stub, and 10 # my_func should be undefined dynamic with value zero. 11 # FIXME someday: No need for a plt entry. 12 13 Relocation section .* contains 1 entries: 14 .* 15 .* R_PPC64_ADDR64 .* my_func \+ 0 16 17 Relocation section .* contains 1 entries: 18 .* 19 .* R_PPC64_JMP_SLOT .* my_func \+ 0 20 21 Symbol table '\.dynsym' contains 5 entries: 22 .* 23 0: .* 24 1: 0+00000000 0 FUNC GLOBAL DEFAULT UND my_func 25 2: 0+10010438 0 NOTYPE GLOBAL DEFAULT 12 __bss_start 26 3: 0+10010438 0 NOTYPE GLOBAL DEFAULT 11 _edata 27 4: 0+10010450 0 NOTYPE GLOBAL DEFAULT 12 _end 28 29 Symbol table '\.symtab' contains 21 entries: 30 .* 31 0: .* 32 1: 0+10000158 0 SECTION LOCAL DEFAULT 1 33 2: 0+10000170 0 SECTION LOCAL DEFAULT 2 34 3: 0+10000198 0 SECTION LOCAL DEFAULT 3 35 4: 0+10000210 0 SECTION LOCAL DEFAULT 4 36 5: 0+10000248 0 SECTION LOCAL DEFAULT 5 37 6: 0+10000260 0 SECTION LOCAL DEFAULT 6 38 7: 0+10000278 0 SECTION LOCAL DEFAULT 7 39 8: 0+100002c4 0 SECTION LOCAL DEFAULT 8 40 9: 0+100102c8 0 SECTION LOCAL DEFAULT 9 41 10: 0+10010428 0 SECTION LOCAL DEFAULT 10 42 11: 0+10010430 0 SECTION LOCAL DEFAULT 11 43 12: 0+10010438 0 SECTION LOCAL DEFAULT 12 44 13: 0+100102c8 0 OBJECT LOCAL DEFAULT 9 _DYNAMIC 45 14: 0+10000288 0 NOTYPE LOCAL DEFAULT 7 __glink_PLTresolve 46 15: 0+10010428 0 NOTYPE GLOBAL DEFAULT 10 func_tab 47 16: 0+00000000 0 FUNC GLOBAL DEFAULT UND my_func 48 17: 0+10000278 0 NOTYPE GLOBAL DEFAULT 7 _start 49 18: 0+10010438 0 NOTYPE GLOBAL DEFAULT 12 __bss_start 50 19: 0+10010438 0 NOTYPE GLOBAL DEFAULT 11 _edata 51 20: 0+10010450 0 NOTYPE GLOBAL DEFAULT 12 _end 52