[PATCH] uml: s390 preparation, elf.h
[linux-drm-fsl-dcu.git] / include / asm-um / elf-x86_64.h
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  */