From: H.J. Lu Date: Thu, 7 Apr 2005 00:53:22 +0000 (+0000) Subject: gas/ X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=dbbaec2634e74fc0a118c81e270c5de53685ab2c;p=binutils-gdb.git gas/ 2005-04-06 H.J. Lu * config/tc-i386.c (tc_gen_reloc): Don't turn BFD_RELOC_X86_64_32S into BFD_RELOC_32. gas/testsuite/ 2005-04-06 H.J. Lu * gas/i386/x86-64-pcrel.s: Test R_X86_64_32S. * gas/i386/x86-64-pcrel.d: Updated. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index 57a0c5480be..1b8dda64749 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2005-04-06 H.J. Lu + + * config/tc-i386.c (tc_gen_reloc): Don't turn + BFD_RELOC_X86_64_32S into BFD_RELOC_32. + 2005-04-06 Nick Clifton * po/rw.po: New translation: Kinyarwanda diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 486b0cf65fa..83e25670bba 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -5380,6 +5380,13 @@ tc_gen_reloc (section, fixp) #endif code = fixp->fx_r_type; break; + case BFD_RELOC_X86_64_32S: + if (!fixp->fx_pcrel) + { + /* Don't turn BFD_RELOC_X86_64_32S into BFD_RELOC_32. */ + code = fixp->fx_r_type; + break; + } default: if (fixp->fx_pcrel) { diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index be446003118..9628cbc0dfd 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2005-04-06 H.J. Lu + + * gas/i386/x86-64-pcrel.s: Test R_X86_64_32S. + * gas/i386/x86-64-pcrel.d: Updated. + 2005-04-01 Jan-Benedict Glaw * gas/vax/flonum.s: New testcase: Encode some flonums. diff --git a/gas/testsuite/gas/i386/x86-64-pcrel.d b/gas/testsuite/gas/i386/x86-64-pcrel.d index f33f6cd685b..3d647bfbaa2 100644 --- a/gas/testsuite/gas/i386/x86-64-pcrel.d +++ b/gas/testsuite/gas/i386/x86-64-pcrel.d @@ -10,4 +10,5 @@ Disassembly of section .text: [ ]*[0-9a-f]+:[ ]+66 b8 00 00[ ]+movw?[ ]+\$(0x)?0,%ax[ ]*[0-9a-f]+:[ ]+R_X86_64_PC16[ ]+xtrn\+(0x)?2 [ ]*[0-9a-f]+:[ ]+b8 00 00 00 00[ ]+movl?[ ]+\$(0x)?0,%eax[ ]*[0-9a-f]+:[ ]+R_X86_64_PC32[ ]+xtrn\+(0x)?1 [ ]*[0-9a-f]+:[ ]+48 c7 c0 00 00 00 00[ ]+movq?[ ]+\$(0x)?0,%rax[ ]*[0-9a-f]+:[ ]+R_X86_64_PC32[ ]+xtrn\+(0x)?3 +[ ]*[0-9a-f]+:[ ]+48 c7 c0 00 00 00 00[ ]+movq?[ ]+\$(0x)?0,%rax[ ]*[0-9a-f]+:[ ]+R_X86_64_32S[ ]+xtrn #pass diff --git a/gas/testsuite/gas/i386/x86-64-pcrel.s b/gas/testsuite/gas/i386/x86-64-pcrel.s index bdd40dc4c8a..c58e0935b88 100644 --- a/gas/testsuite/gas/i386/x86-64-pcrel.s +++ b/gas/testsuite/gas/i386/x86-64-pcrel.s @@ -4,5 +4,6 @@ _start: movw $(xtrn - .), %ax movl $(xtrn - .), %eax movq $(xtrn - .), %rax + movq $xtrn, %rax .p2align 4,0