Commit 4dc43a81 authored by Hirokazu Takata's avatar Hirokazu Takata Committed by Linus Torvalds

[PATCH] m32r: update headers to remove useless iBCS2 support code

Here's a patch to update headers, elf.h and poll.h, to remove useless
iBCS2/SVR4 support code for m32r.
Signed-off-by: default avatarHirokazu Takata <takata@linux-m32r.org>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent cf2623a3
#ifndef _ASM_M32R__ELF_H #ifndef _ASM_M32R__ELF_H
#define _ASM_M32R__ELF_H #define _ASM_M32R__ELF_H
/* $Id$ */
/* /*
* ELF register definitions.. * ELF-specific definitions.
*
* Copyright (C) 1999-2004, Renesas Technology Corp.
* Hirokazu Takata <takata at linux-m32r.org>
*/ */
#include <asm/ptrace.h> #include <asm/ptrace.h>
#include <asm/user.h> #include <asm/user.h>
#include <asm/page.h>
#include <linux/utsname.h>
/* M32R relocation types */ /* M32R relocation types */
#define R_M32R_NONE 0 #define R_M32R_NONE 0
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
#define R_M32R_HI16_SLO_RELA R_M32R_HI16_SLO #define R_M32R_HI16_SLO_RELA R_M32R_HI16_SLO
#define R_M32R_LO16_RELA R_M32R_LO16 #define R_M32R_LO16_RELA R_M32R_LO16
#define R_M32R_SDA16_RELA R_M32R_SDA16 #define R_M32R_SDA16_RELA R_M32R_SDA16
#else /* OLD_TYPE */ #else /* not OLD_TYPE */
#define R_M32R_GNU_VTINHERIT 11 #define R_M32R_GNU_VTINHERIT 11
#define R_M32R_GNU_VTENTRY 12 #define R_M32R_GNU_VTENTRY 12
...@@ -92,14 +92,16 @@ ...@@ -92,14 +92,16 @@
#define R_M32R_GOTPC_HI_ULO 59 #define R_M32R_GOTPC_HI_ULO 59
#define R_M32R_GOTPC_HI_SLO 60 #define R_M32R_GOTPC_HI_SLO 60
#define R_M32R_GOTPC_LO 61 #define R_M32R_GOTPC_LO 61
#endif /* not OLD_TYPE */
#endif /* OLD_TYPE */
#define R_M32R_NUM 256 #define R_M32R_NUM 256
typedef unsigned long elf_greg_t; /*
* ELF register definitions..
*/
#define ELF_NGREG (sizeof (struct pt_regs) / sizeof(elf_greg_t)) #define ELF_NGREG (sizeof (struct pt_regs) / sizeof(elf_greg_t))
typedef unsigned long elf_greg_t;
typedef elf_greg_t elf_gregset_t[ELF_NGREG]; typedef elf_greg_t elf_gregset_t[ELF_NGREG];
/* We have no FP mumumu. */ /* We have no FP mumumu. */
...@@ -125,28 +127,27 @@ typedef elf_fpreg_t elf_fpregset_t; ...@@ -125,28 +127,27 @@ typedef elf_fpreg_t elf_fpregset_t;
#endif #endif
#define ELF_ARCH EM_M32R #define ELF_ARCH EM_M32R
/* SVR4/i386 ABI (pages 3-31, 3-32) says that when the program starts %edx /* r0 is set by ld.so to a pointer to a function which might be
contains a pointer to a function which might be registered using `atexit'. * registered using 'atexit'. This provides a mean for the dynamic
This provides a mean for the dynamic linker to call DT_FINI functions for * linker to call DT_FINI functions for shared libraries that have
shared libraries that have been loaded before the code runs. * been loaded before the code runs.
*
A value of 0 tells we have no such handler. * So that we can use the same startup file with static executables,
* we start programs with a value of 0 to indicate that there is no
We might as well make sure everything else is cleared too (except for %esp), * such function.
just to make things more deterministic.
*/ */
#define ELF_PLAT_INIT(_r, load_addr) do { \ #define ELF_PLAT_INIT(_r, load_addr) (_r)->r0 = 0
_r->r0 = 0; \
} while (0)
#define USE_ELF_CORE_DUMP #define USE_ELF_CORE_DUMP
#define ELF_EXEC_PAGESIZE 4096 #define ELF_EXEC_PAGESIZE PAGE_SIZE
/* This is the location that an ET_DYN program is loaded if exec'ed. Typical
use of this is to invoke "./ld.so someprog" to test out a new version of
the loader. We need to make sure that it is out of the way of the program
that it will "exec", and that there is sufficient room for the brk. */
/*
* This is the location that an ET_DYN program is loaded if exec'ed.
* Typical use of this is to invoke "./ld.so someprog" to test out a
* new version of the loader. We need to make sure that it is out of
* the way of the program that it will "exec", and that there is
* sufficient room for the brk.
*/
#define ELF_ET_DYN_BASE (TASK_SIZE / 3 * 2) #define ELF_ET_DYN_BASE (TASK_SIZE / 3 * 2)
/* regs is struct pt_regs, pr_reg is elf_gregset_t (which is /* regs is struct pt_regs, pr_reg is elf_gregset_t (which is
...@@ -156,22 +157,16 @@ typedef elf_fpreg_t elf_fpregset_t; ...@@ -156,22 +157,16 @@ typedef elf_fpreg_t elf_fpregset_t;
memcpy((char *)&pr_reg, (char *)&regs, sizeof (struct pt_regs)); memcpy((char *)&pr_reg, (char *)&regs, sizeof (struct pt_regs));
/* This yields a mask that user programs can use to figure out what /* This yields a mask that user programs can use to figure out what
instruction set this CPU supports. This could be done in user space, instruction set this CPU supports. */
but it's not easy, and we've already done it here. */
#define ELF_HWCAP (0) #define ELF_HWCAP (0)
/* This yields a string that ld.so will use to load implementation /* This yields a string that ld.so will use to load implementation
specific libraries for optimization. This is more specific in specific libraries for optimization. This is more specific in
intent than poking at uname or /proc/cpuinfo. intent than poking at uname or /proc/cpuinfo. */
#define ELF_PLATFORM (NULL)
For the moment, we have only optimizations for the Intel generations,
but that could change... */
#define ELF_PLATFORM (NULL)
#ifdef __KERNEL__ #ifdef __KERNEL__
#define SET_PERSONALITY(ex, ibcs2) set_personality((ibcs2)?PER_SVR4:PER_LINUX) #define SET_PERSONALITY(ex, ibcs2) set_personality(PER_LINUX)
#endif #endif
#endif /* _ASM_M32R__ELF_H */ #endif /* _ASM_M32R__ELF_H */
#ifndef _ASM_M32R_POLL_H #ifndef _ASM_M32R_POLL_H
#define _ASM_M32R_POLL_H #define _ASM_M32R_POLL_H
/* $Id$ */ /*
* poll(2) bit definitions. Based on <asm-i386/poll.h>.
*
* Modified 2004
* Hirokazu Takata <takata at linux-m32r.org>
*/
/* orig : i386 2.4.18 */
/* These are specified by iBCS2 */
#define POLLIN 0x0001 #define POLLIN 0x0001
#define POLLPRI 0x0002 #define POLLPRI 0x0002
#define POLLOUT 0x0004 #define POLLOUT 0x0004
...@@ -13,12 +15,12 @@ ...@@ -13,12 +15,12 @@
#define POLLHUP 0x0010 #define POLLHUP 0x0010
#define POLLNVAL 0x0020 #define POLLNVAL 0x0020
/* The rest seem to be more-or-less nonstandard. Check them! */
#define POLLRDNORM 0x0040 #define POLLRDNORM 0x0040
#define POLLRDBAND 0x0080 #define POLLRDBAND 0x0080
#define POLLWRNORM 0x0100 #define POLLWRNORM 0x0100
#define POLLWRBAND 0x0200 #define POLLWRBAND 0x0200
#define POLLMSG 0x0400 #define POLLMSG 0x0400
#define POLLREMOVE 0x1000
struct pollfd { struct pollfd {
int fd; int fd;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment