* solib.c (solib_add): New argument is the target_ops whose

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.
This commit is contained in:
John Gilmore
1991-08-14 00:02:26 +00:00
parent c561ca5dfb
commit 5ac449d90c
3 changed files with 13 additions and 9 deletions

View 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 ();

View 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

View 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