patches/glibc/2.9/510-sh-no-asm-user-header.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun May 03 09:50:16 2009 +0000 (2009-05-03)
branchnewlib
changeset 1366 5e5d1e6f55d3
permissions -rw-r--r--
Update the newlib devel branch with stuff from /trunk@1498.

-------- diffstat follows --------
/devel/newlib/configure | 336 176 160 0 +++++++------
/devel/newlib/Makefile.in | 12 3 9 0 -
/devel/newlib/scripts/build/kernel/linux.sh | 2 1 1 0
/devel/newlib/scripts/build/internals.sh | 1 0 1 0 -
/devel/newlib/scripts/build/libc/eglibc.sh | 1 0 1 0 -
/devel/newlib/scripts/build/mpfr.sh | 2 1 1 0
/devel/newlib/scripts/functions | 111 5 106 0 ----
/devel/newlib/scripts/config.guess | 7 5 2 0 +
/devel/newlib/scripts/config.sub | 3 2 1 0 +
/devel/newlib/scripts/saveSample.sh.in | 4 2 2 0
/devel/newlib/docs/overview.txt | 8 6 2 0 +
/devel/newlib/samples/armeb-unknown-linux-uclibc/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/sh4-unknown-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/x86_64-unknown-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/arm-unknown-elf/crosstool.config | 12 3 9 0 -
/devel/newlib/samples/armeb-unknown-eabi/crosstool.config | 2 0 2 0 -
/devel/newlib/samples/arm-unknown-linux-gnueabi/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/ia64-unknown-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/x86_64-unknown-linux-uclibc/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/armeb-unknown-linux-gnueabi/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/powerpc-e500v2-linux-gnuspe/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/i686-nptl-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/arm-unknown-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/powerpc-unknown-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/mips-unknown-linux-uclibc/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/arm-iphone-linux-gnueabi/crosstool.config | 8 4 4 0
/devel/newlib/samples/armeb-unknown-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/powerpc-unknown_nofpu-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/i586-geode-linux-uclibc/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/arm-unknown-linux-uclibc/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/powerpc-unknown-linux-uclibc/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/mips-unknown-elf/crosstool.config | 2 0 2 0 -
/devel/newlib/samples/powerpc-405-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/armeb-unknown-linux-uclibcgnueabi/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/arm-unknown-eabi/crosstool.config | 12 3 9 0 -
/devel/newlib/samples/mipsel-unknown-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/powerpc64-unknown-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/alphaev56-unknown-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/samples/powerpc-860-linux-gnu/crosstool.config | 14 5 9 0 -
/devel/newlib/config/kernel/linux.in | 108 2 106 0 ----
/devel/newlib/config/global/ct-behave.in | 22 13 9 0 +
/devel/newlib/config/global/download.in | 210 15 195 0 +-------
/devel/newlib/config/libc/glibc.in | 7 7 0 0 +
/devel/newlib/config/libc/glibc-eglibc.in-common | 15 14 1 0 +
45 files changed, 382 insertions(+), 839 deletions(-)
     1 2007-03-13  Mike Frysinger  <vapier@gentoo.org>
     2 
     3 	* sysdeps/unix/sysv/linux/sh/sys/user.h: Copy Linux's asm-sh/user.h.
     4 
     5 --- glibc-2_9/sysdeps/unix/sysv/linux/sh/sys/user.h
     6 +++ glibc-2_9/sysdeps/unix/sysv/linux/sh/sys/user.h
     7 @@ -19,10 +19,60 @@
     8  #ifndef _SYS_USER_H
     9  #define _SYS_USER_H	1
    10  
    11 -#include <features.h>
    12 +#include <unistd.h>
    13 +#include <asm/ptrace.h>
    14  
    15 -#include <asm/user.h>
    16 +/*
    17 + * Core file format: The core file is written in such a way that gdb
    18 + * can understand it and provide useful information to the user (under
    19 + * linux we use the `trad-core' bfd).  The file contents are as follows:
    20 + *
    21 + *  upage: 1 page consisting of a user struct that tells gdb
    22 + *	what is present in the file.  Directly after this is a
    23 + *	copy of the task_struct, which is currently not used by gdb,
    24 + *	but it may come in handy at some point.  All of the registers
    25 + *	are stored as part of the upage.  The upage should always be
    26 + *	only one page long.
    27 + *  data: The data segment follows next.  We use current->end_text to
    28 + *	current->brk to pick up all of the user variables, plus any memory
    29 + *	that may have been sbrk'ed.  No attempt is made to determine if a
    30 + *	page is demand-zero or if a page is totally unused, we just cover
    31 + *	the entire range.  All of the addresses are rounded in such a way
    32 + *	that an integral number of pages is written.
    33 + *  stack: We need the stack information in order to get a meaningful
    34 + *	backtrace.  We need to write the data from usp to
    35 + *	current->start_stack, so we round each of these in order to be able
    36 + *	to write an integer number of pages.
    37 + */
    38  
    39 -#undef start_thread
    40 +struct user_fpu_struct {
    41 +	unsigned long fp_regs[16];
    42 +	unsigned long xfp_regs[16];
    43 +	unsigned long fpscr;
    44 +	unsigned long fpul;
    45 +};
    46 +
    47 +struct user {
    48 +	struct pt_regs	regs;			/* entire machine state */
    49 +	struct user_fpu_struct fpu;	/* Math Co-processor registers  */
    50 +	int u_fpvalid;		/* True if math co-processor being used */
    51 +	size_t		u_tsize;		/* text size (pages) */
    52 +	size_t		u_dsize;		/* data size (pages) */
    53 +	size_t		u_ssize;		/* stack size (pages) */
    54 +	unsigned long	start_code;		/* text starting address */
    55 +	unsigned long	start_data;		/* data starting address */
    56 +	unsigned long	start_stack;		/* stack starting address */
    57 +	long int	signal;			/* signal causing core dump */
    58 +	struct regs *	u_ar0;			/* help gdb find registers */
    59 +	struct user_fpu_struct* u_fpstate;	/* Math Co-processor pointer */
    60 +	unsigned long	magic;			/* identifies a core file */
    61 +	char		u_comm[32];		/* user command name */
    62 +};
    63 +
    64 +#define NBPG			getpagesize()
    65 +#define UPAGES			1
    66 +#define HOST_TEXT_START_ADDR	(u.start_code)
    67 +#define HOST_DATA_START_ADDR	(u.start_data)
    68 +#define HOST_STACK_END_ADDR	(u.start_stack + u.u_ssize * NBPG)
    69  
    70  #endif  /* sys/user.h */