]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Arm: Fix performance issue with thumb-2 tailcalls
authorTamar Christina <tamar.christina@arm.com>
Tue, 20 Aug 2019 15:34:26 +0000 (16:34 +0100)
committerTamar Christina <tamar.christina@arm.com>
Tue, 20 Aug 2019 15:35:28 +0000 (16:35 +0100)
We currently use a padding NOP after a Thumb to Arm interworking veneer (BX pc).
The NOP is never executed but may result in a performance penalty on some cores.

For this reason this patch changes the NOPs after Thumb to Arm veneers into B .-2
and adds a note to this in the source code for future reference.

bfd/ChangeLog:

* elf32-arm.c (elf32_thumb2_plt_entry, elf32_arm_plt_thumb_stub,
elf32_arm_stub_long_branch_v4t_thumb_thumb,
elf32_arm_stub_long_branch_v4t_thumb_arm,
elf32_arm_stub_short_branch_v4t_thumb_arm,
elf32_arm_stub_long_branch_v4t_thumb_arm_pic,
elf32_arm_stub_long_branch_v4t_thumb_thumb_pic,
elf32_arm_stub_long_branch_v4t_thumb_tls_pic): Change nop to branch to
previous instruction.

ld/ChangeLog:

* testsuite/ld-arm/cortex-a8-fix-b-plt.d: Update Testcase.
* testsuite/ld-arm/cortex-a8-fix-b-rel-arm.d: Likewise.
* testsuite/ld-arm/cortex-a8-fix-bcc-plt.d: Likewise.
* testsuite/ld-arm/farcall-cond-thumb-arm.d: Likewise.
* testsuite/ld-arm/farcall-mixed-app.d: Likewise.
* testsuite/ld-arm/farcall-mixed-app2.d: Likewise.
* testsuite/ld-arm/farcall-mixed-lib-v4t.d: Likewise.
* testsuite/ld-arm/farcall-thumb-arm-pic-veneer.d: Likewise.
* testsuite/ld-arm/farcall-thumb-arm-short.d: Likewise.
* testsuite/ld-arm/farcall-thumb-arm.d: Likewise.
* testsuite/ld-arm/farcall-thumb-thumb-pic-veneer.d: Likewise.
* testsuite/ld-arm/farcall-thumb-thumb.d: Likewise.
* testsuite/ld-arm/fix-arm1176-on.d: Likewise.
* testsuite/ld-arm/ifunc-10.dd: Likewise.
* testsuite/ld-arm/ifunc-2.dd: Likewise.
* testsuite/ld-arm/ifunc-4.dd: Likewise.
* testsuite/ld-arm/ifunc-6.dd: Likewise.
* testsuite/ld-arm/ifunc-8.dd: Likewise.
* testsuite/ld-arm/jump-reloc-veneers-long.d: Likewise.
* testsuite/ld-arm/mixed-app.d: Likewise.
* testsuite/ld-arm/thumb2-b-interwork.d: Likewise.
* testsuite/ld-arm/tls-longplt.d: Likewise.
* testsuite/ld-arm/tls-thumb1.d: Likewise.

26 files changed:
bfd/ChangeLog
bfd/elf32-arm.c
ld/ChangeLog
ld/testsuite/ld-arm/cortex-a8-fix-b-plt.d
ld/testsuite/ld-arm/cortex-a8-fix-b-rel-arm.d
ld/testsuite/ld-arm/cortex-a8-fix-bcc-plt.d
ld/testsuite/ld-arm/farcall-cond-thumb-arm.d
ld/testsuite/ld-arm/farcall-mixed-app.d
ld/testsuite/ld-arm/farcall-mixed-app2.d
ld/testsuite/ld-arm/farcall-mixed-lib-v4t.d
ld/testsuite/ld-arm/farcall-thumb-arm-pic-veneer.d
ld/testsuite/ld-arm/farcall-thumb-arm-short.d
ld/testsuite/ld-arm/farcall-thumb-arm.d
ld/testsuite/ld-arm/farcall-thumb-thumb-pic-veneer.d
ld/testsuite/ld-arm/farcall-thumb-thumb.d
ld/testsuite/ld-arm/fix-arm1176-on.d
ld/testsuite/ld-arm/ifunc-10.dd
ld/testsuite/ld-arm/ifunc-2.dd
ld/testsuite/ld-arm/ifunc-4.dd
ld/testsuite/ld-arm/ifunc-6.dd
ld/testsuite/ld-arm/ifunc-8.dd
ld/testsuite/ld-arm/jump-reloc-veneers-long.d
ld/testsuite/ld-arm/mixed-app.d
ld/testsuite/ld-arm/thumb2-b-interwork.d
ld/testsuite/ld-arm/tls-longplt.d
ld/testsuite/ld-arm/tls-thumb1.d

index bfaec7b5d8060aa65fc82403b0b1168feba9ab6f..e566656e613d97838d2688c0d6faffdf6b8fa543 100644 (file)
@@ -1,3 +1,14 @@
+2019-08-20  Tamar Christina  <tamar.christina@arm.com>
+
+       * elf32-arm.c (elf32_thumb2_plt_entry, elf32_arm_plt_thumb_stub,
+       elf32_arm_stub_long_branch_v4t_thumb_thumb,
+       elf32_arm_stub_long_branch_v4t_thumb_arm,
+       elf32_arm_stub_short_branch_v4t_thumb_arm,
+       elf32_arm_stub_long_branch_v4t_thumb_arm_pic,
+       elf32_arm_stub_long_branch_v4t_thumb_thumb_pic,
+       elf32_arm_stub_long_branch_v4t_thumb_tls_pic): Change nop to branch to
+       previous instruction.
+
 2019-08-19  Tom Tromey  <tromey@adacore.com>
 
        * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Create hash table
