From: Alan Modra Date: Mon, 16 Jun 2014 01:58:26 +0000 (+0930) Subject: Report an error on x86 pcrel BFD_RELOC_SIZE64 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1ab668bf2a42ad6c9ef2f691257118faba65bfe9;p=binutils-gdb.git Report an error on x86 pcrel BFD_RELOC_SIZE64 * config/tc-i386.c (reloc): Don't avoid pcrel check for BFD_RELOC_SIZE64. Return NO_RELOC on failing pcrel check. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index 55a0d00f47f..568df4eb6c0 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2014-06-16 Alan Modra + + * config/tc-i386.c (reloc): Don't avoid pcrel check for + BFD_RELOC_SIZE64. Return NO_RELOC on failing pcrel check. + 2014-06-16 Alan Modra * config/tc-tic6x.c (s_tic6x_ehtype): Clear after frag_more. diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 341d10068e9..d0d4d6c9300 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -2846,9 +2846,12 @@ reloc (unsigned int size, if (other == BFD_RELOC_SIZE32) { if (size == 8) - return BFD_RELOC_SIZE64; + other = BFD_RELOC_SIZE64; if (pcrel) - as_bad (_("there are no pc-relative size relocations")); + { + as_bad (_("there are no pc-relative size relocations")); + return NO_RELOC; + } } #endif