www.delorie.com/gnu/docs/gdb/stabs_51.html   search  
 
Buy the book!


STABS

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

6.2.3 Transformations of Stabs in separate sections

For object file formats using stabs in separate sections (see section F. Using Stabs in Their Own Sections), use objdump --stabs instead of nm to show the stabs in an object or executable file. objdump is a GNU utility; Sun does not provide any equivalent.

The following example is for a stab whose value is an address is relative to the compilation unit (see section F.2 Having the Linker Relocate Stabs in ELF). For example, if the source line

 
static int ld = 5;

appears within a function, then the assembly language output from the compiler contains:

 
.Ddata.data:
...
        .stabs "ld:V(0,3)",0x26,0,4,.L18-Ddata.data    # 0x26 is N_STSYM
...
.L18:
        .align 4
        .word 0x5

Because the value is formed by subtracting one symbol from another, the value is absolute, not relocatable, and so the object file contains

 
Symnum n_type n_othr n_desc n_value  n_strx String
31     STSYM  0      4      00000004 680    ld:V(0,3)

without any relocations, and the executable file also contains

 
Symnum n_type n_othr n_desc n_value  n_strx String
31     STSYM  0      4      00000004 680    ld:V(0,3)


  webmaster     delorie software   privacy  
  Copyright 2003   by The Free Software Foundation     Updated Jun 2003