svn commit: trunk/uClibc: include libc/misc/internals libc/sysdeps etc...

Bernhard Fischer rep.nop at aon.at
Thu Aug 24 12:04:18 UTC 2006


On Thu, Aug 24, 2006 at 01:52:19PM +0200, Peter S. Mazinger wrote:
>On Wed, 23 Aug 2006, Mike Frysinger wrote:
>
>> On Wednesday 23 August 2006 19:51, Peter S. Mazinger wrote:
>> > On Wed, 23 Aug 2006 vapier at uclibc.org wrote:
>> > >    trunk/uClibc/libc/sysdeps/linux/arm/bits/syscalls.h
>> >
>> > this will fail on arm
>> > errno.h may be included only for #ifndef __ASSEMBLER__
>> > somehow the include went in at the wrong location
>> 
>> yeah i typoed it, fixed now
>> -mike
>
>Attached the fix:
>- SYS_ify is used by DO_CALL
>- DO_CALL is used if __ASSEMBLER__
>- errno.h in !__ASSEMBLER__
>- s/asm/__asm__/

That last item should read s/asm/__asm__/g
otherwise, we still have a wrong "asm"..

>--- uClibc/libc/sysdeps/linux/arm/bits/syscalls.h	(revision 15970)
>+++ uClibc/libc/sysdeps/linux/arm/bits/syscalls.h	(working copy)
>@@ -114,10 +113,10 @@
> #define INTERNAL_SYSCALL(name, err, nr, args...)			\
>   ({unsigned int _sys_result;						\
>      {									\
>-       register int _a1 asm ("r0"), _nr asm ("r7");			\
>+       register int _a1 __asm__ ("r0"), _nr asm ("r7");			\
........................................here -^
>        LOAD_ARGS_##nr (args)						\
>        _nr = SYS_ify(name);						\
>-       asm volatile ("swi	0x0	@ syscall " #name		\
>+       __asm__ __volatile__ ("swi	0x0	@ syscall " #name		\
> 		     : "=r" (_a1)					\
> 		     : "r" (_nr) ASM_ARGS_##nr				\
> 		     : "memory");					\
[snip]



More information about the uClibc mailing list