From: Christophe Lyon Date: Thu, 11 Feb 2010 14:34:43 +0000 (+0000) Subject: 2010-02-05 Christophe Lyon X-Git-Tag: binutils-2_20_1~30 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=da792638a4ac7270ddde1d3c1ee0ba7a405167d0;p=thirdparty%2Fbinutils-gdb.git 2010-02-05 Christophe Lyon binutils/ * objdump.c (disassemble_bytes): Clear aux->reloc before printing a new address, so as not to reuse a previous, non-related reloc. gas/testsuite/ * gas/arm/arm-it-auto.d, gas/arm/bl-local-v4t.d, gas/arm/blx-local.d, gas/arm/thumb-w-good.d: Update expected results. --- diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 98346e91da5..c48a0a98bcc 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2010-02-05 Christophe Lyon + + * objdump.c (disassemble_bytes): Clear aux->reloc before printing + a new address, so as not to reuse a previous, non-related reloc. + 2010-01-05 Alan Modra PR 11129 diff --git a/binutils/objdump.c b/binutils/objdump.c index dd0d0ef50c2..ff2d7032dbb 100644 --- a/binutils/objdump.c +++ b/binutils/objdump.c @@ -1465,6 +1465,9 @@ disassemble_bytes (struct disassemble_info * info, previous_octets = octets; octets = 0; + /* Make sure we don't use relocs from previous instructions. */ + aux->reloc = NULL; + /* If we see more than SKIP_ZEROES octets of zeroes, we just print `...'. */ for (z = addr_offset * opb; z < stop_offset * opb; z++) @@ -1568,8 +1571,6 @@ disassemble_bytes (struct disassemble_info * info, info->flags |= INSN_HAS_RELOC; aux->reloc = **relppp; } - else - aux->reloc = NULL; } octets = (*disassemble_fn) (section->vma + addr_offset, info); diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 417e4f362d3..22df83498f2 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2010-02-05 Christophe Lyon + + * gas/arm/arm-it-auto.d, gas/arm/bl-local-v4t.d, + gas/arm/blx-local.d, gas/arm/thumb-w-good.d: Update expected + results. + 2010-01-30 Richard Sandiford * gas/ppc/xcoff-ref-1.s, gas/ppc/xcoff-ref-1.l: New test. diff --git a/gas/testsuite/gas/arm/arm-it-auto.d b/gas/testsuite/gas/arm/arm-it-auto.d index 68d5d4ac147..bfdd9d64d4a 100644 --- a/gas/testsuite/gas/arm/arm-it-auto.d +++ b/gas/testsuite/gas/arm/arm-it-auto.d @@ -71,11 +71,11 @@ Disassembly of section .text: 0000008c bf18 it ne 0000008e 200d movne r0, #13 00000090 f... f... bl 0000000. -00000094 bd10 pop {r4, pc} -00000096 f... f... bl 0000000. -0000009a bfb8 it lt -0000009c 2000 movlt r0, #0 -0000009e 4348 muls r0, r1 -000000a0 bfb8 it lt -000000a2 2000 movlt r0, #0 -000000a4 4348 muls r0, r1 +00000094 bd10 pop {r4, pc} +00000096 f... f... bl 0000000. +0000009a bfb8 it lt +0000009c 2000 movlt r0, #0 +0000009e 4348 muls r0, r1 +000000a0 bfb8 it lt +000000a2 2000 movlt r0, #0 +000000a4 4348 muls r0, r1 diff --git a/gas/testsuite/gas/arm/bl-local-v4t.d b/gas/testsuite/gas/arm/bl-local-v4t.d index 767d9ce4784..959f6b2babf 100644 --- a/gas/testsuite/gas/arm/bl-local-v4t.d +++ b/gas/testsuite/gas/arm/bl-local-v4t.d @@ -7,13 +7,13 @@ .*: +file format .*arm.* Disassembly of section .text: 0+00 <[^>]*> f7ff fffe bl 00+18 <[^>]*> 0: R_ARM_THM_CALL foo2 -0+1c <[^>]*> d004 beq.n 00+28 <[^>]*> -0+1e <[^>]*> e003 b.n 00+28 <[^>]*> -0+20 <[^>]*> f000 f808 bl 00+34 <[^>]*> -0+24 <[^>]*> f000 f802 bl 00+2c <[^>]*> -0+28 <[^>]*> 46c0 nop ; \(mov r8, r8\) -0+2a <[^>]*> 46c0 nop ; \(mov r8, r8\) -0+2c <[^>]*> 46c0 nop ; \(mov r8, r8\) +0+04 <[^>]*> d004 beq.n 00+10 <[^>]*> +0+06 <[^>]*> e003 b.n 00+10 <[^>]*> +0+08 <[^>]*> f000 f808 bl 00+1c <[^>]*> +0+0c <[^>]*> f000 f802 bl 00+14 <[^>]*> +0+10 <[^>]*> 46c0 nop ; \(mov r8, r8\) +0+12 <[^>]*> 46c0 nop ; \(mov r8, r8\) +0+14 <[^>]*> 46c0 nop ; \(mov r8, r8\) ... -0+30 <[^>]*> e1a00000 nop ; \(mov r0, r0\) -0+34 <[^>]*> e1a00000 nop ; \(mov r0, r0\) +0+18 <[^>]*> e1a00000 nop ; \(mov r0, r0\) +0+1c <[^>]*> e1a00000 nop ; \(mov r0, r0\) diff --git a/gas/testsuite/gas/arm/blx-local.d b/gas/testsuite/gas/arm/blx-local.d index 5aae7bada61..2f9a90dfa42 100644 --- a/gas/testsuite/gas/arm/blx-local.d +++ b/gas/testsuite/gas/arm/blx-local.d @@ -23,7 +23,7 @@ Disassembly of section .text: 0+2c <[^>]*> 0afffffc beq 00000024 0+30 <[^>]*> eafffffb b 00000024 0+34 <[^>]*> 0bfffffe bleq 00000020 34: R_ARM_JUMP24 foo -0+58 <[^>]*> 0afffffe beq 00000020 38: R_ARM_JUMP24 foo -0+5c <[^>]*> eafffffe b 00000020 3c: R_ARM_JUMP24 foo -0+60 <[^>]*> e1a00000 nop ; \(mov r0, r0\) -0+64 <[^>]*> e1a00000 nop ; \(mov r0, r0\) +0+38 <[^>]*> 0afffffe beq 00000020 38: R_ARM_JUMP24 foo +0+3c <[^>]*> eafffffe b 00000020 3c: R_ARM_JUMP24 foo +0+40 <[^>]*> e1a00000 nop ; \(mov r0, r0\) +0+44 <[^>]*> e1a00000 nop ; \(mov r0, r0\) diff --git a/gas/testsuite/gas/arm/thumb-w-good.d b/gas/testsuite/gas/arm/thumb-w-good.d index 645a951faad..d41493f9498 100644 --- a/gas/testsuite/gas/arm/thumb-w-good.d +++ b/gas/testsuite/gas/arm/thumb-w-good.d @@ -6,4 +6,4 @@ Disassembly of section .text: 00000000 <.text> f7ff fffe bl 00000000 -00000004 f3ef 8000 mrs r0, CPSR +00000004 <.text\+0x4> f3ef 8000 mrs r0, CPSR