PR 13503
* reloc.c: Add new ENUM for BFD_RELOC_AVR_8_LO, BFD_RELOC_AVR_8_HI, BFD_RELOC_AVR_8_HHI. * bfd-in2.h: Regenerate. * libbfd.h: Regenrate. * elf32-avr.c (elf_avr_howto_table): Add entries for R_AVR_8_LO8, R_AVR_8_HI8, R_AVR_8_HHI8. (avr_reloc_map): Add RELOC mappings for R_AVR_8_LO8, R_AVR_8_HI8, R_AVR_8_HHI8. * config/tc-avr.c (exp_mod_pm): Remove variable. (exp_mod_data_t): New typedef. (pexp_mod_data, exp_mod_data): New variables. (avr_parse_cons_expression): Scan through exp_mod_data[] to find data expression modifiers "pm", "gs", "lo8", hi8", "hhi8", "hh8" and set pexp_mod_data accordingly to be used in avr_cons_fix_new. (avr_cons_fix_new): Handle new data expression modifiers shipped in pexp_mod_data. (md_apply_fix): Handle BFD_RELOC_AVR_8_LO, BFD_RELOC_AVR_8_HI, BFD_RELOC_AVR_8_HHI. * elf/avr.h (RELOC_NUMBERS): Add values for R_AVR_8_LO8, R_AVR_8_HI8, R_AVR_8_HHI8.
This commit is contained in:
parent
bb479a688c
commit
c30ea6b3f3
|
@ -1,3 +1,9 @@
|
|||
2012-05-11 Georg-Johann Lay <avr@gjlay.de
|
||||
|
||||
PR target/13503
|
||||
* elf/avr.h (RELOC_NUMBERS): Add values for R_AVR_8_LO8,
|
||||
R_AVR_8_HI8, R_AVR_8_HHI8.
|
||||
|
||||
2012-05-03 Sean Keys <skeys@ipdatasys.com>
|
||||
|
||||
* xgate.h: Mininal file to support XGATE relocations.
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* AVR ELF support for BFD.
|
||||
Copyright 1999, 2000, 2004, 2006, 2010 Free Software Foundation, Inc.
|
||||
Copyright 1999, 2000, 2004, 2006, 2010, 2012
|
||||
Free Software Foundation, Inc.
|
||||
Contributed by Denis Chertykov <denisc@overta.ru>
|
||||
|
||||
This file is part of BFD, the Binary File Descriptor library.
|
||||
|
@ -30,16 +31,16 @@
|
|||
as reference for the relocations so that linker relaxation is possible. */
|
||||
#define EF_AVR_LINKRELAX_PREPARED 0x80
|
||||
|
||||
#define E_AVR_MACH_AVR1 1
|
||||
#define E_AVR_MACH_AVR2 2
|
||||
#define E_AVR_MACH_AVR25 25
|
||||
#define E_AVR_MACH_AVR3 3
|
||||
#define E_AVR_MACH_AVR31 31
|
||||
#define E_AVR_MACH_AVR35 35
|
||||
#define E_AVR_MACH_AVR4 4
|
||||
#define E_AVR_MACH_AVR5 5
|
||||
#define E_AVR_MACH_AVR51 51
|
||||
#define E_AVR_MACH_AVR6 6
|
||||
#define E_AVR_MACH_AVR1 1
|
||||
#define E_AVR_MACH_AVR2 2
|
||||
#define E_AVR_MACH_AVR25 25
|
||||
#define E_AVR_MACH_AVR3 3
|
||||
#define E_AVR_MACH_AVR31 31
|
||||
#define E_AVR_MACH_AVR35 35
|
||||
#define E_AVR_MACH_AVR4 4
|
||||
#define E_AVR_MACH_AVR5 5
|
||||
#define E_AVR_MACH_AVR51 51
|
||||
#define E_AVR_MACH_AVR6 6
|
||||
#define E_AVR_MACH_XMEGA1 101
|
||||
#define E_AVR_MACH_XMEGA2 102
|
||||
#define E_AVR_MACH_XMEGA3 103
|
||||
|
@ -77,6 +78,9 @@ START_RELOC_NUMBERS (elf_avr_reloc_type)
|
|||
RELOC_NUMBER (R_AVR_LO8_LDI_GS, 24)
|
||||
RELOC_NUMBER (R_AVR_HI8_LDI_GS, 25)
|
||||
RELOC_NUMBER (R_AVR_8, 26)
|
||||
RELOC_NUMBER (R_AVR_8_LO8, 27)
|
||||
RELOC_NUMBER (R_AVR_8_HI8, 28)
|
||||
RELOC_NUMBER (R_AVR_8_HHI8, 29)
|
||||
END_RELOC_NUMBERS (R_AVR_max)
|
||||
|
||||
#endif /* _ELF_AVR_H */
|
||||
|
|
Loading…
Reference in New Issue