hi All, Recently I've been trying to use uClibc for quite old arm920t-based board. Some busybox applications (like shell, mount, hostname, wget) would get killed with SIGILL. I managed to debug it down to leaving memcpy() routine, namely to the following code from libc/string/arm/memcpy.S:
[..]
.thumb_func
memcpy:
push {r0, lr}
bl _memcpy
POP_RET
[..]
POP_RET defined as pop {r2, pc} in [1]. On armv4t is just won't switch
CPU back to arm mode, so in my case it seems to be jumping to calling
arm routine while still being in thumb mode.
I'm not sure if this is the case, but I've also found couple of comments
in code:
http://git.uclibc.org/uClibc/tree/ldso/ldso/arm/resolve.S#n62
http://git.uclibc.org/uClibc/tree/libc/sysdeps/linux/arm/crtn.S#n10
stating that some parts aren't even supposed to work on armv4t.
Has armv4t been deprecated for good (I use master branch currently)?
Thanks.
[1]
http://git.uclibc.org/uClibc/tree/libc/sysdeps/linux/arm/bits/arm_asm.h#n15
signature.asc
Description: OpenPGP digital signature
_______________________________________________ uClibc mailing list [email protected] http://lists.busybox.net/mailman/listinfo/uclibc
