On Fri, Mar 17, 2023 at 10:33:22AM -0600, Tom Tromey wrote:
> >>>>> "Segher" == Segher Boessenkool <seg...@kernel.crashing.org> writes:
> 
> Segher> Yes.  On most architectures you can get multiple machine instructions 
> of
> Segher> course (for long calls for example), but on rs6000 (with some ABIs, in
> Segher> some circumstances) we generate a nop insn after calls, so that the
> Segher> linker has a spot to insert fixup code after calls (typically to 
> restore
> Segher> the r2 contents, but it could be anything).
> 
> FWIW I sent a gdb patch to work around this bug.  However, in my
> examples, I only ever saw a nop following the call instruction -- so I
> had gdb check for this.

GCC inserts just a nop in most cases, but the linker or dynamic linker
can replace it.
> Patch is here:
> 
> https://sourceware.org/pipermail/gdb-patches/2023-March/197951.html
> 
> ... but I suppose I should change it to drop the nop check?
> 
> It would of course be better not to have to have gdb work around this
> problem.

Yup.


Segher

Reply via email to