diff options
author | Ralf Baechle <ralf@linux-mips.org> | 1998-03-17 22:05:47 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 1998-03-17 22:05:47 +0000 |
commit | 27cfca1ec98e91261b1a5355d10a8996464b63af (patch) | |
tree | 8e895a53e372fa682b4c0a585b9377d67ed70d0e /include/asm-sparc64/elf.h | |
parent | 6a76fb7214c477ccf6582bd79c5b4ccc4f9c41b1 (diff) |
Look Ma' what I found on my harddisk ...
o New faster syscalls for 2.1.x, too
o Upgrade to 2.1.89.
Don't try to run this. It's flaky as hell. But feel free to debug ...
Diffstat (limited to 'include/asm-sparc64/elf.h')
-rw-r--r-- | include/asm-sparc64/elf.h | 37 |
1 files changed, 31 insertions, 6 deletions
diff --git a/include/asm-sparc64/elf.h b/include/asm-sparc64/elf.h index caf1c9434..a6891d681 100644 --- a/include/asm-sparc64/elf.h +++ b/include/asm-sparc64/elf.h @@ -1,4 +1,4 @@ -/* $Id: elf.h,v 1.8 1997/08/21 18:09:07 richard Exp $ */ +/* $Id: elf.h,v 1.13 1997/10/03 18:44:14 davem Exp $ */ #ifndef __ASM_SPARC64_ELF_H #define __ASM_SPARC64_ELF_H @@ -25,10 +25,6 @@ typedef unsigned long elf_fpregset_t; #define ELF_DATA ELFDATA2MSB #endif -#ifndef ELF_FLAGS_INIT -#define ELF_FLAGS_INIT current->tss.flags &= ~SPARC_FLAG_32BIT -#endif - /* * This is used to ensure we don't load something for the wrong architecture. */ @@ -45,7 +41,36 @@ typedef unsigned long elf_fpregset_t; that it will "exec", and that there is sufficient room for the brk. */ #ifndef ELF_ET_DYN_BASE -#define ELF_ET_DYN_BASE (2 * TASK_SIZE / 3) +#define ELF_ET_DYN_BASE 0x50000000000 +#endif + + +/* This yields a mask that user programs can use to figure out what + instruction set this cpu supports. */ + +/* On Ultra, we support all of the v8 capabilities. */ +#define ELF_HWCAP (HWCAP_SPARC_FLUSH | HWCAP_SPARC_STBAR | \ + HWCAP_SPARC_SWAP | HWCAP_SPARC_MULDIV) + +/* This yields a string that ld.so will use to load implementation + specific libraries for optimization. This is more specific in + intent than poking at uname or /proc/cpuinfo. */ + +#define ELF_PLATFORM (NULL) + +#ifdef __KERNEL__ +#define SET_PERSONALITY(ex, ibcs2) \ +do { \ + if ((ex).e_ident[EI_CLASS] == ELFCLASS32) \ + current->tss.flags |= SPARC_FLAG_32BIT; \ + else \ + current->tss.flags &= ~SPARC_FLAG_32BIT; \ + \ + if (ibcs2) \ + current->personality = PER_SVR4; \ + else if (current->personality != PER_LINUX32) \ + current->personality = PER_LINUX; \ +} while (0) #endif #endif /* !(__ASM_SPARC64_ELF_H) */ |