Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs
elf.h File Reference
#include <asm/ptrace.h>
#include <asm/user.h>

Go to the source code of this file.

Data Structures

struct  elf_fpregset_t
 

Macros

#define EF_BFIN_PIC   0x00000001 /* -fpic */
 
#define EF_BFIN_FDPIC   0x00000002 /* -mfdpic */
 
#define EF_BFIN_CODE_IN_L1   0x00000010 /* --code-in-l1 */
 
#define EF_BFIN_DATA_IN_L1   0x00000020 /* --data-in-l1 */
 
#define EF_BFIN_CODE_IN_L2   0x00000040 /* --code-in-l2 */
 
#define EF_BFIN_DATA_IN_L2   0x00000080 /* --data-in-l2 */
 
#define ELF_NGREG   (sizeof(struct pt_regs) / sizeof(elf_greg_t))
 
#define elf_check_arch(x)   ((x)->e_machine == EM_BLACKFIN)
 
#define elf_check_fdpic(x)   ((x)->e_flags & EF_BFIN_FDPIC /* && !((x)->e_flags & EF_FRV_NON_PIC_RELOCS) */)
 
#define elf_check_const_displacement(x)   ((x)->e_flags & EF_BFIN_PIC)
 
#define ELF_CLASS   ELFCLASS32
 
#define ELF_DATA   ELFDATA2LSB
 
#define ELF_ARCH   EM_BLACKFIN
 
#define ELF_PLAT_INIT(_r)   _r->p1 = 0
 
#define ELF_FDPIC_PLAT_INIT(_regs, _exec_map_addr, _interp_map_addr, _dynamic_addr)
 
#define ELF_FDPIC_CORE_EFLAGS   EF_BFIN_FDPIC
 
#define ELF_EXEC_PAGESIZE   4096
 
#define R_BFIN_UNUSED0   0 /* relocation type 0 is not defined */
 
#define R_BFIN_PCREL5M2   1 /* LSETUP part a */
 
#define R_BFIN_UNUSED1   2 /* relocation type 2 is not defined */
 
#define R_BFIN_PCREL10   3 /* type 3, if cc jump <target> */
 
#define R_BFIN_PCREL12_JUMP   4 /* type 4, jump <target> */
 
#define R_BFIN_RIMM16   5 /* type 0x5, rN = <target> */
 
#define R_BFIN_LUIMM16   6 /* # 0x6, preg.l=<target> Load imm 16 to lower half */
 
#define R_BFIN_HUIMM16   7 /* # 0x7, preg.h=<target> Load imm 16 to upper half */
 
#define R_BFIN_PCREL12_JUMP_S   8 /* # 0x8 jump.s <target> */
 
#define R_BFIN_PCREL24_JUMP_X   9 /* # 0x9 jump.x <target> */
 
#define R_BFIN_PCREL24   10 /* # 0xa call <target> , not expandable */
 
#define R_BFIN_UNUSEDB   11 /* # 0xb not generated */
 
#define R_BFIN_UNUSEDC   12 /* # 0xc not used */
 
#define R_BFIN_PCREL24_JUMP_L   13 /* 0xd jump.l <target> */
 
#define R_BFIN_PCREL24_CALL_X   14 /* 0xE, call.x <target> if <target> is above 24 bit limit call through P1 */
 
#define R_BFIN_VAR_EQ_SYMB   15 /* 0xf, linker should treat it same as 0x12 */
 
#define R_BFIN_BYTE_DATA   16 /* 0x10, .byte var = symbol */
 
#define R_BFIN_BYTE2_DATA   17 /* 0x11, .byte2 var = symbol */
 
#define R_BFIN_BYTE4_DATA   18 /* 0x12, .byte4 var = symbol and .var var=symbol */
 
#define R_BFIN_PCREL11   19 /* 0x13, lsetup part b */
 
#define R_BFIN_UNUSED14   20 /* 0x14, undefined */
 
#define R_BFIN_UNUSED15   21 /* not generated by VDSP 3.5 */
 
#define R_BFIN_PUSH   0xE0
 
#define R_BFIN_CONST   0xE1
 
#define R_BFIN_ADD   0xE2
 
#define R_BFIN_SUB   0xE3
 
#define R_BFIN_MULT   0xE4
 
#define R_BFIN_DIV   0xE5
 
#define R_BFIN_MOD   0xE6
 
#define R_BFIN_LSHIFT   0xE7
 
#define R_BFIN_RSHIFT   0xE8
 
#define R_BFIN_AND   0xE9
 
#define R_BFIN_OR   0xEA
 
#define R_BFIN_XOR   0xEB
 
