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
This commit is contained in:
Kenny Root
2011-02-17 10:31:30 -08:00
parent 420878c690
commit f540c03bff

View File

@@ -79,15 +79,14 @@ x86_return = """ ret
# ARM assembler templates for each syscall stub # ARM assembler templates for each syscall stub
# #
arm_header = """/* autogenerated by gensyscalls.py */ arm_header = """/* autogenerated by gensyscalls.py */
#include <machine/asm.h>
#include <sys/linux-syscalls.h> #include <sys/linux-syscalls.h>
.text ENTRY(%(fname)s)
.type %(fname)s, #function """
.globl %(fname)s
.align 4
.fnstart
%(fname)s: arm_footer = """\
END(%(fname)s)
""" """
arm_call_default = arm_header + """\ arm_call_default = arm_header + """\
@@ -95,8 +94,7 @@ arm_call_default = arm_header + """\
movs r0, r0 movs r0, r0
bxpl lr bxpl lr
b __set_syscall_errno b __set_syscall_errno
.fnend """ + arm_footer
"""
arm_call_long = arm_header + """\ arm_call_long = arm_header + """\
.save {r4, r5, lr} .save {r4, r5, lr}
@@ -108,8 +106,7 @@ arm_call_long = arm_header + """\
movs r0, r0 movs r0, r0
bxpl lr bxpl lr
b __set_syscall_errno b __set_syscall_errno
.fnend """ + arm_footer
"""
arm_eabi_call_default = arm_header + """\ arm_eabi_call_default = arm_header + """\
.save {r4, r7} .save {r4, r7}
@@ -120,8 +117,7 @@ arm_eabi_call_default = arm_header + """\
movs r0, r0 movs r0, r0
bxpl lr bxpl lr
b __set_syscall_errno b __set_syscall_errno
.fnend """ + arm_footer
"""
arm_eabi_call_long = arm_header + """\ arm_eabi_call_long = arm_header + """\
mov ip, sp mov ip, sp
@@ -134,8 +130,7 @@ arm_eabi_call_long = arm_header + """\
movs r0, r0 movs r0, r0
bxpl lr bxpl lr
b __set_syscall_errno b __set_syscall_errno
.fnend """ + arm_footer
"""
# ARM thumb assembler templates for each syscall stub # ARM thumb assembler templates for each syscall stub
# #