index f1895df2788483bfe09ffdaebfcedd6b00a1d288..d1548d6db331e630b1e3998c1016fdab42e578b8 100644 (file)
@@ -2329,6 +2329,11 @@ static const unsigned long dl_tlsdesc_lazy_trampoline [] =
   0x00000018, /* 4:   .word  _GLOBAL_OFFSET_TABLE_ - 2b - 8 */
 };
 
+/* NOTE: [Thumb nop sequence]
+   When adding code that transitions from Thumb to Arm the instruction that
+   should be used for the alignment padding should be 0xe7fd (b .-2) instead of
+   a nop for performance reasons.  */
+
 /* ARM FDPIC PLT entry.  */
 /* The last 5 words contain PLT lazy fragment code and data.  */
 static const bfd_vma elf32_arm_fdpic_plt_entry [] =
@@ -2446,8 +2451,8 @@ static const bfd_vma elf32_thumb2_plt_entry [] =
   0x0c00f240,          /* movw    ip, #0xNNNN    */
   0x0c00f2c0,          /* movt    ip, #0xNNNN    */
   0xf8dc44fc,          /* add     ip, pc         */
-  0xbf00f000           /* ldr.w   pc, [ip]       */
-                       /* nop                    */
+  0xe7fdf000           /* ldr.w   pc, [ip]       */
+                       /* b      .-2             */
 };
 
 /* The format of the first entry in the procedure linkage table
@@ -2487,7 +2492,7 @@ static const bfd_vma elf32_arm_vxworks_shared_plt_entry[] =
 static const bfd_vma elf32_arm_plt_thumb_stub [] =
 {
   0x4778,              /* bx pc */
-  0x46c0               /* nop   */
+  0xe7fd               /* b .-2 */
 };
 
 /* The entries in a PLT when using a DLL-based target with multiple
@@ -2574,6 +2579,8 @@ typedef struct
   int                 reloc_addend;
 }  insn_sequence;
 
+/* See note [Thumb nop sequence] when adding a veneer.  */
+
 /* Arm/Thumb -> Arm/Thumb long branch stub. On V5T and above, use blx
    to reach the stub if necessary.  */
 static const insn_sequence elf32_arm_stub_long_branch_any_any[] =