#define R_BFIN_LAND   0xEC
 
#define R_BFIN_LOR   0xED
 
#define R_BFIN_LEN   0xEE
 
#define R_BFIN_NEG   0xEF
 
#define R_BFIN_COMP   0xF0
 
#define R_BFIN_PAGE   0xF1
 
#define R_BFIN_HWPAGE   0xF2
 
#define R_BFIN_ADDR   0xF3
 
#define ELF_ET_DYN_BASE   0xD0000000UL
 
#define ELF_CORE_COPY_REGS(pr_reg, regs)
 
#define ELF_CORE_COPY_FPREGS(...)   0 /* Blackfin has no FPU */
 
#define ELF_HWCAP   (0)
 
#define ELF_PLATFORM   (NULL)
 
#define SET_PERSONALITY(ex)   set_personality(PER_LINUX | (current->personality & (~PER_MASK)))
 

Typedefs

typedef unsigned long elf_greg_t
 
typedef elf_greg_t elf_gregset_t [ELF_NGREG]
 

Macro Definition Documentation

#define EF_BFIN_CODE_IN_L1   0x00000010 /* --code-in-l1 */

Definition at line 20 of file elf.h.

#define EF_BFIN_CODE_IN_L2   0x00000040 /* --code-in-l2 */

Definition at line 22 of file elf.h.

#define EF_BFIN_DATA_IN_L1   0x00000020 /* --data-in-l1 */

Definition at line 21 of file elf.h.

#define EF_BFIN_DATA_IN_L2   0x00000080 /* --data-in-l2 */

Definition at line 23 of file elf.h.

#define EF_BFIN_FDPIC   0x00000002 /* -mfdpic */

Definition at line 19 of file elf.h.

#define EF_BFIN_PIC   0x00000001 /* -fpic */

Definition at line 18 of file elf.h.

#define ELF_ARCH   EM_BLACKFIN

Definition at line 49 of file elf.h.

#define elf_check_arch (   x)    ((x)->e_machine == EM_BLACKFIN)

Definition at line 37 of file elf.h.

#define elf_check_const_displacement (   x)    ((x)->e_flags & EF_BFIN_PIC)

Definition at line 40 of file elf.h.

#define elf_check_fdpic (   x)    ((x)->e_flags & EF_BFIN_FDPIC /* && !((x)->e_flags & EF_FRV_NON_PIC_RELOCS) */)

Definition at line 39 of file elf.h.

#define ELF_CLASS   ELFCLASS32

Definition at line 47 of file elf.h.

#define ELF_CORE_COPY_FPREGS (   ...)    0 /* Blackfin has no FPU */

Definition at line 122 of file elf.h.

#define ELF_CORE_COPY_REGS (   pr_reg,
  regs 
)
Value:
memcpy((char *) &pr_reg, (char *)regs, \
sizeof(struct pt_regs));

Definition at line 119 of file elf.h.

#define ELF_DATA   ELFDATA2LSB

Definition at line 48 of file elf.h.

#define ELF_ET_DYN_BASE   0xD0000000UL

Definition at line 117 of file elf.h.

#define ELF_EXEC_PAGESIZE   4096

Definition at line 65 of file elf.h.

#define ELF_FDPIC_CORE_EFLAGS   EF_BFIN_FDPIC

Definition at line 64 of file elf.h.

#define ELF_FDPIC_PLAT_INIT (   _regs,
  _exec_map_addr,
  _interp_map_addr,
  _dynamic_addr 
)
Value:
do { \
_regs->r7 = 0; \
_regs->p0 = _exec_map_addr; \
_regs->p1 = _interp_map_addr; \
_regs->p2 = _dynamic_addr; \
} while(0)

Definition at line 53 of file elf.h.

#define ELF_HWCAP   (0)

Definition at line 127 of file elf.h.

#define ELF_NGREG   (sizeof(struct pt_regs) / sizeof(elf_greg_t))

Definition at line 28 of file elf.h.

#define ELF_PLAT_INIT (   _r)    _r->p1 = 0

Definition at line 51 of file elf.h.

#define ELF_PLATFORM   (NULL)

Definition at line 133 of file elf.h.

#define R_BFIN_ADD   0xE2

Definition at line 93 of file elf.h.

#define R_BFIN_ADDR   0xF3

Definition at line 110 of file elf.h.

#define R_BFIN_AND   0xE9

Definition at line 100 of file elf.h.

#define R_BFIN_BYTE2_DATA   17 /* 0x11, .byte2 var = symbol */

Definition at line 84 of file elf.h.

