FreeBSD arm EABI5 documentation?
adr
adr at SDF.ORG
Thu Jul 11 17:50:08 UTC 2019
>>> Curious about 32-bit arm stack alignment requirements in netbsd
>>> (based on a FreeBSD thread making claims that user space allows
>>> 4-byte stack alignment), I went looking around some in NetBSD
Whooow... I don't know what on earth I'm missing, or what I said that
make you contact NetBSD developers talking about "claims".
Just write some ugly assembler:
======================================
.arch armv7-a
.syntax unified
.data
str1:
.string "1-6: %d, %d, %d, %d, %d, %d\n"
.align
.text
.global main
main:
push {r0} @ stack is not 8byte align anymore
mov r8, 10
loop:
ldr r0, =str1
mov r1, 1
mov r2, 2
mov r3, 3
mov r4, 4
mov r5, 5
mov r6, 6
push { r4-r6 } @ alignment will change in the loop
bl printf
subs r8, r8, 1
bne loop
end:
b end
=====================================================
as -a -o test.o test.s > test.l
cc -o test test.o
And it works. In fact it works in FreeBSD with clang.
But a more complex code, as a said before, calling
SDL2 to use graphics works without any problem on NetBSD
and Linux, but not on FreeBSD.
In fact I like that it doesn't work in FreeBSD, because
that made me correct my code.
That is all I was saying, and now I'm going to just shut the * up.
More information about the freebsd-arm
mailing list