Home | History | Annotate | Download | only in asm
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ****************************************************************************
     11  ****************************************************************************/
     12 #ifndef _ASM_X86_ELF_H
     13 #define _ASM_X86_ELF_H
     14 
     15 #include <asm/ptrace.h>
     16 #include <asm/user.h>
     17 #include <asm/auxvec.h>
     18 
     19 typedef unsigned long elf_greg_t;
     20 
     21 #define ELF_NGREG (sizeof (struct user_regs_struct) / sizeof(elf_greg_t))
     22 typedef elf_greg_t elf_gregset_t[ELF_NGREG];
     23 
     24 typedef struct user_i387_struct elf_fpregset_t;
     25 
     26 #ifdef __i386__
     27 
     28 typedef struct user_fxsr_struct elf_fpxregset_t;
     29 
     30 #define R_386_NONE 0
     31 #define R_386_32 1
     32 #define R_386_PC32 2
     33 #define R_386_GOT32 3
     34 #define R_386_PLT32 4
     35 #define R_386_COPY 5
     36 #define R_386_GLOB_DAT 6
     37 #define R_386_JMP_SLOT 7
     38 #define R_386_RELATIVE 8
     39 #define R_386_GOTOFF 9
     40 #define R_386_GOTPC 10
     41 #define R_386_NUM 11
     42 
     43 #define ELF_CLASS ELFCLASS32
     44 #define ELF_DATA ELFDATA2LSB
     45 #define ELF_ARCH EM_386
     46 
     47 #else
     48 
     49 #define R_X86_64_NONE 0
     50 #define R_X86_64_64 1
     51 #define R_X86_64_PC32 2
     52 #define R_X86_64_GOT32 3
     53 #define R_X86_64_PLT32 4
     54 #define R_X86_64_COPY 5
     55 #define R_X86_64_GLOB_DAT 6
     56 #define R_X86_64_JUMP_SLOT 7
     57 #define R_X86_64_RELATIVE 8
     58 #define R_X86_64_GOTPCREL 9
     59 #define R_X86_64_32 10
     60 #define R_X86_64_32S 11
     61 #define R_X86_64_16 12
     62 #define R_X86_64_PC16 13
     63 #define R_X86_64_8 14
     64 #define R_X86_64_PC8 15
     65 
     66 #define R_X86_64_NUM 16
     67 
     68 #define ELF_CLASS ELFCLASS64
     69 #define ELF_DATA ELFDATA2LSB
     70 #define ELF_ARCH EM_X86_64
     71 
     72 #endif
     73 
     74 #endif
     75