* solib.c (solib_add): New argument is the target_ops whose
authorJohn Gilmore <gnu@cygnus>
Wed, 14 Aug 1991 00:02:26 +0000 (00:02 +0000)
committerJohn Gilmore <gnu@cygnus>
Wed, 14 Aug 1991 00:02:26 +0000 (00:02 +0000)
        section list is to be added to, if any.  Reallocate the
        sections in that target to add any that come from shared libs.
        (throughout) so_sections renamed to sections.
        (solib_xfer_memory):  Deleted.
        * tm-sunos.h (SOLIB_ADD):  Add target argument.
        (SOLIB_XFER_MEMORY):  Delete.

        * xm-sun3os4.h, xm-sun4os4.h:  Define BROKEN_LARGE_ALLOCA,
        and add comment explaining shared library screw.

gdb/tm-sunos.h
gdb/xm-sun3os4.h
gdb/xm-sun4os4.h

index c9aae94cee175d4ff4d8a43db1f176ca8706c52b..43657d2bcd8add46a91ef8b93b6246ed1a05389e 100644 (file)
@@ -19,13 +19,11 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 /* This is for SunOS version 4, not for earlier versions.  */
 
 #define CLEAR_SOLIB clear_solib
-#define SOLIB_ADD(filename, from_tty) solib_add (filename, from_tty)
-#define SOLIB_XFER_MEMORY(memaddr, myaddr, len, write) solib_xfer_memory (memaddr, myaddr, len, write)
+#define SOLIB_ADD(filename, from_tty, targ) solib_add (filename, from_tty, targ)
 
 /* If we can't set a breakpoint, and it's in a shared library, just
    disable it.  */
 #define DISABLE_UNSETTABLE_BREAK(addr) solib_address(addr)
 extern int solib_address ();                   /* solib.c */
-extern int solib_xfer_memory ();
 extern void solib_add ();
 extern void clear_solib ();
index 82fd4675c1016a212d262b92043378b12acc4dec..d7d1c958d0405b2cfa60e3c31c288a25cf64a174 100644 (file)
@@ -20,9 +20,9 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 #include "xm-sun3.h"
 #define FPU
 
-/* There is a bug which can cause alloca to fail to allocate large
-   areas of memory one time in every 4096 (we think).  */
-/* chase@orc.olivetti.com says that 4 megabyte alloca's consistently fail,
-   even though the stack limit (SET_STACK_LIMIT_HUGE) has been set
-   to 250 megabytes.  */
+/* Large alloca's fail because the attempt to increase the stack limit in
+   main() fails because shared libraries are allocated just below the initial
+   stack limit.  The SunOS kernel will not allow the stack to grow into
+   the area occupied by the shared libraries.  Sun knows about this bug
+   but has no obvious fix for it.  */
 #define BROKEN_LARGE_ALLOCA
index c9034c4ac98fc7c29d48b9fa7c0b4555e56e5ae9..75f103750792bb0d1c63eee42f5b55796c9b84ef 100644 (file)
@@ -18,5 +18,11 @@ along with this program; if not, write to the Free Software
 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
 #include "xm-sparc.h"
-
 #define FPU
+
+/* Large alloca's fail because the attempt to increase the stack limit in
+   main() fails because shared libraries are allocated just below the initial
+   stack limit.  The SunOS kernel will not allow the stack to grow into
+   the area occupied by the shared libraries.  Sun knows about this bug
+   but has no obvious fix for it.  */
+#define BROKEN_LARGE_ALLOCA