From cce7653bc1d91f890f9e6434fa5b35206b44679f Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Tue, 16 May 2006 08:23:43 +0000 Subject: [PATCH] * config/tc-avr.h (TC_VALIDATE_FIX): Allow fixups for immediate constant values. --- gas/ChangeLog | 5 +++++ gas/config/tc-avr.h | 21 +++++++++++---------- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 1b9b1dd941..0acf61a148 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2006-05-16 Bjoern Haase + + * config/tc-avr.h (TC_VALIDATE_FIX): Allow fixups for immediate + constant values. + 2006-05-15 Paul Brook * config/tc-arm.c (arm_adjust_symtab): Use diff --git a/gas/config/tc-avr.h b/gas/config/tc-avr.h index 61e76e60df..b79fc051ae 100644 --- a/gas/config/tc-avr.h +++ b/gas/config/tc-avr.h @@ -126,14 +126,15 @@ extern long md_pcrel_from_section (struct fix *, segT); We could in principle keep these fixups in gas when not relaxing. However, there is no serious performance penilty when making the linker make the fixup work. */ -#define TC_VALIDATE_FIX(FIXP,SEG,SKIP) \ - if ( FIXP->fx_r_type == BFD_RELOC_AVR_7_PCREL \ - || FIXP->fx_r_type == BFD_RELOC_AVR_13_PCREL \ - || FIXP->fx_r_type == BFD_RELOC_AVR_LO8_LDI_PM \ - || FIXP->fx_r_type == BFD_RELOC_AVR_HI8_LDI_PM \ - || FIXP->fx_r_type == BFD_RELOC_AVR_HH8_LDI_PM \ - || FIXP->fx_r_type == BFD_RELOC_AVR_16_PM) \ - { \ - goto SKIP; \ - } +#define TC_VALIDATE_FIX(FIXP,SEG,SKIP) \ + if ( (FIXP->fx_r_type == BFD_RELOC_AVR_7_PCREL \ + || FIXP->fx_r_type == BFD_RELOC_AVR_13_PCREL \ + || FIXP->fx_r_type == BFD_RELOC_AVR_LO8_LDI_PM \ + || FIXP->fx_r_type == BFD_RELOC_AVR_HI8_LDI_PM \ + || FIXP->fx_r_type == BFD_RELOC_AVR_HH8_LDI_PM \ + || FIXP->fx_r_type == BFD_RELOC_AVR_16_PM) \ + && (FIXP->fx_addsy)) \ + { \ + goto SKIP; \ + }