Re: [RFC] minimal symbols on mips-irix and overlapping CUs...

David Anderson
2003-11-23T20:00:56Z

Joel writes:
|> > - For MIPS there's this PDR section and it appears to have the function
|> > start as well.
|>
|> I don't believe that the IRIX tools generate .pdr. I might be mistaken
|> about that, though.
|
|I confirm. I checked in a few executables, and couldn't find any section
|named .pdr.

Quite right. In IRIX pdr is an area in the o32 mdebug
(third-eye) debug information, not an elf section.

What 'PDR section' above might have referred to:
The Elf section.
.rtproc
is generated in o32 ELF to handle run-time stack walkback, as
in C++ or Ada exceptions. In header files the struct is RPDR
defined in IRIX '/usr/include/sym.h'.
A run-time pdr, slightly different from an mdebug pdr.
It is accessed like a variable via the data items
_procedure_table, and _procedure_table_size not thru section
headers (as a runtime feature) (_procedure_table,
procedure_table_size are per shared-library/executable, not
global). The data did not exist unless you asked for it, as in
CC -32 -exceptions, for example.

For o32 we also have (but I am having trouble remembering)
in /usr/include/sys/elf.h
#define MIPS_PDR_EXCEPTION ".MIPS.pdr_exception"
which I cannot at the moment recall how to generate. If anyone cares
let me know and I'll find out.

Regards,
David B. Anderson davea@sgi.com http://reality.sgiweb.org/davea