From: Alan Modra Date: Thu, 16 May 2019 13:05:25 +0000 (+0930) Subject: Revert "ARM STM32L4XX erratum test failure" X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a2699ef206aedf8e8d49d8519ae8a535e4b4afe5;p=binutils-gdb.git Revert "ARM STM32L4XX erratum test failure" This reverts commit 3a1bb98c3c4f983b950fbaf2797ddcd21fcb5211. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 22a69fb78ab..e3729bbf1f0 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,7 @@ +2019-05-16 Alan Modra + + * elf32-arm.c (elf32_arm_write_section): Revert last change. + 2019-05-15 Alan Modra * elf32-arm.c (elf32_arm_write_section): Don't leave diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index a8d57019c85..337961d26e1 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -19693,9 +19693,6 @@ elf32_arm_write_section (bfd *output_bfd, bfd_vma branch_to_veneer = stm32l4xx_errnode->u.b.veneer->vma - stm32l4xx_errnode->vma; - /* The instruction is before the label. */ - target -= 4; - if ((signed) branch_to_veneer < -(1 << 24) || (signed) branch_to_veneer >= (1 << 24)) { @@ -19713,15 +19710,15 @@ elf32_arm_write_section (bfd *output_bfd, output_bfd, (uint64_t) (stm32l4xx_errnode->vma - 4), (int64_t) out_of_range); - - /* Don't leave contents uninitialised. */ - bfd_put_16 (output_bfd, 0, contents + target); continue; } insn = create_instruction_branch_absolute (stm32l4xx_errnode->u.b.veneer->vma - stm32l4xx_errnode->vma); + /* The instruction is before the label. */ + target -= 4; + put_thumb2_insn (globals, output_bfd, (bfd_vma) insn, contents + target); }