diff options
author | Bodo Stroesser <bstroesser@fujitsu-siemens.com> | 2005-05-05 19:15:35 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-05-05 19:36:37 -0400 |
commit | dbc35cc73f2edd6e39d7e814dbb6eddad6294665 (patch) | |
tree | 42d2d84208e595d832e7f74f92ec678ff848c3f2 /include/asm-um/elf-x86_64.h | |
parent | 51a141104a37369be2822f423ed4444aa34d26a2 (diff) |
[PATCH] uml: s390 preparation, elf.h
This patch make elh.h a symlink to the new arch-specific include files of the
form elf-<subarch>.h, as in the same way already is done for some other
includes. Also moves Elf-stuff from archparam-<subarch>.h and elf.h to the
new elf-<subarch>.h files.
Signed-off-by: Bodo Stroesser <bstroesser@fujitsu-siemens.com>
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/asm-um/elf-x86_64.h')
-rw-r--r-- | include/asm-um/elf-x86_64.h | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/include/asm-um/elf-x86_64.h b/include/asm-um/elf-x86_64.h new file mode 100644 index 000000000000..19309d001aa0 --- /dev/null +++ b/include/asm-um/elf-x86_64.h | |||
@@ -0,0 +1,73 @@ | |||
1 | /* | ||
2 | * Copyright 2003 PathScale, Inc. | ||
3 | * | ||
4 | * Licensed under the GPL | ||
5 | */ | ||
6 | #ifndef __UM_ELF_X86_64_H | ||
7 | #define __UM_ELF_X86_64_H | ||
8 | |||
9 | #include <asm/user.h> | ||
10 | |||
11 | typedef unsigned long elf_greg_t; | ||
12 | |||
13 | #define ELF_NGREG (sizeof (struct user_regs_struct) / sizeof(elf_greg_t)) | ||
14 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
15 | |||
16 | typedef struct { } elf_fpregset_t; | ||
17 | |||
18 | /* | ||
19 | * This is used to ensure we don't load something for the wrong architecture. | ||
20 | */ | ||
21 | #define elf_check_arch(x) \ | ||
22 | ((x)->e_machine == EM_X86_64) | ||
23 | |||
24 | #define ELF_CLASS ELFCLASS64 | ||
25 | #define ELF_DATA ELFDATA2LSB | ||
26 | #define ELF_ARCH EM_X86_64 | ||
27 | |||
28 | #define ELF_PLAT_INIT(regs, load_addr) do { \ | ||
29 | PT_REGS_RBX(regs) = 0; \ | ||
30 | PT_REGS_RCX(regs) = 0; \ | ||
31 | PT_REGS_RDX(regs) = 0; \ | ||
32 | PT_REGS_RSI(regs) = 0; \ | ||
33 | PT_REGS_RDI(regs) = 0; \ | ||
34 | PT_REGS_RBP(regs) = 0; \ | ||
35 | PT_REGS_RAX(regs) = 0; \ | ||
36 | PT_REGS_R8(regs) = 0; \ | ||
37 | PT_REGS_R9(regs) = 0; \ | ||
38 | PT_REGS_R10(regs) = 0; \ | ||
39 | PT_REGS_R11(regs) = 0; \ | ||
40 | PT_REGS_R12(regs) = 0; \ | ||
41 | PT_REGS_R13(regs) = 0; \ | ||
42 | PT_REGS_R14(regs) = 0; \ | ||
43 | PT_REGS_R15(regs) = 0; \ | ||
44 | } while (0) | ||
45 | |||
46 | #ifdef TIF_IA32 /* XXX */ | ||
47 | clear_thread_flag(TIF_IA32); \ | ||
48 | #endif | ||
49 | |||
50 | #define USE_ELF_CORE_DUMP | ||
51 | #define ELF_EXEC_PAGESIZE 4096 | ||
52 | |||
53 | #define ELF_ET_DYN_BASE (2 * TASK_SIZE / 3) | ||
54 | |||
55 | extern long elf_aux_hwcap; | ||
56 | #define ELF_HWCAP (elf_aux_hwcap) | ||
57 | |||
58 | #define ELF_PLATFORM "x86_64" | ||
59 | |||
60 | #define SET_PERSONALITY(ex, ibcs2) do ; while(0) | ||
61 | |||
62 | #endif | ||
63 | |||
64 | /* | ||
65 | * Overrides for Emacs so that we follow Linus's tabbing style. | ||
66 | * Emacs will notice this stuff at the end of the file and automatically | ||
67 | * adjust the settings for this buffer only. This must remain at the end | ||
68 | * of the file. | ||
69 | * --------------------------------------------------------------------------- | ||
70 | * Local variables: | ||
71 | * c-file-style: "linux" | ||
72 | * End: | ||
73 | */ | ||