* config/tm-sysv4.h (IN_SOLIB_TRAMPOLINE): Use new in_plt_section.
authorPeter Schauer <Peter.Schauer@mytum.de>
Fri, 1 Apr 1994 08:50:42 +0000 (08:50 +0000)
committerPeter Schauer <Peter.Schauer@mytum.de>
Fri, 1 Apr 1994 08:50:42 +0000 (08:50 +0000)
gdb/config/tm-sysv4.h

index 18c88efa29b93e842aabaffac523357bab0dd0b1..51c65e9d637699b58543f74576cb09e1b7ba7787 100644 (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