* stabs.texinfo (Common Blocks): Minor cleanups.
This commit is contained in:
parent
2145a18385
commit
05238df4e2
|
@ -1,5 +1,7 @@
|
||||||
Tue Oct 12 09:11:45 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
|
Tue Oct 12 09:11:45 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
|
||||||
|
|
||||||
|
* stabs.texinfo (Common Blocks): Minor cleanups.
|
||||||
|
|
||||||
* stabs.texinfo: Update ld stabs in elf relocation to reflect the fact
|
* stabs.texinfo: Update ld stabs in elf relocation to reflect the fact
|
||||||
that Sun has backed away from the linker kludge and thus the relevant
|
that Sun has backed away from the linker kludge and thus the relevant
|
||||||
issue is changes to the SunPRO tools, not the Solaris linker.
|
issue is changes to the SunPRO tools, not the Solaris linker.
|
||||||
|
|
|
@ -858,20 +858,26 @@ I believe Fortran is the only language with this feature.
|
||||||
|
|
||||||
@findex N_BCOMM
|
@findex N_BCOMM
|
||||||
@findex N_ECOMM
|
@findex N_ECOMM
|
||||||
|
@findex C_BCOMM
|
||||||
|
@findex C_ECOMM
|
||||||
A @code{N_BCOMM} stab begins a common block and an @code{N_ECOMM} stab
|
A @code{N_BCOMM} stab begins a common block and an @code{N_ECOMM} stab
|
||||||
ends it. The only field that is significant in these two stabs is the
|
ends it. The only field that is significant in these two stabs is the
|
||||||
string, which names a normal (non-debugging) symbol that gives the
|
string, which names a normal (non-debugging) symbol that gives the
|
||||||
address of the common block.
|
address of the common block. According to IBM documentation, only the
|
||||||
|
@code{N_BCOMM} has the name of the common block (even though their
|
||||||
|
compiler actually puts it both places).
|
||||||
|
|
||||||
@findex N_ECOML
|
@findex N_ECOML
|
||||||
Each stab between the @code{N_BCOMM} and the @code{N_ECOMM} specifies a
|
@findex C_ECOML
|
||||||
member of that common block; its value is the offset within the
|
The stabs for the members of the common block are between the
|
||||||
common block of that variable. The @code{N_ECOML} stab type is
|
@code{N_BCOMM} and the @code{N_ECOMM}; the value of each stab is the
|
||||||
documented for this purpose, but Sun's Fortran compiler uses
|
offset within the common block of that variable. IBM uses the
|
||||||
@code{N_GSYM} instead. The test case I looked at had a common block
|
@code{C_ECOML} stab type, and there is a corresponding @code{N_ECOML}
|
||||||
local to a function and it used the @samp{V} symbol descriptor; I assume
|
stab type, but Sun's Fortran compiler uses @code{N_GSYM} instead. The
|
||||||
one would use @samp{S} if not local to a function (that is, if a common
|
variables within a common block use the @samp{V} symbol descriptor (I
|
||||||
block @emph{can} be anything other than local to a function).
|
believe this is true of all Fortran variables). Other stabs (at least
|
||||||
|
type declarations using @code{C_DECL}) can also be between the
|
||||||
|
@code{N_BCOMM} and the @code{N_ECOMM}.
|
||||||
|
|
||||||
@node Statics
|
@node Statics
|
||||||
@section Static Variables
|
@section Static Variables
|
||||||
|
|
Loading…
Reference in New Issue