|  | @@ -0,0 +1,41 @@
 | 
	
		
			
				|  |  | +#undef _syscall0
 | 
	
		
			
				|  |  | +#undef _syscall1
 | 
	
		
			
				|  |  | +#undef _syscall2
 | 
	
		
			
				|  |  | +#undef _syscall3
 | 
	
		
			
				|  |  | +#undef _syscall4
 | 
	
		
			
				|  |  | +#undef _syscall5
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#include "str_syscalls.h"
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#undef uClibc_syscall_exit
 | 
	
		
			
				|  |  | +#define uClibc_syscall_exit(type,name,type1,arg1) \
 | 
	
		
			
				|  |  | +__asm__ ( \
 | 
	
		
			
				|  |  | +".text\n.align 4\n.global "###name"\n"#name":;\npushl %ebp;\n" \
 | 
	
		
			
				|  |  | +"movl %esp,%ebp;\nsubl $4,%esp;\npushl %ebx;\nmovl 8(%ebp),%ebx;\n" \
 | 
	
		
			
				|  |  | +"jmp _start_exit" \
 | 
	
		
			
				|  |  | +)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#define unified_syscall_body(name) \
 | 
	
		
			
				|  |  | +__asm__ ( \
 | 
	
		
			
				|  |  | +".text\n.align 4\n.global "###name"\n"#name":\nmovb $"__STR_NR_##name \
 | 
	
		
			
				|  |  | +",%al;\n jmp __uClibc_syscall" \
 | 
	
		
			
				|  |  | +)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#define _syscall0(type,name) \
 | 
	
		
			
				|  |  | +unified_syscall_body(name)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#define _syscall1(type,name,type1,arg1) \
 | 
	
		
			
				|  |  | +unified_syscall_body(name)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#define _syscall2(type,name,type1,arg1,type2,arg2) \
 | 
	
		
			
				|  |  | +unified_syscall_body(name)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#define _syscall3(type,name,type1,arg1,type2,arg2,type3,arg3) \
 | 
	
		
			
				|  |  | +unified_syscall_body(name)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#define _syscall4(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
 | 
	
		
			
				|  |  | +unified_syscall_body(name)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#define _syscall5(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5) \
 | 
	
		
			
				|  |  | +unified_syscall_body(name)
 | 
	
		
			
				|  |  | +
 |