@@ -2624,7 +2631,7 @@ static const insn_sequence elf32_arm_stub_long_branch_thumb2_only_pure[] =
 static const insn_sequence elf32_arm_stub_long_branch_v4t_thumb_thumb[] =
 {
   THUMB16_INSN (0x4778),            /* bx   pc */
-  THUMB16_INSN (0x46c0),            /* nop */
+  THUMB16_INSN (0xe7fd),            /* b   .-2 */
   ARM_INSN (0xe59fc000),            /* ldr  ip, [pc, #0] */
   ARM_INSN (0xe12fff1c),            /* bx   ip */
   DATA_WORD (0, R_ARM_ABS32, 0),     /* dcd  R_ARM_ABS32(X) */
@@ -2635,7 +2642,7 @@ static const insn_sequence elf32_arm_stub_long_branch_v4t_thumb_thumb[] =
 static const insn_sequence elf32_arm_stub_long_branch_v4t_thumb_arm[] =
 {
   THUMB16_INSN (0x4778),            /* bx   pc */
-  THUMB16_INSN (0x46c0),            /* nop   */
+  THUMB16_INSN (0xe7fd),            /* b   .-2 */
   ARM_INSN (0xe51ff004),            /* ldr   pc, [pc, #-4] */
   DATA_WORD (0, R_ARM_ABS32, 0),     /* dcd   R_ARM_ABS32(X) */
 };
@@ -2645,7 +2652,7 @@ static const insn_sequence elf32_arm_stub_long_branch_v4t_thumb_arm[] =
 static const insn_sequence elf32_arm_stub_short_branch_v4t_thumb_arm[] =
 {
   THUMB16_INSN (0x4778),            /* bx   pc */
-  THUMB16_INSN (0x46c0),            /* nop   */
+  THUMB16_INSN (0xe7fd),            /* b   .-2 */
   ARM_REL_INSN (0xea000000, -8),     /* b    (X-8) */
 };
 
@@ -2683,7 +2690,7 @@ static const insn_sequence elf32_arm_stub_long_branch_v4t_arm_thumb_pic[] =
 static const insn_sequence elf32_arm_stub_long_branch_v4t_thumb_arm_pic[] =
 {
   THUMB16_INSN (0x4778),            /* bx   pc */
-  THUMB16_INSN (0x46c0),            /* nop  */
+  THUMB16_INSN (0xe7fd),            /* b   .-2 */
   ARM_INSN (0xe59fc000),            /* ldr  ip, [pc, #0] */
   ARM_INSN (0xe08cf00f),            /* add  pc, ip, pc */
   DATA_WORD (0, R_ARM_REL32, -4),     /* dcd  R_ARM_REL32(X) */
@@ -2707,7 +2714,7 @@ static const insn_sequence elf32_arm_stub_long_branch_thumb_only_pic[] =
 static const insn_sequence elf32_arm_stub_long_branch_v4t_thumb_thumb_pic[] =
 {
   THUMB16_INSN (0x4778),            /* bx   pc */
-  THUMB16_INSN (0x46c0),            /* nop */
+  THUMB16_INSN (0xe7fd),            /* b   .-2 */
   ARM_INSN (0xe59fc004),            /* ldr  ip, [pc, #4] */
   ARM_INSN (0xe08fc00c),            /* add   ip, pc, ip */
   ARM_INSN (0xe12fff1c),            /* bx   ip */
@@ -2728,7 +2735,7 @@ static const insn_sequence elf32_arm_stub_long_branch_any_tls_pic[] =
 static const insn_sequence elf32_arm_stub_long_branch_v4t_thumb_tls_pic[] =
 {
   THUMB16_INSN (0x4778),            /* bx   pc */
-  THUMB16_INSN (0x46c0),            /* nop */
+  THUMB16_INSN (0xe7fd),            /* b   .-2 */
   ARM_INSN (0xe59f1000),            /* ldr  r1, [pc, #0] */
   ARM_INSN (0xe081f00f),            /* add  pc, r1, pc */
   DATA_WORD (0, R_ARM_REL32, -4),    /* dcd  R_ARM_REL32(X) */
index 4837aac2203eef35b3e3d961cd2bf362933a3e2c..4f71ce81bd3985ded1883426604c8c39b02027b6 100644 (file)
@@ -1,3 +1,29 @@
+2019-08-20  Tamar Christina  <tamar.christina@arm.com>
+
+       * testsuite/ld-arm/cortex-a8-fix-b-plt.d: Update Testcase.
+       * testsuite/ld-arm/cortex-a8-fix-b-rel-arm.d: Likewise.
+       * testsuite/ld-arm/cortex-a8-fix-bcc-plt.d: Likewise.
+       * testsuite/ld-arm/farcall-cond-thumb-arm.d: Likewise.
+       * testsuite/ld-arm/farcall-mixed-app.d: Likewise.
+       * testsuite/ld-arm/farcall-mixed-app2.d: Likewise.
+       * testsuite/ld-arm/farcall-mixed-lib-v4t.d: Likewise.
+       * testsuite/ld-arm/farcall-thumb-arm-pic-veneer.d: Likewise.
+       * testsuite/ld-arm/farcall-thumb-arm-short.d: Likewise.
+       * testsuite/ld-arm/farcall-thumb-arm.d: Likewise.
+       * testsuite/ld-arm/farcall-thumb-thumb-pic-veneer.d: Likewise.
+       * testsuite/ld-arm/farcall-thumb-thumb.d: Likewise.
+       * testsuite/ld-arm/fix-arm1176-on.d: Likewise.
+       * testsuite/ld-arm/ifunc-10.dd: Likewise.
+       * testsuite/ld-arm/ifunc-2.dd: Likewise.
+       * testsuite/ld-arm/ifunc-4.dd: Likewise.
+       * testsuite/ld-arm/ifunc-6.dd: Likewise.
+       * testsuite/ld-arm/ifunc-8.dd: Likewise.
+       * testsuite/ld-arm/jump-reloc-veneers-long.d: Likewise.
+       * testsuite/ld-arm/mixed-app.d: Likewise.
+       * testsuite/ld-arm/thumb2-b-interwork.d: Likewise.
+       * testsuite/ld-arm/tls-longplt.d: Likewise.
+       * testsuite/ld-arm/tls-thumb1.d: Likewise.
+
 2019-08-16  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR ld/24905
index bbf68398d6cf5131590bd1e0278059ed4732b62e..54f56e4ccbcf9089497fb2c3a04ba84c8da48796 100644 (file)
@@ -12,7 +12,7 @@ Disassembly of section \.plt:
     8010:      00000ffc        \.word  0x00000ffc
 00008014 <bar@plt>:
     8014:      4778            bx      pc
-    8016:      46c0            nop                     ; \(mov r8, r8\)
+    8016:      e7fd            b.n     .+ <.+>
     8018:      e28fc600        add     ip, pc, #0, 12
     801c:      e28cca00        add     ip, ip, #0, 20
     8020:      e5bcfff8        ldr     pc, \[ip, #4088\]!      ; 0xff8
index 3e52a495563337c84a938aebc0bbf146f5b35bb2..afa1e4897a30a7e890c8e6630286b163a14e2dc6 100644 (file)
@@ -79,5 +79,5 @@ Disassembly of section \.text:
 
 00009010 <__targetfn_from_thumb>:
     9010:      4778            bx      pc
-    9012:      46c0            nop                     ; \(mov r8, r8\)
+    9012:      e7fd            b.n     .+ <.+>
     9014:      eaffffb9        b       8f00 <targetfn>
index 079c928ea0479442712d4d0438ed734708f5ac4c..425c10207f635cef85f06c791c5e232b2fd1e442 100644 (file)
@@ -12,7 +12,7 @@ Disassembly of section \.plt:
     8010:      00001004        \.word  0x00001004
 00008014 <bar@plt>:
     8014:      4778            bx      pc
-    8016:      46c0            nop                     ; \(mov r8, r8\)
+    8016:      e7fd            b.n     .+ <.+>
     8018:      e28fc600        add     ip, pc, #0, 12
     801c:      e28cca01        add     ip, ip, #4096   ; 0x1000
     8020:      e5bcf000        ldr     pc, \[ip, #0\]!
index 0b0172b75ef02ad05d0ba50e7a96e8d242d60e06..c0d96523f452782f191db01802eb615d8c9e5453 100644 (file)
@@ -9,7 +9,7 @@ Disassembly of section .text:
 
 00058008 <__bar_from_thumb>:
    58008:      4778            bx      pc
-   5800a:      46c0            nop                     ; \(mov r8, r8\)
+   5800a:      e7fd            b.n     .+ <.+>
    5800c:      ea02fffb        b       118000 <bar>
 
 Disassembly of section .foo:
index f3be54f13427c033033d550f6502991d09c39fd8..0160f46d3a4858cb7d43a0fb98beed0458d97eaf 100644 (file)
@@ -14,7 +14,7 @@ Disassembly of section .plt:
  .*:   .*
 .* <lib_func2@plt>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e28fc6.*        add     ip, pc, #.*
  .*:   e28cca.*        add     ip, ip, #.*     ; 0x.*
  .*:   e5bcf.*         ldr     pc, \[ip, #.*\]!.*
@@ -82,7 +82,7 @@ Disassembly of section .far_thumb:
 
 .* <__lib_func2_from_thumb>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e51ff004        ldr     pc, \[pc, #-4\] ; 2200018 <__lib_func2_from_thumb\+0x8>
  .*:   000081e0        .word   0x000081e0
  .*:   00000000        .word   0x00000000
index 535710d0bdd3542fd4b19ef7afb0374d9575fcae..0c701485152a8f9b19155b54384a90f13c0e5c80 100644 (file)
@@ -14,7 +14,7 @@ Disassembly of section .plt:
  .*:   .*
 .* <lib_func2@plt>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e28fc6.*        add     ip, pc, #.*
  .*:   e28cca.*        add     ip, ip, #.*     ; 0x.*
  .*:   e5bcf.*         ldr     pc, \[ip, #.*\]!.*
@@ -56,7 +56,7 @@ Disassembly of section .mid_thumb:
 
 .* <__lib_func2_from_thumb>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e51ff004        ldr     pc, \[pc, #-4\] ; 10081e8 <__lib_func2_from_thumb\+0x8>
  .*:   000081e0        .word   0x000081e0
  .*:   00000000        .word   0x00000000
index 3d12e0ae644f5910811ccbedc64b0be9ee91634e..1b15879b253ded7351277387024886dd38c62eef 100644 (file)
@@ -13,25 +13,25 @@ Disassembly of section .plt:
  .*:   .*      .word   .*
 .* <app_func@plt>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e28fc6.*        add     ip, pc, #.*
  .*:   e28cca.*        add     ip, ip, #.*     ; 0x.*
  .*:   e5bcf.*         ldr     pc, \[ip, #.*\]!        ; .*
 .* <app_func_weak@plt>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e28fc6.*        add     ip, pc, #.*
  .*:   e28cca.*        add     ip, ip, #.*     ; 0x.*
  .*:   e5bcf.*         ldr     pc, \[ip, #.*\]!        ; 0x.*
 .* <lib_func3@plt>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e28fc6.*        add     ip, pc, #.*
  .*:   e28cca.*        add     ip, ip, #.*     ; 0x.*
  .*:   e5bcf.*         ldr     pc, \[ip, #.*\]!        ; 0x.*
 .* <lib_func4@plt>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e28fc6.*        add     ip, pc, #.*
  .*:   e28cca.*        add     ip, ip, #.*     ; 0x.*
  .*:   e5bcf.*         ldr     pc, \[ip, #.*\]!        ; 0x.*
@@ -59,28 +59,28 @@ Disassembly of section .text:
 
 .* <__app_func_from_thumb>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e59fc000        ldr     ip, \[pc\]      ; .* <__app_func_from_thumb\+0xc>
  .*:   e08cf00f        add     pc, ip, pc
  .*:   feffff..        .word   0xfeffff..
 
 .* <__lib_func4_from_thumb>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e59fc000        ldr     ip, \[pc\]      ; .* <__lib_func4_from_thumb\+0xc>
  .*:   e08cf00f        add     pc, ip, pc
  .*:   feffff..        .word   0xfeffff..
 
 .* <__app_func_weak_from_thumb>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e59fc000        ldr     ip, \[pc\]      ; .* <__app_func_weak_from_thumb\+0xc>
  .*:   e08cf00f        add     pc, ip, pc
  .*:   feffff..        .word   0xfeffff..
 
 .* <__lib_func3_from_thumb>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e59fc000        ldr     ip, \[pc\]      ; .* <__lib_func3_from_thumb\+0xc>
  .*:   e08cf00f        add     pc, ip, pc
  .*:   feffff..        .word   0xfeffff..
@@ -94,14 +94,14 @@ Disassembly of section .text:
 
 .* <__app_func_weak_from_thumb>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e59fc000        ldr     ip, \[pc\]      ; .* <__app_func_weak_from_thumb\+0xc>
  .*:   e08cf00f        add     pc, ip, pc
  .*:   fdffff34        .word   0xfdffff34
 
 .* <__app_func_from_thumb>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e59fc000        ldr     ip, \[pc\]      ; .* <__app_func_from_thumb\+0xc>
  .*:   e08cf00f        add     pc, ip, pc
  .*:   fdffff14        .word   0xfdffff14
index aff4df79bc484a685ea946037fe612ce7158a1ab..f96d467cea2693fcd503154492a3d97ac4d265e8 100644 (file)
@@ -9,7 +9,7 @@ Disassembly of section .text:
 
 01f01018 <__bar_from_thumb>:
  1f01018:      4778            bx      pc
- 1f0101a:      46c0            nop                     ; \(mov r8, r8\)
+ 1f0101a:      e7fd            b.n     .+ <.+>
  1f0101c:      e59fc000        ldr     ip, \[pc\]      ; 1f01024 <__bar_from_thumb\+0xc>
  1f01020:      e08cf00f        add     pc, ip, pc
  1f01024:      000fffec        .word   0x000fffec
index 4e190394336892f7c7e46a9bd6ac0a2f9eb14b14..b74f385c968e6b3bf7c020df84da032e619d8118 100644 (file)
@@ -9,7 +9,7 @@ Disassembly of section .text:
 
 00001008 <__bar_from_thumb>:
     1008:      4778            bx      pc
-    100a:      46c0            nop                     ; \(mov r8, r8\)
+    100a:      e7fd            b.n     .+ <.+>
     100c:      ea000400        b       2014 <bar>
 Disassembly of section .foo:
 
index 5dc377a0b0654632ec067effa698e00c370679a0..d62649d838a26dbb4c5cf81fab5dc502d35dfd92 100644 (file)
@@ -9,13 +9,13 @@ Disassembly of section .text:
 
 01f01018 <__bar_from_thumb>:
  1f01018:      4778            bx      pc
- 1f0101a:      46c0            nop                     ; \(mov r8, r8\)
+ 1f0101a:      e7fd            b.n     .+ <.+>
  1f0101c:      e51ff004        ldr     pc, \[pc, #-4\] ; 1f01020 <__bar_from_thumb\+0x8>
  1f01020:      02001014        .word   0x02001014
 
 01f01024 <__bar_from_thumb>:
  1f01024:      4778            bx      pc
- 1f01026:      46c0            nop                     ; \(mov r8, r8\)
+ 1f01026:      e7fd            b.n     .+ <.+>
  1f01028:      ea03fff9        b       2001014 <bar>
  1f0102c:      00000000        andeq   r0, r0, r0
 
index 8b14599a53014c5785b84d2836dcd5542f63bc50..0b7184bba2c63f2688745f748de5049e04d818da 100644 (file)
@@ -9,7 +9,7 @@ Disassembly of section .text:
 
 00001008 <__bar_veneer>:
     1008:      4778            bx      pc
-    100a:      46c0            nop                     ; \(mov r8, r8\)
+    100a:      e7fd            b.n     .+ <.+>
     100c:      e59fc004        ldr     ip, \[pc, #4\]  ; 1018 <__bar_veneer\+0x10>
     1010:      e08fc00c        add     ip, pc, ip
     1014:      e12fff1c        bx      ip
index 4f4c2c9bd6f8c1835e8c82d4749d59d79cf86972..0d9a898eff46077d7583a14a60d732bbe90c29e3 100644 (file)
@@ -9,7 +9,7 @@ Disassembly of section .text:
 
 00001008 <__bar_veneer>:
     1008:      4778            bx      pc
-    100a:      46c0            nop                     ; \(mov r8, r8\)
+    100a:      e7fd            b.n     .+ <.+>
     100c:      e59fc000        ldr     ip, \[pc\]      ; 1014 <__bar_veneer\+0xc>
     1010:      e12fff1c        bx      ip
     1014:      02001015        .word   0x02001015
index 834618e89c99dfdffc82cd20de4fc1e56fb681d6..46510dc73d010eafaa73ca8bc25b53d9667ef805 100644 (file)
@@ -9,7 +9,7 @@ Disassembly of section .foo:
 
 [0-9a-f]+ <__func_to_branch_to_veneer>:
  +[0-9a-f]+:   4778            bx      pc
- +[0-9a-f]+:   46c0            nop                     ; \(mov r8, r8\)
+ +[0-9a-f]+:   e7fd            b.n     .+ <.+>
  +[0-9a-f]+:   e51ff004        ldr     pc, \[pc, #-4\] ; 2001020 <__func_to_branch_to_veneer\+0x8>
  +[0-9a-f]+:   ........        .word   0x........
  +[0-9a-f]+:   00000000        .word   0x00000000
index 05e4be5b59b6d58f299ca0650c89c24a5f1c8807..6b9771f6c06a17c1d8d96865973292125982917e 100644 (file)
@@ -18,7 +18,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 00009014 <atf2@plt>:
     9014:      4778            bx      pc
-    9016:      46c0            nop                     ; \(mov r8, r8\)
+    9016:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ atf2's .plt entry
 #------------------------------------------------------------------------------
@@ -37,7 +37,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 00009030 <ttf2@plt>:
     9030:      4778            bx      pc
-    9032:      46c0            nop                     ; \(mov r8, r8\)
+    9032:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ ttf2's .plt entry
 #------------------------------------------------------------------------------
@@ -49,7 +49,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 00009040 <tbf2@plt>:
     9040:      4778            bx      pc
-    9042:      46c0            nop                     ; \(mov r8, r8\)
+    9042:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ tbf2's .plt entry
 #------------------------------------------------------------------------------
@@ -75,7 +75,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 00009068 <abf4@plt>:
     9068:      4778            bx      pc
-    906a:      46c0            nop                     ; \(mov r8, r8\)
+    906a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ abf4's .plt entry
 #------------------------------------------------------------------------------
@@ -87,7 +87,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 00009078 <tbf4@plt>:
     9078:      4778            bx      pc
-    907a:      46c0            nop                     ; \(mov r8, r8\)
+    907a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ tbf4's .plt entry
 #------------------------------------------------------------------------------
@@ -99,7 +99,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 00009088 <ttf4@plt>:
     9088:      4778            bx      pc
-    908a:      46c0            nop                     ; \(mov r8, r8\)
+    908a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ ttf4's .plt entry
 #------------------------------------------------------------------------------
@@ -111,7 +111,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 00009098 <atf4@plt>:
     9098:      4778            bx      pc
-    909a:      46c0            nop                     ; \(mov r8, r8\)
+    909a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ atf4's .plt entry
 #------------------------------------------------------------------------------
@@ -130,7 +130,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 000090b4 <abf2@plt>:
     90b4:      4778            bx      pc
-    90b6:      46c0            nop                     ; \(mov r8, r8\)
+    90b6:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ abf2's .plt entry
 #------------------------------------------------------------------------------
@@ -151,7 +151,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to atf1's .iplt entry
 #------------------------------------------------------------------------------
     90d0:      4778            bx      pc
-    90d2:      46c0            nop                     ; \(mov r8, r8\)
+    90d2:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ atf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -162,7 +162,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to abf1's .iplt entry
 #------------------------------------------------------------------------------
     90e0:      4778            bx      pc
-    90e2:      46c0            nop                     ; \(mov r8, r8\)
+    90e2:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ abf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -179,7 +179,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to ttf1's .iplt entry
 #------------------------------------------------------------------------------
     90fc:      4778            bx      pc
-    90fe:      46c0            nop                     ; \(mov r8, r8\)
+    90fe:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ ttf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -190,7 +190,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to tbf1's .iplt entry
 #------------------------------------------------------------------------------
     910c:      4778            bx      pc
-    910e:      46c0            nop                     ; \(mov r8, r8\)
+    910e:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ tbf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -201,7 +201,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to atf3
 #------------------------------------------------------------------------------
     911c:      4778            bx      pc
-    911e:      46c0            nop                     ; \(mov r8, r8\)
+    911e:      e7fd            b.n     .+ <.+>
 
 00009120 <atf3>:
     9120:      e28fc600        add     ip, pc, #0, 12
@@ -211,7 +211,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to abf3
 #------------------------------------------------------------------------------
     912c:      4778            bx      pc
-    912e:      46c0            nop                     ; \(mov r8, r8\)
+    912e:      e7fd            b.n     .+ <.+>
 
 00009130 <abf3>:
     9130:      e28fc600        add     ip, pc, #0, 12
@@ -221,7 +221,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to ttf3
 #------------------------------------------------------------------------------
     913c:      4778            bx      pc
-    913e:      46c0            nop                     ; \(mov r8, r8\)
+    913e:      e7fd            b.n     .+ <.+>
 
 00009140 <ttf3>:
     9140:      e28fc600        add     ip, pc, #0, 12
@@ -231,7 +231,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to tbf3
 #------------------------------------------------------------------------------
     914c:      4778            bx      pc
-    914e:      46c0            nop                     ; \(mov r8, r8\)
+    914e:      e7fd            b.n     .+ <.+>
 
 00009150 <tbf3>:
     9150:      e28fc600        add     ip, pc, #0, 12
index 91eab540d2968b29b56c03ccd2e6be85e18ffe10..a60ef2b02776dfe103a5db80d97c1d67e621caec 100644 (file)
@@ -21,7 +21,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to f3's .iplt entry
 #------------------------------------------------------------------------------
     9018:      4778            bx      pc
-    901a:      46c0            nop                     ; \(mov r8, r8\)
+    901a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ f3's .iplt entry
 #------------------------------------------------------------------------------
@@ -32,7 +32,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to f4's .iplt entry
 #------------------------------------------------------------------------------
     9028:      4778            bx      pc
-    902a:      46c0            nop                     ; \(mov r8, r8\)
+    902a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ f4's .iplt entry
 #------------------------------------------------------------------------------
@@ -43,7 +43,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to f7
 #------------------------------------------------------------------------------
     9038:      4778            bx      pc
-    903a:      46c0            nop                     ; \(mov r8, r8\)
+    903a:      e7fd            b.n     .+ <.+>
 
 0000903c <f7>:
     903c:      e28fc600        add     ip, pc, #0, 12
@@ -58,7 +58,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to f8
 #------------------------------------------------------------------------------
     9054:      4778            bx      pc
-    9056:      46c0            nop                     ; \(mov r8, r8\)
+    9056:      e7fd            b.n     .+ <.+>
 
 00009058 <f8>:
     9058:      e28fc600        add     ip, pc, #0, 12
index 647a340855d5b67876dc00125aacb8bba0c025cd..89fc34b85df7ca7b4bbd42709b5c2d2a6ec3c323 100644 (file)
@@ -18,7 +18,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 00009014 <atf2@plt>:
     9014:      4778            bx      pc
-    9016:      46c0            nop                     ; \(mov r8, r8\)
+    9016:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ atf2's .plt entry
 #------------------------------------------------------------------------------
@@ -30,7 +30,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 00009024 <ttf2@plt>:
     9024:      4778            bx      pc
-    9026:      46c0            nop                     ; \(mov r8, r8\)
+    9026:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ ttf2's .plt entry
 #------------------------------------------------------------------------------
@@ -42,7 +42,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 00009034 <tbf2@plt>:
     9034:      4778            bx      pc
-    9036:      46c0            nop                     ; \(mov r8, r8\)
+    9036:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ tbf2's .plt entry
 #------------------------------------------------------------------------------
@@ -68,7 +68,7 @@ Disassembly of section \.plt:
 #------------------------------------------------------------------------------
 0000905c <abf2@plt>:
     905c:      4778            bx      pc
-    905e:      46c0            nop                     ; \(mov r8, r8\)
+    905e:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ abf2's .plt entry
 #------------------------------------------------------------------------------
@@ -89,7 +89,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to atf1's .iplt entry
 #------------------------------------------------------------------------------
     9078:      4778            bx      pc
-    907a:      46c0            nop                     ; \(mov r8, r8\)
+    907a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ atf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -100,7 +100,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to abf1's .iplt entry
 #------------------------------------------------------------------------------
     9088:      4778            bx      pc
-    908a:      46c0            nop                     ; \(mov r8, r8\)
+    908a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ abf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -117,7 +117,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to ttf1's .iplt entry
 #------------------------------------------------------------------------------
     90a4:      4778            bx      pc
-    90a6:      46c0            nop                     ; \(mov r8, r8\)
+    90a6:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ ttf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -128,7 +128,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to tbf1's .iplt entry
 #------------------------------------------------------------------------------
     90b4:      4778            bx      pc
-    90b6:      46c0            nop                     ; \(mov r8, r8\)
+    90b6:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ tbf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -145,7 +145,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to atf3's .iplt entry
 #------------------------------------------------------------------------------
     90d0:      4778            bx      pc
-    90d2:      46c0            nop                     ; \(mov r8, r8\)
+    90d2:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ atf3's .iplt entry
 #------------------------------------------------------------------------------
@@ -156,7 +156,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to abf3's .iplt entry
 #------------------------------------------------------------------------------
     90e0:      4778            bx      pc
-    90e2:      46c0            nop                     ; \(mov r8, r8\)
+    90e2:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ abf3's .iplt entry
 #------------------------------------------------------------------------------
@@ -167,7 +167,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to ttf3's .iplt entry
 #------------------------------------------------------------------------------
     90f0:      4778            bx      pc
-    90f2:      46c0            nop                     ; \(mov r8, r8\)
+    90f2:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ ttf3's .iplt entry
 #------------------------------------------------------------------------------
@@ -178,7 +178,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to tbf3's .iplt entry
 #------------------------------------------------------------------------------
     9100:      4778            bx      pc
-    9102:      46c0            nop                     ; \(mov r8, r8\)
+    9102:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ tbf3's .iplt entry
 #------------------------------------------------------------------------------
@@ -195,7 +195,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to abf4's .iplt entry
 #------------------------------------------------------------------------------
     911c:      4778            bx      pc
-    911e:      46c0            nop                     ; \(mov r8, r8\)
+    911e:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ abf4's .iplt entry
 #------------------------------------------------------------------------------
@@ -206,7 +206,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to tbf4's .iplt entry
 #------------------------------------------------------------------------------
     912c:      4778            bx      pc
-    912e:      46c0            nop                     ; \(mov r8, r8\)
+    912e:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ tbf4's .iplt entry
 #------------------------------------------------------------------------------
@@ -217,7 +217,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to ttf4's .iplt entry
 #------------------------------------------------------------------------------
     913c:      4778            bx      pc
-    913e:      46c0            nop                     ; \(mov r8, r8\)
+    913e:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ ttf4's .iplt entry
 #------------------------------------------------------------------------------
@@ -234,7 +234,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to atf4's .iplt entry
 #------------------------------------------------------------------------------
     9158:      4778            bx      pc
-    915a:      46c0            nop                     ; \(mov r8, r8\)
+    915a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ atf4's .iplt entry
 #------------------------------------------------------------------------------
index 3c9cbd5351d162bd19765531d9c1477ea23405b2..c060cb205161c5c5e14447fc5196df7851140249 100644 (file)
@@ -9,7 +9,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to f3's .iplt entry
 #------------------------------------------------------------------------------
     9000:      4778            bx      pc
-    9002:      46c0            nop                     ; \(mov r8, r8\)
+    9002:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ f3's .iplt entry
 #------------------------------------------------------------------------------
@@ -26,7 +26,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to f4's .iplt entry
 #------------------------------------------------------------------------------
     901c:      4778            bx      pc
-    901e:      46c0            nop                     ; \(mov r8, r8\)
+    901e:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ f4's .iplt entry
 #------------------------------------------------------------------------------
index 50a91770926cb02bcf6fd206c2bc1cf3a9c5d603..8216eb148de464935b92d5469a64f5e2205cedb7 100644 (file)
@@ -15,7 +15,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to atf1's .iplt entry
 #------------------------------------------------------------------------------
     900c:      4778            bx      pc
-    900e:      46c0            nop                     ; \(mov r8, r8\)
+    900e:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ atf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -26,7 +26,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to abf1's .iplt entry
 #------------------------------------------------------------------------------
     901c:      4778            bx      pc
-    901e:      46c0            nop                     ; \(mov r8, r8\)
+    901e:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ abf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -43,7 +43,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to ttf1's .iplt entry
 #------------------------------------------------------------------------------
     9038:      4778            bx      pc
-    903a:      46c0            nop                     ; \(mov r8, r8\)
+    903a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ ttf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -54,7 +54,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to tbf1's .iplt entry
 #------------------------------------------------------------------------------
     9048:      4778            bx      pc
-    904a:      46c0            nop                     ; \(mov r8, r8\)
+    904a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ tbf1's .iplt entry
 #------------------------------------------------------------------------------
@@ -65,7 +65,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to atf3's .iplt entry
 #------------------------------------------------------------------------------
     9058:      4778            bx      pc
-    905a:      46c0            nop                     ; \(mov r8, r8\)
+    905a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ atf3's .iplt entry
 #------------------------------------------------------------------------------
@@ -76,7 +76,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to abf3's .iplt entry
 #------------------------------------------------------------------------------
     9068:      4778            bx      pc
-    906a:      46c0            nop                     ; \(mov r8, r8\)
+    906a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ abf3's .iplt entry
 #------------------------------------------------------------------------------
@@ -87,7 +87,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to ttf3's .iplt entry
 #------------------------------------------------------------------------------
     9078:      4778            bx      pc
-    907a:      46c0            nop                     ; \(mov r8, r8\)
+    907a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ ttf3's .iplt entry
 #------------------------------------------------------------------------------
@@ -98,7 +98,7 @@ Disassembly of section \.iplt:
 #------ thumb entry to tbf3's .iplt entry
 #------------------------------------------------------------------------------
     9088:      4778            bx      pc
-    908a:      46c0            nop                     ; \(mov r8, r8\)
+    908a:      e7fd            b.n     .+ <.+>
 #------------------------------------------------------------------------------
 #------ tbf3's .iplt entry
 #------------------------------------------------------------------------------
index ae176bed8ac92aa097b587224b40290af0b0ff45..1edb1b37729e7428f3d72be19e877aab4e040468 100644 (file)
@@ -16,7 +16,7 @@ Disassembly of section .text:
 
 000080.. <[^>]*>:
     80..:      4778            bx      pc
-    80..:      46c0            nop                     ; \(mov r8, r8\)
+    80..:      e7fd            b.n     .+ <.+>
     80..:      e59fc000        ldr     ip, \[pc\]      ; 80.. <__dest_veneer\+0xc>
     80..:      e12fff1c        bx      ip
     80..:      09000001        .word   0x09000001
index 4bcbdad8ded83dc8bef47475400457e4f2f0e96d..99c6e5dcf63574a7e7c5585fec5bfcea0b4a8762 100644 (file)
@@ -14,7 +14,7 @@ Disassembly of section .plt:
  .*:   .*
 .* <lib_func2@plt>:
  .*:   4778            bx      pc
- .*:   46c0            nop                     ; \(mov r8, r8\)
+ .*:   e7fd            b.n     .+ <.+>
  .*:   e28fc6.*        add     ip, pc, #.*
  .*:   e28cca.*        add     ip, ip, #.*     ; 0x.*
  .*:   e5bcf.*         ldr     pc, \[ip, #.*\]!.*
index 67cb8638ec32ff13daee4c31bcc9c77586e7c64c..e01ef5054127f7b7195eba08cb6a9e69e154b8a4 100644 (file)
@@ -11,6 +11,6 @@ Disassembly of section .text:
 
 [0-9a-f]+ <__bar_from_thumb>:
  +[0-9a-f]+:   4778            bx      pc
- +[0-9a-f]+:   46c0            nop                     ; \(mov r8, r8\)
+ +[0-9a-f]+:   e7fd            b.n     .+ <.+>
  +[0-9a-f]+:   eafffffc        b       [0-9a-f]+ <bar>
 
index 066467228b79c9cb548d48b00f81b6ec5cdf9d4c..c7fad340257819bae3c7803683e8bd54f282c1c9 100644 (file)
@@ -58,7 +58,7 @@ Disassembly of section .foo:
 
 04001038 <__unnamed_veneer>:
  4001038:      4778            bx      pc
- 400103a:      46c0            nop                     ; .*
+ 400103a:      e7fd            b.n     .+ <.+>
  400103c:      e51ff004        ldr     pc, \[pc, #-4\] ; .*
  4001040:      000081b0        .word   0x000081b0
  4001044:      00000000        .word   0x00000000
index 3b39f6560422bd8305cf10c3228095defeeb7b28..41d5f8c1b882d854ad73bf546b40b4e0321dc347 100644 (file)
@@ -38,7 +38,7 @@ Disassembly of section .text:
 
 000081a0 <__unnamed_veneer>:
 .*:    4778            bx      pc
-.*:    46c0            nop                     ; .*
+.*:    e7fd            b.n     .+ <.+>
 .*:    e59f1000        ldr     r1, \[pc\]      ; .*
 .*:    e081f00f        add     pc, r1, pc
 .*:    ffffffa0        .word   0xffffffa0
@@ -67,7 +67,7 @@ Disassembly of section .foo:
 
 0400103c <__unnamed_veneer>:
 .*:    4778            bx      pc
-.*:    46c0            nop                     ; .*
+.*:    e7fd            b.n     .+ <.+>
 .*:    e59f1000        ldr     r1, \[pc\]      ; .*
 .*:    e081f00f        add     pc, r1, pc
 .*:    fc007104        .word   0xfc007104