* stabs.texinfo (Parameters): Add "(sometimes)" when describing

gcc2 behavior with promoted args.
This commit is contained in:
Jim Kingdon
1993-05-18 23:01:58 +00:00
parent 31d16514c8
commit 23aed4497c
2 changed files with 15 additions and 10 deletions

View File

@ -1,3 +1,8 @@
Tue May 18 17:59:18 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
* stabs.texinfo (Parameters): Add "(sometimes)" when describing
gcc2 behavior with promoted args.
Fri May 14 21:35:29 1993 Roland H. Pesch (pesch@fowanton.cygnus.com) Fri May 14 21:35:29 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
* gdb.texinfo: include readline appendices in info version of manual * gdb.texinfo: include readline appendices in info version of manual

View File

@ -1099,7 +1099,7 @@ handle either one. Symbol type @samp{C_RPSYM} is used with @samp{R} and
AIX, according to the documentation, uses @samp{D} for a parameter AIX, according to the documentation, uses @samp{D} for a parameter
passed in a floating point register. This strikes me as incredibly passed in a floating point register. This strikes me as incredibly
bogus---why doesn't it just use @samp{R} with a register number which bogus---why doesn't it just use @samp{R} with a register number which
indicates that it's a floating point register. I haven't verified indicates that it's a floating point register? I haven't verified
whether the system actually does what the documentation indicates. whether the system actually does what the documentation indicates.
There is at least one case where GCC uses a @samp{p}/@samp{r} pair There is at least one case where GCC uses a @samp{p}/@samp{r} pair
@ -1127,15 +1127,15 @@ stores it as a local variable. If possible, the compiler should claim
that it's in a register, but this isn't always done. Some compilers use that it's in a register, but this isn't always done. Some compilers use
the pair of symbols approach described above ("arg:p" followed by the pair of symbols approach described above ("arg:p" followed by
"arg:"); this includes gcc1 (not gcc2) on the sparc when passing a small "arg:"); this includes gcc1 (not gcc2) on the sparc when passing a small
structure and gcc2 when the argument type is float and it is passed as a structure and gcc2 (sometimes) when the argument type is float and it is
double and converted to float by the prologue (in the latter case the passed as a double and converted to float by the prologue (in the latter
type of the "arg:p" symbol is double and the type of the "arg:" symbol case the type of the "arg:p" symbol is double and the type of the "arg:"
is float). GCC, at least on the 960, uses a single @samp{p} symbol symbol is float). GCC, at least on the 960, uses a single @samp{p}
descriptor for an argument which is stored as a local variable but uses symbol descriptor for an argument which is stored as a local variable
@samp{N_LSYM} instead of @samp{N_PSYM}. In this case the value of the but uses @samp{N_LSYM} instead of @samp{N_PSYM}. In this case the value
symbol is an offset relative to the local variables for that function, of the symbol is an offset relative to the local variables for that
not relative to the arguments (on some machines those are the same function, not relative to the arguments (on some machines those are the
thing, but not on all). same thing, but not on all).
If the parameter is passed by reference (e.g. Pascal VAR parameters), If the parameter is passed by reference (e.g. Pascal VAR parameters),
then type symbol descriptor is @samp{v} if it is in the argument list, then type symbol descriptor is @samp{v} if it is in the argument list,