[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: m68k assembly question: jsr vs. bsr



Hi Adrian,

On Wed, Feb 1, 2023 at 11:17 PM John Paul Adrian Glaubitz
<glaubitz@physik.fu-berlin.de> wrote:
> Can anyone answer this question regarding the difference between "bsr" and "jsr":
>
> > https://github.com/llvm/llvm-project/issues/60354#issuecomment-1412018845

"jsr" is an absolute jump to a subroutine.
"bsr" is a relative jump (8-bit, 16-bit, or 32-bit signed offset) to a
subroutine,
i.e. typically for calling a nearby function.

There's also "jbsr", which is an assembler macro that picks the most
appropriate: bsr does not need relocation, but bsr.l is 68020+ only.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds


Reply to: