Hi Janneke, Nice!
Patch review:
>+#if __ARM_EABI__
>+#define CLEAR_CACHE(BEG,END) \
>+{ \
>+ register unsigned long _beg __asm ("a1") = (unsigned long)(BEG); \
>+ register unsigned long _end __asm ("a2") = (unsigned long)(END); \
>+ register unsigned long _flg __asm ("a3") = 0;
>\
>+ __asm __volatile ("mov r7, 0x9f0002\n\t" \
should be mov r7, 0xf0002 in EABI.
(SWI #(0x900000 + syscallnr) is for OABI syscalls only)
>* sysdeps/unix/sysv/linux/arm/brk.c (__brk): Likewise.Likewise.
Duplicate "Likewise".
Otherwise LGTM!
>But something like puts or printf segfaults "Illegal
>instruction" in strlen:
>--8<---------------cut here---------------start------------->8---
>(gdb) disas /r
>Dump of assembler code for function strlen:
> 0x0000d160 <+0>: 03 10 c0 e3 bic r1, r0, #3
>=> 0x0000d164 <+4>: 04 20 91 e4 ldr r2, [r1], #4
>--8<---------------cut here---------------end--------------->8---
Hmm... looks good to me? Weird.
I'm building it right now and will have a look.
pgpheWF3N5kjV.pgp
Description: OpenPGP digital signature
