* config/tm-sysv4.h (IN_SOLIB_TRAMPOLINE): Use new in_plt_section.

This commit is contained in:
Peter Schauer 1994-04-01 08:50:42 +00:00
parent 38b9047360
commit 94a5ac73e1
1 changed files with 3 additions and 9 deletions

View File

@ -19,18 +19,12 @@ along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
/* For SVR4 shared libraries, each call to a library routine goes through
a small piece of trampoline code in the ".init" section. Although each
of these fragments is labeled with the name of the routine being called,
the gdb symbol reading code deliberately ignores them so it won't confuse
them with the real functions. It does however know about the label that
precedes all of the fragments, which is "_init". Thus when we lookup a
function that corresponds to a PC value which is in one of the trampoline
fragments, we'll appear to be in the function "_init". The following
macro will evaluate to nonzero when NAME is valid and matches "_init".
a small piece of trampoline code in the ".plt" section.
The horribly ugly wait_for_inferior() routine uses this macro to detect
when we have stepped into one of these fragments. */
#define IN_SOLIB_TRAMPOLINE(pc,name) ((name) && (STREQ ("_init", name)))
#define IN_SOLIB_TRAMPOLINE(pc, name) in_plt_section((pc), (name))
extern int in_plt_section PARAMS ((CORE_ADDR, char *));
/* It is unknown which, if any, SVR4 assemblers do not accept dollar signs
in identifiers. The default in G++ is to use dots instead, for all SVR4