[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gcl-devel] PLT problem on Sparc
From: |
Jerry James |
Subject: |
Re: [Gcl-devel] PLT problem on Sparc |
Date: |
Fri, 19 Jun 2009 11:20:55 -0600 |
On Fri, Jun 19, 2009 at 11:10 AM, Camm Maguire<address@hidden> wrote:
> Greetings! Could you please post the results of
>
> nm o/plttest.o
>
> and the result of configure's test for leading underscores in object
> symbols?
>
> Apparently, nm is giving output akin to " U _ " or some such.
>
> Take care,
Thanks to Dennis Gilmore, I already have part of the information you
requested. Here is the output of nm:
address@hidden gcl-2.6.8]$ nm o/plttest.o
U
U
U _IO_getc
U _IO_putc
U __isoc99_sscanf
U _mcount
U _setjmp
U acos
U acosh
U asin
U asinh
U atan
U atanh
U cos
U cosh
U exp
U fdopen
U feof
U log
0000000000000000 T main
U memset
U read
U sin
U sincos
U sinh
U sqrt
U tan
U tanh
U write
When I saw that, I wondered how there could be 2 symbols with no
names. So I asked Dennis to try objdump and readelf as well. Here is
the output from those two tools:
address@hidden gcl-2.6.8]$ objdump -t o/plttest.o
o/plttest.o: file format elf64-sparc
SYMBOL TABLE:
0000000000000000 l df *ABS* 0000000000000000 plttest.c
0000000000000000 l d .text 0000000000000000 .text
0000000000000000 l d .data 0000000000000000 .data
0000000000000000 l d .bss 0000000000000000 .bss
0000000000000000 l d .debug_abbrev 0000000000000000 .debug_abbrev
0000000000000000 l d .debug_info 0000000000000000 .debug_info
0000000000000000 l d .debug_line 0000000000000000 .debug_line
0000000000000000 l d .rodata.str1.8 0000000000000000 .rodata.str1.8
0000000000000000 l d .debug_loc 0000000000000000 .debug_loc
0000000000000000 l d .debug_pubnames 0000000000000000
.debug_pubnames
0000000000000000 l d .debug_aranges 0000000000000000 .debug_aranges
0000000000000000 l d .debug_ranges 0000000000000000 .debug_ranges
0000000000000000 l d .debug_str 0000000000000000 .debug_str
0000000000000000 l d .note.GNU-stack 0000000000000000 .note.GNU-
stack
0000000000000000 l d .eh_frame 0000000000000000 .eh_frame
0000000000000000 l d .comment 0000000000000000 .comment
0000000000000000 g F .text 0000000000000264 main
REG_G2 g R *UND* 0000000000000000 #scratch
REG_G3 g R *UND* 0000000000000000 #scratch
0000000000000000 *UND* 0000000000000000 __isoc99_sscanf
0000000000000000 *UND* 0000000000000000 memset
0000000000000000 *UND* 0000000000000000 _IO_getc
0000000000000000 *UND* 0000000000000000 _IO_putc
0000000000000000 *UND* 0000000000000000 feof
0000000000000000 *UND* 0000000000000000 fdopen
0000000000000000 *UND* 0000000000000000 read
0000000000000000 *UND* 0000000000000000 write
0000000000000000 *UND* 0000000000000000 _mcount
0000000000000000 *UND* 0000000000000000 _setjmp
0000000000000000 *UND* 0000000000000000 cos
0000000000000000 *UND* 0000000000000000 sin
0000000000000000 *UND* 0000000000000000 sincos
0000000000000000 *UND* 0000000000000000 tan
0000000000000000 *UND* 0000000000000000 acos
0000000000000000 *UND* 0000000000000000 asin
0000000000000000 *UND* 0000000000000000 atan
0000000000000000 *UND* 0000000000000000 cosh
0000000000000000 *UND* 0000000000000000 sinh
0000000000000000 *UND* 0000000000000000 tanh
0000000000000000 *UND* 0000000000000000 acosh
0000000000000000 *UND* 0000000000000000 asinh
0000000000000000 *UND* 0000000000000000 atanh
0000000000000000 *UND* 0000000000000000 exp
0000000000000000 *UND* 0000000000000000 log
0000000000000000 *UND* 0000000000000000 sqrt
address@hidden gcl-2.6.8]$ readelf -s o/plttest.o
Symbol table '.symtab' contains 46 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
1: 0000000000000000 0 FILE LOCAL DEFAULT ABS plttest.c
2: 0000000000000000 0 SECTION LOCAL DEFAULT 1
3: 0000000000000000 0 SECTION LOCAL DEFAULT 3
4: 0000000000000000 0 SECTION LOCAL DEFAULT 4
5: 0000000000000000 0 SECTION LOCAL DEFAULT 5
6: 0000000000000000 0 SECTION LOCAL DEFAULT 6
7: 0000000000000000 0 SECTION LOCAL DEFAULT 8
8: 0000000000000000 0 SECTION LOCAL DEFAULT 10
9: 0000000000000000 0 SECTION LOCAL DEFAULT 11
10: 0000000000000000 0 SECTION LOCAL DEFAULT 12
11: 0000000000000000 0 SECTION LOCAL DEFAULT 14
12: 0000000000000000 0 SECTION LOCAL DEFAULT 16
13: 0000000000000000 0 SECTION LOCAL DEFAULT 17
14: 0000000000000000 0 SECTION LOCAL DEFAULT 19
15: 0000000000000000 0 SECTION LOCAL DEFAULT 20
16: 0000000000000000 0 SECTION LOCAL DEFAULT 18
17: 0000000000000000 612 FUNC GLOBAL DEFAULT 1 main
18: 0000000000000002 0 REGISTER GLOBAL DEFAULT UND
19: 0000000000000003 0 REGISTER GLOBAL DEFAULT UND
20: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND __isoc99_sscanf
21: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND memset
22: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND _IO_getc
23: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND _IO_putc
24: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND feof
25: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND fdopen
26: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND read
27: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND write
28: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND _mcount
29: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND _setjmp
30: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND cos
31: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND sin
32: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND sincos
33: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND tan
34: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND acos
35: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND asin
36: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND atan
37: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND cosh
38: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND sinh
39: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND tanh
40: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND acosh
41: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND asinh
42: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND atanh
43: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND exp
44: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND log
45: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND sqrt
So it looks like the culprits are the two REGISTER entries for REG_G2
and REG_G3.
--
Jerry James
http://www.jamezone.org/