diff options
Diffstat (limited to 'include/elf')
-rw-r--r-- | include/elf/ChangeLog | 23 | ||||
-rw-r--r-- | include/elf/bfin.h | 88 |
2 files changed, 67 insertions, 44 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index 08fcfd3..3ff097a 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,26 @@ +2006-08-09 Bernd Schmidt <bernd.schmidt@analog.com> + + From Mike Frysinger <michael.frysinger@analog.com> + * bfin.h (R_BFIN_UNUSED, R_BFIN_PCREL5M2, R_BFIN_UNUSED1, + R_BFIN_PCREL10, R_BFIN_PCREL12_JUMP, R_BFIN_RIMM16, + R_BFIN_LUIMM16, R_BFIN_HUIMM16, R_BFIN_PCREL12_JUMP_S, + R_BFIN_PCREL24_JUMP_X, R_BFIN_PCREL24, R_BFIN_UNUSEDB, + R_BFIN_UNUSEDC, R_BFIN_PCREL24_JUMP_L, R_BFIN_PCREL24_CALL_X, + R_BFIN_VAR_EQ_SYMB, R_BFIN_BYTE_DATA, R_BFIN_BYTE2_DATA, + R_BFIN_BYTE4_DATA, R_BFIN_PCREL11, R_BFIN_PUSH, R_BFIN_CONST, + R_BFIN_ADD, R_BFIN_SUB, R_BFIN_MULT, R_BFIN_DIV, R_BFIN_MOD, + R_BFIN_LSHIFT, R_BFIN_RSHIFT, R_BFIN_AND, R_BFIN_OR, R_BFIN_XOR, + R_BFIN_LAND, R_BFIN_LOR, R_BFIN_LEN, R_BFIN_NEG, R_BFIN_COMP, + R_BFIN_PAGE, R_BFIN_HWPAGE, R_BFIN_ADDR, R_BFIN_PLTPLC, + R_BFIN_GOT, R_BFIN_MAX): Renamed from R_unused0, R_pcrel5ms, + R_unused1, R_pcrel10, R_pcrel12_jump, R_rimm16, R_luimm16, + R_huimm16, R_pcrel12_jump_s, R_pcrel24_jump_x, R_pcrel24, + R_unusedb, R_unusedc, R_pcrel24_jump_l, R_pcrel24_call_x, + R_var_eq_symb, R_byte_data, R_byte2_data, R_byte4_data, R_pcrel11, + R_push, R_const, R_add, R_sub, R_mult, R_div, R_mod, R_lshift, + R_rshift, R_and, R_or, R_xor, R_land, R_lor, R_len, R_neg, R_comp, + R_page, R_hwpage, R_addr, R_pltpc, R_got. + 2009-08-09 Michael Eager <eager@eagercon.com> * elf/common.h: Define EM_resnnn reserved values. Add EM_AVR32, diff --git a/include/elf/bfin.h b/include/elf/bfin.h index 3c07cd1..1cafb5a 100644 --- a/include/elf/bfin.h +++ b/include/elf/bfin.h @@ -19,30 +19,30 @@ along with this program; if not, write to the Free Software Foundation, Inc., #ifndef _ELF_BFIN_H #define _ELF_BFIN_H - + #include "elf/reloc-macros.h" START_RELOC_NUMBERS (elf_bfin_reloc_type) - RELOC_NUMBER (R_unused0, 0x00) /* relocation type 0 is not defined*/ - RELOC_NUMBER (R_pcrel5m2, 0x01) /*LSETUP part a*/ - RELOC_NUMBER (R_unused1, 0x02) /* relocation type 2 is not defined*/ - RELOC_NUMBER (R_pcrel10, 0x03) /* type 3, 0x00) if cc jump <target> */ - RELOC_NUMBER (R_pcrel12_jump, 0x04) /* type 4, 0x00) jump <target> */ - RELOC_NUMBER (R_rimm16, 0x05) /* type 0x5, 0x00) rN = <target> */ - RELOC_NUMBER (R_luimm16, 0x06) /* # 0x6, 0x00) preg.l=<target> Load imm 16 to lower half */ - RELOC_NUMBER (R_huimm16, 0x07) /* # 0x7, 0x00) preg.h=<target> Load imm 16 to upper half*/ - RELOC_NUMBER (R_pcrel12_jump_s, 0x08) /* # 0x8 jump.s <target> */ - RELOC_NUMBER (R_pcrel24_jump_x, 0x09) /* # 0x9 jump.x <target> */ - RELOC_NUMBER (R_pcrel24, 0x0a) /* # 0xa call <target> , 0x00) not expandable*/ - RELOC_NUMBER (R_unusedb, 0x0b) /* # 0xb not generated */ - RELOC_NUMBER (R_unusedc, 0x0c) /* # 0xc not used */ - RELOC_NUMBER (R_pcrel24_jump_l, 0x0d) /*0xd jump.l <target>*/ - RELOC_NUMBER (R_pcrel24_call_x, 0x0e) /* 0xE, 0x00) call.x <target> if <target> is above 24 bit limit call through P1 */ - RELOC_NUMBER (R_var_eq_symb, 0x0f) /* 0xf, 0x00) linker should treat it same as 0x12 */ - RELOC_NUMBER (R_byte_data, 0x10) /* 0x10, 0x00) .byte var = symbol */ - RELOC_NUMBER (R_byte2_data, 0x11) /* 0x11, 0x00) .byte2 var = symbol */ - RELOC_NUMBER (R_byte4_data, 0x12) /* 0x12, 0x00) .byte4 var = symbol and .var var=symbol */ - RELOC_NUMBER (R_pcrel11, 0x13) /* 0x13, 0x00) lsetup part b */ + RELOC_NUMBER (R_BFIN_UNUSED0, 0x00) /* relocation type 0 is not defined */ + RELOC_NUMBER (R_BFIN_PCREL5M2, 0x01) /* LSETUP part a */ + RELOC_NUMBER (R_BFIN_UNUSED1, 0x02) /* relocation type 2 is not defined */ + RELOC_NUMBER (R_BFIN_PCREL10, 0x03) /* type 3, 0x00) if cc jump <target> */ + RELOC_NUMBER (R_BFIN_PCREL12_JUMP, 0x04) /* type 4, 0x00) jump <target> */ + RELOC_NUMBER (R_BFIN_RIMM16, 0x05) /* type 0x5, 0x00) rN = <target> */ + RELOC_NUMBER (R_BFIN_LUIMM16, 0x06) /* # 0x6, 0x00) preg.l=<target> Load imm 16 to lower half */ + RELOC_NUMBER (R_BFIN_HUIMM16, 0x07) /* # 0x7, 0x00) preg.h=<target> Load imm 16 to upper half */ + RELOC_NUMBER (R_BFIN_PCREL12_JUMP_S, 0x08) /* # 0x8 jump.s <target> */ + RELOC_NUMBER (R_BFIN_PCREL24_JUMP_X, 0x09) /* # 0x9 jump.x <target> */ + RELOC_NUMBER (R_BFIN_PCREL24, 0x0a) /* # 0xa call <target> , 0x00) not expandable */ + RELOC_NUMBER (R_BFIN_UNUSEDB, 0x0b) /* # 0xb not generated */ + RELOC_NUMBER (R_BFIN_UNUSEDC, 0x0c) /* # 0xc not used */ + RELOC_NUMBER (R_BFIN_PCREL24_JUMP_L, 0x0d) /* 0xd jump.l <target> */ + RELOC_NUMBER (R_BFIN_PCREL24_CALL_X, 0x0e) /* 0xE, 0x00) call.x <target> if <target> is above 24 bit limit call through P1 */ + RELOC_NUMBER (R_BFIN_VAR_EQ_SYMB, 0x0f) /* 0xf, 0x00) linker should treat it same as 0x12 */ + RELOC_NUMBER (R_BFIN_BYTE_DATA, 0x10) /* 0x10, 0x00) .byte var = symbol */ + RELOC_NUMBER (R_BFIN_BYTE2_DATA, 0x11) /* 0x11, 0x00) .byte2 var = symbol */ + RELOC_NUMBER (R_BFIN_BYTE4_DATA, 0x12) /* 0x12, 0x00) .byte4 var = symbol and .var var=symbol */ + RELOC_NUMBER (R_BFIN_PCREL11, 0x13) /* 0x13, 0x00) lsetup part b */ RELOC_NUMBER (R_BFIN_GOT17M4, 0x14) RELOC_NUMBER (R_BFIN_GOTHI, 0x15) RELOC_NUMBER (R_BFIN_GOTLO, 0x16) @@ -58,31 +58,31 @@ START_RELOC_NUMBERS (elf_bfin_reloc_type) RELOC_NUMBER (R_BFIN_GOTOFFHI, 0x20) RELOC_NUMBER (R_BFIN_GOTOFFLO, 0x21) - RELOC_NUMBER (R_push, 0xE0) - RELOC_NUMBER (R_const, 0xE1) - RELOC_NUMBER (R_add, 0xE2) - RELOC_NUMBER (R_sub, 0xE3) - RELOC_NUMBER (R_mult, 0xE4) - RELOC_NUMBER (R_div, 0xE5) - RELOC_NUMBER (R_mod, 0xE6) - RELOC_NUMBER (R_lshift, 0xE7) - RELOC_NUMBER (R_rshift, 0xE8) - RELOC_NUMBER (R_and, 0xE9) - RELOC_NUMBER (R_or, 0xEA) - RELOC_NUMBER (R_xor, 0xEB) - RELOC_NUMBER (R_land, 0xEC) - RELOC_NUMBER (R_lor, 0xED) - RELOC_NUMBER (R_len, 0xEE) - RELOC_NUMBER (R_neg, 0xEF) - RELOC_NUMBER (R_comp, 0xF0) - RELOC_NUMBER (R_page, 0xF1) - RELOC_NUMBER (R_hwpage, 0xF2) - RELOC_NUMBER (R_addr, 0xF3) - RELOC_NUMBER (R_pltpc, 0x40) /* PLT gnu only relocation */ - RELOC_NUMBER (R_got, 0x41) /* GOT gnu only relocation */ + RELOC_NUMBER (R_BFIN_PUSH, 0xE0) + RELOC_NUMBER (R_BFIN_CONST, 0xE1) + RELOC_NUMBER (R_BFIN_ADD, 0xE2) + RELOC_NUMBER (R_BFIN_SUB, 0xE3) + RELOC_NUMBER (R_BFIN_MULT, 0xE4) + RELOC_NUMBER (R_BFIN_DIV, 0xE5) + RELOC_NUMBER (R_BFIN_MOD, 0xE6) + RELOC_NUMBER (R_BFIN_LSHIFT, 0xE7) + RELOC_NUMBER (R_BFIN_RSHIFT, 0xE8) + RELOC_NUMBER (R_BFIN_AND, 0xE9) + RELOC_NUMBER (R_BFIN_OR, 0xEA) + RELOC_NUMBER (R_BFIN_XOR, 0xEB) + RELOC_NUMBER (R_BFIN_LAND, 0xEC) + RELOC_NUMBER (R_BFIN_LOR, 0xED) + RELOC_NUMBER (R_BFIN_LEN, 0xEE) + RELOC_NUMBER (R_BFIN_NEG, 0xEF) + RELOC_NUMBER (R_BFIN_COMP, 0xF0) + RELOC_NUMBER (R_BFIN_PAGE, 0xF1) + RELOC_NUMBER (R_BFIN_HWPAGE, 0xF2) + RELOC_NUMBER (R_BFIN_ADDR, 0xF3) + RELOC_NUMBER (R_BFIN_PLTPC, 0x40) /* PLT gnu only relocation */ + RELOC_NUMBER (R_BFIN_GOT, 0x41) /* GOT gnu only relocation */ RELOC_NUMBER (R_BFIN_GNU_VTINHERIT, 0x42) /* C++, gnu only */ RELOC_NUMBER (R_BFIN_GNU_VTENTRY, 0x43) /* C++, gnu only */ -END_RELOC_NUMBERS (R_max) +END_RELOC_NUMBERS (R_BFIN_max) /* Processor specific flags for the ELF header e_flags field. */ #define EF_BFIN_PIC 0x00000001 /* -fpic */ |