#define R_BFIN_BYTE4_DATA   18 /* 0x12, .byte4 var = symbol and .var var=symbol */

Definition at line 85 of file elf.h.

#define R_BFIN_BYTE_DATA   16 /* 0x10, .byte var = symbol */

Definition at line 83 of file elf.h.

#define R_BFIN_COMP   0xF0

Definition at line 107 of file elf.h.

#define R_BFIN_CONST   0xE1

Definition at line 92 of file elf.h.

#define R_BFIN_DIV   0xE5

Definition at line 96 of file elf.h.

#define R_BFIN_HUIMM16   7 /* # 0x7, preg.h=<target> Load imm 16 to upper half */

Definition at line 74 of file elf.h.

#define R_BFIN_HWPAGE   0xF2

Definition at line 109 of file elf.h.

#define R_BFIN_LAND   0xEC

Definition at line 103 of file elf.h.

#define R_BFIN_LEN   0xEE

Definition at line 105 of file elf.h.

#define R_BFIN_LOR   0xED

Definition at line 104 of file elf.h.

#define R_BFIN_LSHIFT   0xE7

Definition at line 98 of file elf.h.

#define R_BFIN_LUIMM16   6 /* # 0x6, preg.l=<target> Load imm 16 to lower half */

Definition at line 73 of file elf.h.

#define R_BFIN_MOD   0xE6

Definition at line 97 of file elf.h.

#define R_BFIN_MULT   0xE4

Definition at line 95 of file elf.h.

#define R_BFIN_NEG   0xEF

Definition at line 106 of file elf.h.

#define R_BFIN_OR   0xEA

Definition at line 101 of file elf.h.

#define R_BFIN_PAGE   0xF1

Definition at line 108 of file elf.h.

#define R_BFIN_PCREL10   3 /* type 3, if cc jump <target> */

Definition at line 70 of file elf.h.

#define R_BFIN_PCREL11   19 /* 0x13, lsetup part b */

Definition at line 86 of file elf.h.

#define R_BFIN_PCREL12_JUMP   4 /* type 4, jump <target> */

Definition at line 71 of file elf.h.

#define R_BFIN_PCREL12_JUMP_S   8 /* # 0x8 jump.s <target> */

Definition at line 75 of file elf.h.

#define R_BFIN_PCREL24   10 /* # 0xa call <target> , not expandable */

Definition at line 77 of file elf.h.

#define R_BFIN_PCREL24_CALL_X   14 /* 0xE, call.x <target> if <target> is above 24 bit limit call through P1 */

Definition at line 81 of file elf.h.

#define R_BFIN_PCREL24_JUMP_L   13 /* 0xd jump.l <target> */

Definition at line 80 of file elf.h.

#define R_BFIN_PCREL24_JUMP_X   9 /* # 0x9 jump.x <target> */

Definition at line 76 of file elf.h.

#define R_BFIN_PCREL5M2   1 /* LSETUP part a */

Definition at line 68 of file elf.h.

#define R_BFIN_PUSH   0xE0

Definition at line 91 of file elf.h.

#define R_BFIN_RIMM16   5 /* type 0x5, rN = <target> */

Definition at line 72 of file elf.h.

#define R_BFIN_RSHIFT   0xE8

Definition at line 99 of file elf.h.

#define R_BFIN_SUB   0xE3

Definition at line 94 of file elf.h.

#define R_BFIN_UNUSED0   0 /* relocation type 0 is not defined */

Definition at line 67 of file elf.h.

#define R_BFIN_UNUSED1   2 /* relocation type 2 is not defined */

Definition at line 69 of file elf.h.

#define R_BFIN_UNUSED14   20 /* 0x14, undefined */

Definition at line 87 of file elf.h.

#define R_BFIN_UNUSED15   21 /* not generated by VDSP 3.5 */

Definition at line 88 of file elf.h.

#define R_BFIN_UNUSEDB   11 /* # 0xb not generated */

Definition at line 78 of file elf.h.

#define R_BFIN_UNUSEDC   12 /* # 0xc not used */

Definition at line 79 of file elf.h.

#define R_BFIN_VAR_EQ_SYMB   15 /* 0xf, linker should treat it same as 0x12 */

Definition at line 82 of file elf.h.

#define R_BFIN_XOR   0xEB

Definition at line 102 of file elf.h.

#define SET_PERSONALITY (   ex)    set_personality(PER_LINUX | (current->personality & (~PER_MASK)))

Definition at line 135 of file elf.h.

Typedef Documentation

typedef unsigned long elf_greg_t

Definition at line 26 of file elf.h.

Definition at line 29 of file elf.h.