summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/linux')
-rw-r--r--libc/sysdeps/linux/common/unified_syscall_i386.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/libc/sysdeps/linux/common/unified_syscall_i386.h b/libc/sysdeps/linux/common/unified_syscall_i386.h
index 793337af7..88bfa415f 100644
--- a/libc/sysdeps/linux/common/unified_syscall_i386.h
+++ b/libc/sysdeps/linux/common/unified_syscall_i386.h
@@ -10,15 +10,18 @@
#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" \
+".text\n.align 4\n.global "###name"\n.type "###name",@function\n" \
+#name":;\npushl %ebp;\n" \
"movl %esp,%ebp;\nsubl $4,%esp;\npushl %ebx;\nmovl 8(%ebp),%ebx;\n" \
-"jmp _start_exit" \
+"jmp _start_exit\n.Lfe1"###name":\n.size "###name",.Lfe1"###name"-"###name \
)
#define unified_syscall_body(name) \
__asm__ ( \
-".text\n.align 4\n.global "###name"\n"#name":\nmovb $"__STR_NR_##name \
-",%al;\n jmp __uClibc_syscall" \
+".text\n.align 4\n.global "###name"\n.type "###name",@function\n" \
+#name":\nmovb $"__STR_NR_##name \
+",%al;\n jmp __uClibc_syscall\n.Lfe1"###name":\n.size "###name \
+",.Lfe1"###name"-"###name \
)
#define _syscall0(type,name) \