libc: ARM: add size info to gensyscalls
Add size information to gensyscalls output for ARM syscalls with new
BEGIN(x) and END(x) macros in arch-arm/include/machine/asm.h
Change-Id: I791406f8b17abcb83b70a6d15a65a527de15d3f5
diff --git a/libc/tools/gensyscalls.py b/libc/tools/gensyscalls.py
index b58754b..c188e04 100755
--- a/libc/tools/gensyscalls.py
+++ b/libc/tools/gensyscalls.py
@@ -79,15 +79,14 @@
# ARM assembler templates for each syscall stub
#
arm_header = """/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
#include <sys/linux-syscalls.h>
- .text
- .type %(fname)s, #function
- .globl %(fname)s
- .align 4
- .fnstart
+ENTRY(%(fname)s)
+"""
-%(fname)s:
+arm_footer = """\
+END(%(fname)s)
"""
arm_call_default = arm_header + """\
@@ -95,8 +94,7 @@
movs r0, r0
bxpl lr
b __set_syscall_errno
- .fnend
-"""
+""" + arm_footer
arm_call_long = arm_header + """\
.save {r4, r5, lr}
@@ -108,8 +106,7 @@
movs r0, r0
bxpl lr
b __set_syscall_errno
- .fnend
-"""
+""" + arm_footer
arm_eabi_call_default = arm_header + """\
.save {r4, r7}
@@ -120,8 +117,7 @@
movs r0, r0
bxpl lr
b __set_syscall_errno
- .fnend
-"""
+""" + arm_footer
arm_eabi_call_long = arm_header + """\
mov ip, sp
@@ -134,8 +130,7 @@
movs r0, r0
bxpl lr
b __set_syscall_errno
- .fnend
-"""
+""" + arm_footer
# ARM thumb assembler templates for each syscall stub
#