x86-64 large data sections updated

H. J. Lu hjl@lucon.org
Wed Jun 15 13:44:00 GMT 2005


On Wed, Jun 15, 2005 at 06:15:46AM -0700, H. J. Lu wrote:
> 
> I am not sure if any existing ELF target handles the processor
> specific common SHN_XXX correctly. You may need some new infrastructure
> to support it properly. I will see if I can do something about it.
> 
Take m32r for example,

bash-3.00$ cat x.s
        .scomm foo,4,4
bash-3.00$ ./as-new -o x.o x.s
bash-3.00$ ../binutils/readelf -s x.o

Symbol table '.symtab' contains 6 entries:
   Num:    Value  Size Type    Bind   Vis      Ndx Name
     0: 00000000     0 NOTYPE  LOCAL  DEFAULT  UND
     1: 00000000     0 SECTION LOCAL  DEFAULT    1
     2: 00000000     0 SECTION LOCAL  DEFAULT    2
     3: 00000000     0 SECTION LOCAL  DEFAULT    3
     4: 00000000     0 SECTION LOCAL  DEFAULT    4
     5: 00000002     4 NOTYPE  GLOBAL DEFAULT PRC[0xff00] foo
bash-3.00$ ../ld/ld-new -r x.o
bash-3.00$ ../binutils/readelf -s a.out

Symbol table '.symtab' contains 9 entries:
   Num:    Value  Size Type    Bind   Vis      Ndx Name
     0: 00000000     0 NOTYPE  LOCAL  DEFAULT  UND
     1: 00000000     0 SECTION LOCAL  DEFAULT    1
     2: 00000000     0 SECTION LOCAL  DEFAULT    2
     3: 00000000     0 SECTION LOCAL  DEFAULT    3
     4: 00000000     0 SECTION LOCAL  DEFAULT    4
     5: 00000000     0 SECTION LOCAL  DEFAULT    5
     6: 00000000     0 SECTION LOCAL  DEFAULT    6
     7: 00000000     0 SECTION LOCAL  DEFAULT    7
     8: 00000001     4 NOTYPE  GLOBAL DEFAULT  COM foo

A symbol in SHN_M32R_SCOMMON winds up in SHN_COMMON. We need to provide
a way to support processor/OS specific common indices.


H.J.



More information about the Binutils mailing list