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 __ASMARM_ELF_H
     13 #define __ASMARM_ELF_H
     14 
     15 #include <asm/ptrace.h>
     16 #include <asm/user.h>
     17 #ifdef __KERNEL
     18 #include <asm/procinfo.h>
     19 #endif
     20 
     21 typedef unsigned long elf_greg_t;
     22 typedef unsigned long elf_freg_t[3];
     23 
     24 #define EM_ARM 40
     25 #define EF_ARM_APCS26 0x08
     26 #define EF_ARM_SOFT_FLOAT 0x200
     27 #define EF_ARM_EABI_MASK 0xFF000000
     28 
     29 #define R_ARM_NONE 0
     30 #define R_ARM_PC24 1
     31 #define R_ARM_ABS32 2
     32 #define R_ARM_CALL 28
     33 #define R_ARM_JUMP24 29
     34 
     35 #define ELF_NGREG (sizeof (struct pt_regs) / sizeof(elf_greg_t))
     36 typedef elf_greg_t elf_gregset_t[ELF_NGREG];
     37 
     38 typedef struct user_fp elf_fpregset_t;
     39 
     40 #define elf_check_arch(x) ( ((x)->e_machine == EM_ARM) && (ELF_PROC_OK((x))) )
     41 
     42 #define ELF_CLASS ELFCLASS32
     43 #ifdef __ARMEB__
     44 #define ELF_DATA ELFDATA2MSB
     45 #else
     46 #define ELF_DATA ELFDATA2LSB
     47 #endif
     48 #define ELF_ARCH EM_ARM
     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 #define ELF_PLAT_INIT(_r, load_addr) (_r)->ARM_r0 = 0
     56 
     57 #define ELF_HWCAP (elf_hwcap)
     58 
     59 #define ELF_PLATFORM_SIZE 8
     60 
     61 #define ELF_PLATFORM (elf_platform)
     62 
     63 #endif
     64