=== the same function after linking into libgmp.10.dylib (lldb, live process) ===

libgmp.10.dylib`__gmpn_rsh1add_nc:
->  0x1000d8130 <+0>:  pushq  %rbx
    0x1000d8131 <+1>:  pushq  %rbp
    0x1000d8132 <+2>:  negq   %r8
    0x1000d8135 <+5>:  movq   (%rsi), %rbp
    0x1000d8138 <+8>:  adcq   (%rdx), %rbp
    0x1000d813b <+11>: jmp    0x1000e26c1        ; symbol stub for: __gmpn_rsh1add_nc + 2

__gmpn_rsh1add_n begins at 0x1000d8140, so L(ent) is 0x1000d8148.
The jump goes to 0x1000e26c1 instead -- inside the __stubs section, 2 bytes
into a 6-byte stub entry.  Execution lands mid-instruction.

=== resulting crash (lldb) ===

* thread #1, queue = 'com.apple.main-thread',
  stop reason = EXC_BAD_ACCESS (code=EXC_I386_GPFLT)
    frame #0: 0x00000001000ff6c3 libgmp.10.dylib`__gmpn_rsh1add_nc + 4
libgmp.10.dylib`__gmpn_rsh1add_nc:
->  0x1000ff6c3 <+4>: addl   %eax, (%rax)
libgmp.10.dylib`__gmpn_rsh1sub_n:
    0x1000ff6c5 <+0>: jmpq   *0x12f05(%rip)
libgmp.10.dylib`__gmpn_rshift:
    0x1000ff6cb <+0>: jmpq   *0x12f07(%rip)

(The symbolisation is by nearest preceding stub; the addresses are stub
entries, 6 bytes apart, not the real functions.)
