[fpc-devel] Questions regarding m68k-atari target
Thorsten Otto
admin at tho-otto.de
Tue Jan 25 11:50:11 CET 2022
On Dienstag, 25. Januar 2022 11:27:11 CET Marcus Sackrow via fpc-devel wrote:
> hmm what do you mean? I wrote it, of course.
But is that a script that is stored somewhere, or is it just a setting inside
your Jenkins installation?
>newer ld support that but they can't be compiled for m68k anymore
Yes, a.out support (which is used on Atari) has been dropped in 2.31. But i've
added it back in, and cross-binutils of 2.34 can be found at http://tho-otto.de/crossmint.php#binutils
That does not mean that the section based linking will work. I'll have to
check whether that can somehow be supported.
>If I remember right, it is possible to freely mix assembler and linker on
>Atari, so you can use gas and vlink for example.
Yes, but when i use gas, i think fpc won't generate the required section
directives?
ie. when using -Avasm:
.file "system.pp"
# Begin asmlist al_pure_assembler
.section .text.n_system_$$_get_caller_addr$pointer$pointer$$pointer,"awx"
.balignw 4,0x4e71
.globl SYSTEM_$$_GET_CALLER_ADDR$POINTER$POINTER$$POINTER
SYSTEM_$$_GET_CALLER_ADDR$POINTER$POINTER$$POINTER:
link.w %a6,#-4
# CPU 68000
move.l %a0,%d0
tst.l %d0
beq .Lj1800_1
move.l %d0,%a0
move.l 4(%a0),%d0
.Lj1800_1:
# CPU 68000
unlk %a6
rts
Without it:
.file "system.pp"
# Begin asmlist al_pure_assembler
.text
.balignw 4,0x4e71
.globl SYSTEM_$$_GET_CALLER_ADDR$POINTER$POINTER$$POINTER
SYSTEM_$$_GET_CALLER_ADDR$POINTER$POINTER$$POINTER:
link.w %a6,#-4
# CPU 68000
move.l %a0,%d0
tst.l %d0
beq .Lj1800_1
move.l %d0,%a0
move.l 4(%a0),%d0
.Lj1800_1:
# CPU 68000
unlk %a6
rts
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20220125/1a3f2260/attachment.htm>
More information about the fpc-devel
mailing list