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

[MiNT] "local return" in gnu as



Hi,

I need a help with this piece of fvdi code:

.macro ijsr indirect
  #ifdef mc68000
local return
pea .&return
move.l \indirect,-(a7)
rts
.&return:
  #else
jsr ([\indirect])
  #endif
.endm

we see what it is about, it's macro for transparent usage of indirect jsr, i.e. "ijsr some_pointer" will transform into appropriate instruction(s) on all m68k CPUs.

Trouble is, gcc (gnu as?) differs here from 2.95/2.13 in latest Vincent's patches.  Not only it uses first part of code for -m68060 but what's more important, "local return" is unknown to Vincent's tools. Of course I can change it in fvdi sources but I think we should stick with original behavior.

Btw, is it correct behavior when I invoke "as" directly, it doesn't know stuff like #define ? (it does when I invoke it from gcc)

--
MiKRO / Mystic Bytes
http://mikro.atari.org