Merge "Switch x86 syscall stubs over to the ENTER/END style of the ARM stubs."
diff --git a/libc/arch-x86/include/machine/asm.h b/libc/arch-x86/include/machine/asm.h
index 49d3ea8..2e8d298 100644
--- a/libc/arch-x86/include/machine/asm.h
+++ b/libc/arch-x86/include/machine/asm.h
@@ -1,5 +1,4 @@
-/*	$OpenBSD: asm.h,v 1.8 2004/06/13 21:49:16 niklas Exp $	*/
-/*	$NetBSD: asm.h,v 1.7 1994/10/27 04:15:56 cgd Exp $	*/
+/*	$NetBSD: asm.h,v 1.40 2011/06/16 13:16:20 joerg Exp $	*/
 
 /*-
  * Copyright (c) 1990 The Regents of the University of California.
@@ -38,24 +37,17 @@
 #ifndef _I386_ASM_H_
 #define _I386_ASM_H_
 
-/* This is borrowed from FreeBSD /src/sys/i386/include/asmacros.h v1.27 */
-/*
- * CNAME and HIDENAME manage the relationship between symbol names in C
- * and the equivalent assembly language names.  CNAME is given a name as
- * it would be used in a C program.  It expands to the equivalent assembly
- * language name.  HIDENAME is given an assembly-language name, and expands
- * to a possibly-modified form that will be invisible to C programs.
- */
-#define CNAME(csym)             csym
-#define HIDENAME(asmsym)        .asmsym
+#ifdef _KERNEL_OPT
+#include "opt_multiprocessor.h"
+#endif
 
 #ifdef PIC
 #define PIC_PROLOGUE	\
 	pushl	%ebx;	\
-	call	666f;	\
-666:			\
+	call	1f;	\
+1:			\
 	popl	%ebx;	\
-	addl	$_C_LABEL(_GLOBAL_OFFSET_TABLE_)+[.-666b], %ebx
+	addl	$_GLOBAL_OFFSET_TABLE_+[.-1b], %ebx
 #define PIC_EPILOGUE	\
 	popl	%ebx
 #define PIC_PLT(x)	x@PLT
@@ -69,10 +61,18 @@
 #define PIC_GOTOFF(x)	x
 #endif
 
-#define _C_LABEL(name)	name
+#ifdef __ELF__
+# define _C_LABEL(x)	x
+#else
+# ifdef __STDC__
+#  define _C_LABEL(x)	_ ## x
+# else
+#  define _C_LABEL(x)	_/**/x
+# endif
+#endif
 #define	_ASM_LABEL(x)	x
 
-#define CVAROFF(x, y)	_C_LABEL(x) + y
+#define CVAROFF(x, y)		_C_LABEL(x) + y
 
 #ifdef __STDC__
 # define __CONCAT(x,y)	x ## y
@@ -82,53 +82,137 @@
 # define __STRING(x)	"x"
 #endif
 
-/*
- * WEAK ALIAS: create a weak alias
- */
-#define WEAK_ALIAS(alias,sym) \
-	.weak alias; \
-	alias = sym
-
-/*
- * WARN_REFERENCES: create a warning if the specified symbol is referenced
- */
-#define WARN_REFERENCES(_sym,_msg)	\
-	.section .gnu.warning. ## _sym ; .ascii _msg ; .text
-
 /* let kernels and others override entrypoint alignment */
-#ifndef _ALIGN_TEXT
-# define _ALIGN_TEXT .align 2, 0x90
+#if !defined(_ALIGN_TEXT) && !defined(_KERNEL)
+# ifdef _STANDALONE
+#  define _ALIGN_TEXT .align 1
+# elif defined __ELF__
+#  define _ALIGN_TEXT .align 16
+# else
+#  define _ALIGN_TEXT .align 4
+# endif
 #endif
 
 #define _ENTRY(x) \
 	.text; _ALIGN_TEXT; .globl x; .type x,@function; x:
+#define _LABEL(x) \
+	.globl x; x:
 
-#define _ASM_SIZE(x)    .size x, .-x;
+#ifdef _KERNEL
 
-#define _END(x) \
-	.fnend; \
-	_ASM_SIZE(x)
+#define CPUVAR(off) %fs:__CONCAT(CPU_INFO_,off)
+
+/* XXX Can't use __CONCAT() here, as it would be evaluated incorrectly. */
+#ifdef __ELF__
+#ifdef __STDC__
+#define	IDTVEC(name) \
+	ALIGN_TEXT; .globl X ## name; .type X ## name,@function; X ## name:
+#define	IDTVEC_END(name) \
+	.size X ## name, . - X ## name
+#else 
+#define	IDTVEC(name) \
+	ALIGN_TEXT; .globl X/**/name; .type X/**/name,@function; X/**/name:
+#define	IDTVEC_END(name) \
+	.size X/**/name, . - X/**/name
+#endif /* __STDC__ */ 
+#else 
+#ifdef __STDC__
+#define	IDTVEC(name) \
+	ALIGN_TEXT; .globl _X ## name; .type _X ## name,@function; _X ## name: 
+#define	IDTVEC_END(name) \
+	.size _X ## name, . - _X ## name
+#else
+#define	IDTVEC(name) \
+	ALIGN_TEXT; .globl _X/**/name; .type _X/**/name,@function; _X/**/name:
+#define	IDTVEC_END(name) \
+	.size _X/**/name, . - _X/**/name
+#endif /* __STDC__ */
+#endif /* __ELF__ */
+
+#ifdef _STANDALONE
+#define ALIGN_DATA	.align	4
+#define ALIGN_TEXT	.align	4	/* 4-byte boundaries */
+#define SUPERALIGN_TEXT	.align	16	/* 15-byte boundaries */
+#elif defined __ELF__
+#define ALIGN_DATA	.align	4
+#define ALIGN_TEXT	.align	16	/* 16-byte boundaries */
+#define SUPERALIGN_TEXT	.align	16	/* 16-byte boundaries */
+#else
+#define ALIGN_DATA	.align	2
+#define ALIGN_TEXT	.align	4	/* 16-byte boundaries */
+#define SUPERALIGN_TEXT	.align	4	/* 16-byte boundaries */
+#endif /* __ELF__ */
+
+#define _ALIGN_TEXT ALIGN_TEXT
 
 #ifdef GPROF
-# define _PROF_PROLOGUE	\
+#ifdef __ELF__
+#define	MCOUNT_ASM	call	_C_LABEL(__mcount)
+#else /* __ELF__ */
+#define	MCOUNT_ASM	call	_C_LABEL(mcount)
+#endif /* __ELF__ */
+#else /* GPROF */
+#define	MCOUNT_ASM	/* nothing */
+#endif /* GPROF */
+
+#endif /* _KERNEL */
+
+
+
+#ifdef GPROF
+# ifdef __ELF__
+#  define _PROF_PROLOGUE	\
+	pushl %ebp; movl %esp,%ebp; call PIC_PLT(__mcount); popl %ebp
+# else 
+#  define _PROF_PROLOGUE	\
 	pushl %ebp; movl %esp,%ebp; call PIC_PLT(mcount); popl %ebp
+# endif
 #else
 # define _PROF_PROLOGUE
 #endif
 
 #define	ENTRY(y)	_ENTRY(_C_LABEL(y)); _PROF_PROLOGUE
 #define	NENTRY(y)	_ENTRY(_C_LABEL(y))
-#define	END(y)		_END(_C_LABEL(y))
 #define	ASENTRY(y)	_ENTRY(_ASM_LABEL(y)); _PROF_PROLOGUE
-
-#define ENTRY_PRIVATE(y)  ENTRY(y); .hidden _C_LABEL(y)
-
-
-#define	ALTENTRY(name)	.globl _C_LABEL(name); _C_LABEL(name):
+#define	LABEL(y)	_LABEL(_C_LABEL(y))
+#define	END(y)		.size y, . - y
 
 #define	ASMSTR		.asciz
 
+#ifdef __ELF__
+#define RCSID(x)	.pushsection ".ident"; .asciz x; .popsection
+#else
 #define RCSID(x)	.text; .asciz x
-#define __FBSDID(x)     RCSID(x)
+#endif
+
+#ifdef NO_KERNEL_RCSIDS
+#define	__KERNEL_RCSID(_n, _s)	/* nothing */
+#else
+#define	__KERNEL_RCSID(_n, _s)	RCSID(_s)
+#endif
+
+#ifdef __ELF__
+#define	WEAK_ALIAS(alias,sym)						\
+	.weak alias;							\
+	alias = sym
+#endif
+/*
+ * STRONG_ALIAS: create a strong alias.
+ */
+#define STRONG_ALIAS(alias,sym)						\
+	.globl alias;							\
+	alias = sym
+
+#ifdef __STDC__
+#define	WARN_REFERENCES(sym,msg)					\
+	.pushsection .gnu.warning. ## sym;				\
+	.ascii msg;							\
+	.popsection
+#else
+#define	WARN_REFERENCES(sym,msg)					\
+	.pushsection .gnu.warning./**/sym;				\
+	.ascii msg;							\
+	.popsection
+#endif /* __STDC__ */
 
 #endif /* !_I386_ASM_H_ */
diff --git a/libc/arch-x86/syscalls/__brk.S b/libc/arch-x86/syscalls/__brk.S
index 235cc4f..f7a81ff 100644
--- a/libc/arch-x86/syscalls/__brk.S
+++ b/libc/arch-x86/syscalls/__brk.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __brk, @function
-    .globl __brk
-    .align 4
-
-__brk:
+ENTRY(__brk)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_brk, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(__brk)
diff --git a/libc/arch-x86/syscalls/__fcntl.S b/libc/arch-x86/syscalls/__fcntl.S
index 377f08e..9f74d86 100644
--- a/libc/arch-x86/syscalls/__fcntl.S
+++ b/libc/arch-x86/syscalls/__fcntl.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __fcntl, @function
-    .globl __fcntl
-    .align 4
-
-__fcntl:
+ENTRY(__fcntl)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__fcntl)
diff --git a/libc/arch-x86/syscalls/__fcntl64.S b/libc/arch-x86/syscalls/__fcntl64.S
index 2ed47fe..c59f490 100644
--- a/libc/arch-x86/syscalls/__fcntl64.S
+++ b/libc/arch-x86/syscalls/__fcntl64.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __fcntl64, @function
-    .globl __fcntl64
-    .align 4
-
-__fcntl64:
+ENTRY(__fcntl64)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__fcntl64)
diff --git a/libc/arch-x86/syscalls/__fork.S b/libc/arch-x86/syscalls/__fork.S
index 4b5d1c6..557714d 100644
--- a/libc/arch-x86/syscalls/__fork.S
+++ b/libc/arch-x86/syscalls/__fork.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __fork, @function
-    .globl __fork
-    .align 4
-
-__fork:
+ENTRY(__fork)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_fork, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(__fork)
diff --git a/libc/arch-x86/syscalls/__fstatfs64.S b/libc/arch-x86/syscalls/__fstatfs64.S
index f755244..9943362 100644
--- a/libc/arch-x86/syscalls/__fstatfs64.S
+++ b/libc/arch-x86/syscalls/__fstatfs64.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __fstatfs64, @function
-    .globl __fstatfs64
-    .align 4
-
-__fstatfs64:
+ENTRY(__fstatfs64)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__fstatfs64)
diff --git a/libc/arch-x86/syscalls/__getcpu.S b/libc/arch-x86/syscalls/__getcpu.S
index 0381799..152f5c8 100644
--- a/libc/arch-x86/syscalls/__getcpu.S
+++ b/libc/arch-x86/syscalls/__getcpu.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __getcpu, @function
-    .globl __getcpu
-    .align 4
-
-__getcpu:
+ENTRY(__getcpu)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__getcpu)
diff --git a/libc/arch-x86/syscalls/__getcwd.S b/libc/arch-x86/syscalls/__getcwd.S
index f2bd520..2e30d9b 100644
--- a/libc/arch-x86/syscalls/__getcwd.S
+++ b/libc/arch-x86/syscalls/__getcwd.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __getcwd, @function
-    .globl __getcwd
-    .align 4
-
-__getcwd:
+ENTRY(__getcwd)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__getcwd)
diff --git a/libc/arch-x86/syscalls/__getpriority.S b/libc/arch-x86/syscalls/__getpriority.S
index 08503d8..a015127 100644
--- a/libc/arch-x86/syscalls/__getpriority.S
+++ b/libc/arch-x86/syscalls/__getpriority.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __getpriority, @function
-    .globl __getpriority
-    .align 4
-
-__getpriority:
+ENTRY(__getpriority)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__getpriority)
diff --git a/libc/arch-x86/syscalls/__ioctl.S b/libc/arch-x86/syscalls/__ioctl.S
index cdde9ab..db85a19 100644
--- a/libc/arch-x86/syscalls/__ioctl.S
+++ b/libc/arch-x86/syscalls/__ioctl.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __ioctl, @function
-    .globl __ioctl
-    .align 4
-
-__ioctl:
+ENTRY(__ioctl)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__ioctl)
diff --git a/libc/arch-x86/syscalls/__llseek.S b/libc/arch-x86/syscalls/__llseek.S
index df49a94..7811f6b 100644
--- a/libc/arch-x86/syscalls/__llseek.S
+++ b/libc/arch-x86/syscalls/__llseek.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __llseek, @function
-    .globl __llseek
-    .align 4
-
-__llseek:
+ENTRY(__llseek)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__llseek)
diff --git a/libc/arch-x86/syscalls/__mmap2.S b/libc/arch-x86/syscalls/__mmap2.S
index fea571f..535a891 100644
--- a/libc/arch-x86/syscalls/__mmap2.S
+++ b/libc/arch-x86/syscalls/__mmap2.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __mmap2, @function
-    .globl __mmap2
-    .align 4
-
-__mmap2:
+ENTRY(__mmap2)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -36,3 +32,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__mmap2)
diff --git a/libc/arch-x86/syscalls/__open.S b/libc/arch-x86/syscalls/__open.S
index df6fd93..b878231 100644
--- a/libc/arch-x86/syscalls/__open.S
+++ b/libc/arch-x86/syscalls/__open.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __open, @function
-    .globl __open
-    .align 4
-
-__open:
+ENTRY(__open)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__open)
diff --git a/libc/arch-x86/syscalls/__openat.S b/libc/arch-x86/syscalls/__openat.S
index aa14927..faf8013 100644
--- a/libc/arch-x86/syscalls/__openat.S
+++ b/libc/arch-x86/syscalls/__openat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __openat, @function
-    .globl __openat
-    .align 4
-
-__openat:
+ENTRY(__openat)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__openat)
diff --git a/libc/arch-x86/syscalls/__ptrace.S b/libc/arch-x86/syscalls/__ptrace.S
index bec952b..f574cf0 100644
--- a/libc/arch-x86/syscalls/__ptrace.S
+++ b/libc/arch-x86/syscalls/__ptrace.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __ptrace, @function
-    .globl __ptrace
-    .align 4
-
-__ptrace:
+ENTRY(__ptrace)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__ptrace)
diff --git a/libc/arch-x86/syscalls/__reboot.S b/libc/arch-x86/syscalls/__reboot.S
index 6cb74e2..626a955 100644
--- a/libc/arch-x86/syscalls/__reboot.S
+++ b/libc/arch-x86/syscalls/__reboot.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __reboot, @function
-    .globl __reboot
-    .align 4
-
-__reboot:
+ENTRY(__reboot)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__reboot)
diff --git a/libc/arch-x86/syscalls/__rt_sigaction.S b/libc/arch-x86/syscalls/__rt_sigaction.S
index c57f580..ef9893b 100644
--- a/libc/arch-x86/syscalls/__rt_sigaction.S
+++ b/libc/arch-x86/syscalls/__rt_sigaction.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __rt_sigaction, @function
-    .globl __rt_sigaction
-    .align 4
-
-__rt_sigaction:
+ENTRY(__rt_sigaction)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__rt_sigaction)
diff --git a/libc/arch-x86/syscalls/__rt_sigprocmask.S b/libc/arch-x86/syscalls/__rt_sigprocmask.S
index 623331b..930c9b2 100644
--- a/libc/arch-x86/syscalls/__rt_sigprocmask.S
+++ b/libc/arch-x86/syscalls/__rt_sigprocmask.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __rt_sigprocmask, @function
-    .globl __rt_sigprocmask
-    .align 4
-
-__rt_sigprocmask:
+ENTRY(__rt_sigprocmask)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__rt_sigprocmask)
diff --git a/libc/arch-x86/syscalls/__rt_sigtimedwait.S b/libc/arch-x86/syscalls/__rt_sigtimedwait.S
index 8e14a89..ba867f5 100644
--- a/libc/arch-x86/syscalls/__rt_sigtimedwait.S
+++ b/libc/arch-x86/syscalls/__rt_sigtimedwait.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __rt_sigtimedwait, @function
-    .globl __rt_sigtimedwait
-    .align 4
-
-__rt_sigtimedwait:
+ENTRY(__rt_sigtimedwait)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__rt_sigtimedwait)
diff --git a/libc/arch-x86/syscalls/__sched_getaffinity.S b/libc/arch-x86/syscalls/__sched_getaffinity.S
index 43bfa50..2a40b65 100644
--- a/libc/arch-x86/syscalls/__sched_getaffinity.S
+++ b/libc/arch-x86/syscalls/__sched_getaffinity.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __sched_getaffinity, @function
-    .globl __sched_getaffinity
-    .align 4
-
-__sched_getaffinity:
+ENTRY(__sched_getaffinity)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__sched_getaffinity)
diff --git a/libc/arch-x86/syscalls/__set_thread_area.S b/libc/arch-x86/syscalls/__set_thread_area.S
index cd22040..dc4a561 100644
--- a/libc/arch-x86/syscalls/__set_thread_area.S
+++ b/libc/arch-x86/syscalls/__set_thread_area.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __set_thread_area, @function
-    .globl __set_thread_area
-    .align 4
-
-__set_thread_area:
+ENTRY(__set_thread_area)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_set_thread_area, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(__set_thread_area)
diff --git a/libc/arch-x86/syscalls/__setresuid.S b/libc/arch-x86/syscalls/__setresuid.S
index c492dfb..c604984 100644
--- a/libc/arch-x86/syscalls/__setresuid.S
+++ b/libc/arch-x86/syscalls/__setresuid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __setresuid, @function
-    .globl __setresuid
-    .align 4
-
-__setresuid:
+ENTRY(__setresuid)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__setresuid)
diff --git a/libc/arch-x86/syscalls/__setreuid.S b/libc/arch-x86/syscalls/__setreuid.S
index 111e999..5818739 100644
--- a/libc/arch-x86/syscalls/__setreuid.S
+++ b/libc/arch-x86/syscalls/__setreuid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __setreuid, @function
-    .globl __setreuid
-    .align 4
-
-__setreuid:
+ENTRY(__setreuid)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__setreuid)
diff --git a/libc/arch-x86/syscalls/__setuid.S b/libc/arch-x86/syscalls/__setuid.S
index 1e5f285..df578b8 100644
--- a/libc/arch-x86/syscalls/__setuid.S
+++ b/libc/arch-x86/syscalls/__setuid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __setuid, @function
-    .globl __setuid
-    .align 4
-
-__setuid:
+ENTRY(__setuid)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_setuid32, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(__setuid)
diff --git a/libc/arch-x86/syscalls/__sigsuspend.S b/libc/arch-x86/syscalls/__sigsuspend.S
index 64de756..b09f872 100644
--- a/libc/arch-x86/syscalls/__sigsuspend.S
+++ b/libc/arch-x86/syscalls/__sigsuspend.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __sigsuspend, @function
-    .globl __sigsuspend
-    .align 4
-
-__sigsuspend:
+ENTRY(__sigsuspend)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__sigsuspend)
diff --git a/libc/arch-x86/syscalls/__statfs64.S b/libc/arch-x86/syscalls/__statfs64.S
index a0685b7..4f46bd7 100644
--- a/libc/arch-x86/syscalls/__statfs64.S
+++ b/libc/arch-x86/syscalls/__statfs64.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __statfs64, @function
-    .globl __statfs64
-    .align 4
-
-__statfs64:
+ENTRY(__statfs64)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__statfs64)
diff --git a/libc/arch-x86/syscalls/__sys_clone.S b/libc/arch-x86/syscalls/__sys_clone.S
index 172d6af..a5ce170 100644
--- a/libc/arch-x86/syscalls/__sys_clone.S
+++ b/libc/arch-x86/syscalls/__sys_clone.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __sys_clone, @function
-    .globl __sys_clone
-    .align 4
-
-__sys_clone:
+ENTRY(__sys_clone)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__sys_clone)
diff --git a/libc/arch-x86/syscalls/__syslog.S b/libc/arch-x86/syscalls/__syslog.S
index 3982db4..9d36779 100644
--- a/libc/arch-x86/syscalls/__syslog.S
+++ b/libc/arch-x86/syscalls/__syslog.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __syslog, @function
-    .globl __syslog
-    .align 4
-
-__syslog:
+ENTRY(__syslog)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__syslog)
diff --git a/libc/arch-x86/syscalls/__timer_create.S b/libc/arch-x86/syscalls/__timer_create.S
index 66b0cea..b319f1b 100644
--- a/libc/arch-x86/syscalls/__timer_create.S
+++ b/libc/arch-x86/syscalls/__timer_create.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __timer_create, @function
-    .globl __timer_create
-    .align 4
-
-__timer_create:
+ENTRY(__timer_create)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__timer_create)
diff --git a/libc/arch-x86/syscalls/__timer_delete.S b/libc/arch-x86/syscalls/__timer_delete.S
index 4344d08..7fb5930 100644
--- a/libc/arch-x86/syscalls/__timer_delete.S
+++ b/libc/arch-x86/syscalls/__timer_delete.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __timer_delete, @function
-    .globl __timer_delete
-    .align 4
-
-__timer_delete:
+ENTRY(__timer_delete)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_timer_delete, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(__timer_delete)
diff --git a/libc/arch-x86/syscalls/__timer_getoverrun.S b/libc/arch-x86/syscalls/__timer_getoverrun.S
index 4371415..477a3d8 100644
--- a/libc/arch-x86/syscalls/__timer_getoverrun.S
+++ b/libc/arch-x86/syscalls/__timer_getoverrun.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __timer_getoverrun, @function
-    .globl __timer_getoverrun
-    .align 4
-
-__timer_getoverrun:
+ENTRY(__timer_getoverrun)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_timer_getoverrun, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(__timer_getoverrun)
diff --git a/libc/arch-x86/syscalls/__timer_gettime.S b/libc/arch-x86/syscalls/__timer_gettime.S
index 3923b0a..ee5604d 100644
--- a/libc/arch-x86/syscalls/__timer_gettime.S
+++ b/libc/arch-x86/syscalls/__timer_gettime.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __timer_gettime, @function
-    .globl __timer_gettime
-    .align 4
-
-__timer_gettime:
+ENTRY(__timer_gettime)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__timer_gettime)
diff --git a/libc/arch-x86/syscalls/__timer_settime.S b/libc/arch-x86/syscalls/__timer_settime.S
index cabb7df..9758f61 100644
--- a/libc/arch-x86/syscalls/__timer_settime.S
+++ b/libc/arch-x86/syscalls/__timer_settime.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __timer_settime, @function
-    .globl __timer_settime
-    .align 4
-
-__timer_settime:
+ENTRY(__timer_settime)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__timer_settime)
diff --git a/libc/arch-x86/syscalls/__wait4.S b/libc/arch-x86/syscalls/__wait4.S
index 75ffb95..23165a3 100644
--- a/libc/arch-x86/syscalls/__wait4.S
+++ b/libc/arch-x86/syscalls/__wait4.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __wait4, @function
-    .globl __wait4
-    .align 4
-
-__wait4:
+ENTRY(__wait4)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__wait4)
diff --git a/libc/arch-x86/syscalls/__waitid.S b/libc/arch-x86/syscalls/__waitid.S
index 4dd8c11..12f1ac8 100644
--- a/libc/arch-x86/syscalls/__waitid.S
+++ b/libc/arch-x86/syscalls/__waitid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type __waitid, @function
-    .globl __waitid
-    .align 4
-
-__waitid:
+ENTRY(__waitid)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(__waitid)
diff --git a/libc/arch-x86/syscalls/_exit.S b/libc/arch-x86/syscalls/_exit.S
index 21aa49f..e17f925 100644
--- a/libc/arch-x86/syscalls/_exit.S
+++ b/libc/arch-x86/syscalls/_exit.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type _exit, @function
-    .globl _exit
-    .align 4
-
-_exit:
+ENTRY(_exit)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_exit_group, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(_exit)
diff --git a/libc/arch-x86/syscalls/_exit_thread.S b/libc/arch-x86/syscalls/_exit_thread.S
index 16aaa5b..a371350 100644
--- a/libc/arch-x86/syscalls/_exit_thread.S
+++ b/libc/arch-x86/syscalls/_exit_thread.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type _exit_thread, @function
-    .globl _exit_thread
-    .align 4
-
-_exit_thread:
+ENTRY(_exit_thread)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_exit, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(_exit_thread)
diff --git a/libc/arch-x86/syscalls/_waitpid.S b/libc/arch-x86/syscalls/_waitpid.S
index 7e76496..59bf20e 100644
--- a/libc/arch-x86/syscalls/_waitpid.S
+++ b/libc/arch-x86/syscalls/_waitpid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type _waitpid, @function
-    .globl _waitpid
-    .align 4
-
-_waitpid:
+ENTRY(_waitpid)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(_waitpid)
diff --git a/libc/arch-x86/syscalls/accept.S b/libc/arch-x86/syscalls/accept.S
index ccd56e7..f5fcb5d 100644
--- a/libc/arch-x86/syscalls/accept.S
+++ b/libc/arch-x86/syscalls/accept.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type accept, @function
-    .globl accept
-    .align 4
-
-accept:
+ENTRY(accept)
     pushl   %ebx
     pushl   %ecx
     mov     $5, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(accept)
diff --git a/libc/arch-x86/syscalls/access.S b/libc/arch-x86/syscalls/access.S
index fff26a9..0f68574 100644
--- a/libc/arch-x86/syscalls/access.S
+++ b/libc/arch-x86/syscalls/access.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type access, @function
-    .globl access
-    .align 4
-
-access:
+ENTRY(access)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(access)
diff --git a/libc/arch-x86/syscalls/acct.S b/libc/arch-x86/syscalls/acct.S
index 711b6fc..bf991d6 100644
--- a/libc/arch-x86/syscalls/acct.S
+++ b/libc/arch-x86/syscalls/acct.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type acct, @function
-    .globl acct
-    .align 4
-
-acct:
+ENTRY(acct)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_acct, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(acct)
diff --git a/libc/arch-x86/syscalls/bind.S b/libc/arch-x86/syscalls/bind.S
index 2172cfb..ff6ae9f 100644
--- a/libc/arch-x86/syscalls/bind.S
+++ b/libc/arch-x86/syscalls/bind.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type bind, @function
-    .globl bind
-    .align 4
-
-bind:
+ENTRY(bind)
     pushl   %ebx
     pushl   %ecx
     mov     $2, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(bind)
diff --git a/libc/arch-x86/syscalls/capget.S b/libc/arch-x86/syscalls/capget.S
index e287cb2..55960f1 100644
--- a/libc/arch-x86/syscalls/capget.S
+++ b/libc/arch-x86/syscalls/capget.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type capget, @function
-    .globl capget
-    .align 4
-
-capget:
+ENTRY(capget)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(capget)
diff --git a/libc/arch-x86/syscalls/capset.S b/libc/arch-x86/syscalls/capset.S
index ce71f6e..c8703c7 100644
--- a/libc/arch-x86/syscalls/capset.S
+++ b/libc/arch-x86/syscalls/capset.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type capset, @function
-    .globl capset
-    .align 4
-
-capset:
+ENTRY(capset)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(capset)
diff --git a/libc/arch-x86/syscalls/chdir.S b/libc/arch-x86/syscalls/chdir.S
index be88847..d40d099 100644
--- a/libc/arch-x86/syscalls/chdir.S
+++ b/libc/arch-x86/syscalls/chdir.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type chdir, @function
-    .globl chdir
-    .align 4
-
-chdir:
+ENTRY(chdir)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_chdir, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(chdir)
diff --git a/libc/arch-x86/syscalls/chmod.S b/libc/arch-x86/syscalls/chmod.S
index d023a7d..307e196 100644
--- a/libc/arch-x86/syscalls/chmod.S
+++ b/libc/arch-x86/syscalls/chmod.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type chmod, @function
-    .globl chmod
-    .align 4
-
-chmod:
+ENTRY(chmod)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(chmod)
diff --git a/libc/arch-x86/syscalls/chown.S b/libc/arch-x86/syscalls/chown.S
index 5646088..800bf04 100644
--- a/libc/arch-x86/syscalls/chown.S
+++ b/libc/arch-x86/syscalls/chown.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type chown, @function
-    .globl chown
-    .align 4
-
-chown:
+ENTRY(chown)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(chown)
diff --git a/libc/arch-x86/syscalls/chroot.S b/libc/arch-x86/syscalls/chroot.S
index 461087c..24d2d10 100644
--- a/libc/arch-x86/syscalls/chroot.S
+++ b/libc/arch-x86/syscalls/chroot.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type chroot, @function
-    .globl chroot
-    .align 4
-
-chroot:
+ENTRY(chroot)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_chroot, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(chroot)
diff --git a/libc/arch-x86/syscalls/clock_getres.S b/libc/arch-x86/syscalls/clock_getres.S
index 07742ae..da332aa 100644
--- a/libc/arch-x86/syscalls/clock_getres.S
+++ b/libc/arch-x86/syscalls/clock_getres.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type clock_getres, @function
-    .globl clock_getres
-    .align 4
-
-clock_getres:
+ENTRY(clock_getres)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(clock_getres)
diff --git a/libc/arch-x86/syscalls/clock_gettime.S b/libc/arch-x86/syscalls/clock_gettime.S
index bfe14a4..41ac5e2 100644
--- a/libc/arch-x86/syscalls/clock_gettime.S
+++ b/libc/arch-x86/syscalls/clock_gettime.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type clock_gettime, @function
-    .globl clock_gettime
-    .align 4
-
-clock_gettime:
+ENTRY(clock_gettime)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(clock_gettime)
diff --git a/libc/arch-x86/syscalls/clock_nanosleep.S b/libc/arch-x86/syscalls/clock_nanosleep.S
index 23e1e6f..cd163df 100644
--- a/libc/arch-x86/syscalls/clock_nanosleep.S
+++ b/libc/arch-x86/syscalls/clock_nanosleep.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type clock_nanosleep, @function
-    .globl clock_nanosleep
-    .align 4
-
-clock_nanosleep:
+ENTRY(clock_nanosleep)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(clock_nanosleep)
diff --git a/libc/arch-x86/syscalls/clock_settime.S b/libc/arch-x86/syscalls/clock_settime.S
index 58495ba..18237c4 100644
--- a/libc/arch-x86/syscalls/clock_settime.S
+++ b/libc/arch-x86/syscalls/clock_settime.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type clock_settime, @function
-    .globl clock_settime
-    .align 4
-
-clock_settime:
+ENTRY(clock_settime)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(clock_settime)
diff --git a/libc/arch-x86/syscalls/close.S b/libc/arch-x86/syscalls/close.S
index 1944a83..76175c7 100644
--- a/libc/arch-x86/syscalls/close.S
+++ b/libc/arch-x86/syscalls/close.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type close, @function
-    .globl close
-    .align 4
-
-close:
+ENTRY(close)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_close, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(close)
diff --git a/libc/arch-x86/syscalls/connect.S b/libc/arch-x86/syscalls/connect.S
index 8b8ce4e..e87b123 100644
--- a/libc/arch-x86/syscalls/connect.S
+++ b/libc/arch-x86/syscalls/connect.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type connect, @function
-    .globl connect
-    .align 4
-
-connect:
+ENTRY(connect)
     pushl   %ebx
     pushl   %ecx
     mov     $3, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(connect)
diff --git a/libc/arch-x86/syscalls/delete_module.S b/libc/arch-x86/syscalls/delete_module.S
index 6865d6a..10a06a3 100644
--- a/libc/arch-x86/syscalls/delete_module.S
+++ b/libc/arch-x86/syscalls/delete_module.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type delete_module, @function
-    .globl delete_module
-    .align 4
-
-delete_module:
+ENTRY(delete_module)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(delete_module)
diff --git a/libc/arch-x86/syscalls/dup.S b/libc/arch-x86/syscalls/dup.S
index 155de79..80259fe 100644
--- a/libc/arch-x86/syscalls/dup.S
+++ b/libc/arch-x86/syscalls/dup.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type dup, @function
-    .globl dup
-    .align 4
-
-dup:
+ENTRY(dup)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_dup, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(dup)
diff --git a/libc/arch-x86/syscalls/dup2.S b/libc/arch-x86/syscalls/dup2.S
index 59f8329..43def66 100644
--- a/libc/arch-x86/syscalls/dup2.S
+++ b/libc/arch-x86/syscalls/dup2.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type dup2, @function
-    .globl dup2
-    .align 4
-
-dup2:
+ENTRY(dup2)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(dup2)
diff --git a/libc/arch-x86/syscalls/epoll_create.S b/libc/arch-x86/syscalls/epoll_create.S
index 8106c58..0bdc885 100644
--- a/libc/arch-x86/syscalls/epoll_create.S
+++ b/libc/arch-x86/syscalls/epoll_create.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type epoll_create, @function
-    .globl epoll_create
-    .align 4
-
-epoll_create:
+ENTRY(epoll_create)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_epoll_create, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(epoll_create)
diff --git a/libc/arch-x86/syscalls/epoll_ctl.S b/libc/arch-x86/syscalls/epoll_ctl.S
index ff2c112..43175d2 100644
--- a/libc/arch-x86/syscalls/epoll_ctl.S
+++ b/libc/arch-x86/syscalls/epoll_ctl.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type epoll_ctl, @function
-    .globl epoll_ctl
-    .align 4
-
-epoll_ctl:
+ENTRY(epoll_ctl)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(epoll_ctl)
diff --git a/libc/arch-x86/syscalls/epoll_wait.S b/libc/arch-x86/syscalls/epoll_wait.S
index 3d81a14..e2d61c0 100644
--- a/libc/arch-x86/syscalls/epoll_wait.S
+++ b/libc/arch-x86/syscalls/epoll_wait.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type epoll_wait, @function
-    .globl epoll_wait
-    .align 4
-
-epoll_wait:
+ENTRY(epoll_wait)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(epoll_wait)
diff --git a/libc/arch-x86/syscalls/eventfd.S b/libc/arch-x86/syscalls/eventfd.S
index 104c842..338696f 100644
--- a/libc/arch-x86/syscalls/eventfd.S
+++ b/libc/arch-x86/syscalls/eventfd.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type eventfd, @function
-    .globl eventfd
-    .align 4
-
-eventfd:
+ENTRY(eventfd)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(eventfd)
diff --git a/libc/arch-x86/syscalls/execve.S b/libc/arch-x86/syscalls/execve.S
index 0ab1d75..c7e3ca5 100644
--- a/libc/arch-x86/syscalls/execve.S
+++ b/libc/arch-x86/syscalls/execve.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type execve, @function
-    .globl execve
-    .align 4
-
-execve:
+ENTRY(execve)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(execve)
diff --git a/libc/arch-x86/syscalls/faccessat.S b/libc/arch-x86/syscalls/faccessat.S
index 2010e57..6733029 100644
--- a/libc/arch-x86/syscalls/faccessat.S
+++ b/libc/arch-x86/syscalls/faccessat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type faccessat, @function
-    .globl faccessat
-    .align 4
-
-faccessat:
+ENTRY(faccessat)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(faccessat)
diff --git a/libc/arch-x86/syscalls/fchdir.S b/libc/arch-x86/syscalls/fchdir.S
index 4e681be..23aa6e2 100644
--- a/libc/arch-x86/syscalls/fchdir.S
+++ b/libc/arch-x86/syscalls/fchdir.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fchdir, @function
-    .globl fchdir
-    .align 4
-
-fchdir:
+ENTRY(fchdir)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_fchdir, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(fchdir)
diff --git a/libc/arch-x86/syscalls/fchmod.S b/libc/arch-x86/syscalls/fchmod.S
index 58f8a94..019eb07 100644
--- a/libc/arch-x86/syscalls/fchmod.S
+++ b/libc/arch-x86/syscalls/fchmod.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fchmod, @function
-    .globl fchmod
-    .align 4
-
-fchmod:
+ENTRY(fchmod)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(fchmod)
diff --git a/libc/arch-x86/syscalls/fchmodat.S b/libc/arch-x86/syscalls/fchmodat.S
index b5b9c6d..f7292f9 100644
--- a/libc/arch-x86/syscalls/fchmodat.S
+++ b/libc/arch-x86/syscalls/fchmodat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fchmodat, @function
-    .globl fchmodat
-    .align 4
-
-fchmodat:
+ENTRY(fchmodat)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(fchmodat)
diff --git a/libc/arch-x86/syscalls/fchown.S b/libc/arch-x86/syscalls/fchown.S
index c648d7f..f17c0d6 100644
--- a/libc/arch-x86/syscalls/fchown.S
+++ b/libc/arch-x86/syscalls/fchown.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fchown, @function
-    .globl fchown
-    .align 4
-
-fchown:
+ENTRY(fchown)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(fchown)
diff --git a/libc/arch-x86/syscalls/fchownat.S b/libc/arch-x86/syscalls/fchownat.S
index 3bec843..7648d79 100644
--- a/libc/arch-x86/syscalls/fchownat.S
+++ b/libc/arch-x86/syscalls/fchownat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fchownat, @function
-    .globl fchownat
-    .align 4
-
-fchownat:
+ENTRY(fchownat)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(fchownat)
diff --git a/libc/arch-x86/syscalls/fdatasync.S b/libc/arch-x86/syscalls/fdatasync.S
index b86c0f8..2808e0f 100644
--- a/libc/arch-x86/syscalls/fdatasync.S
+++ b/libc/arch-x86/syscalls/fdatasync.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fdatasync, @function
-    .globl fdatasync
-    .align 4
-
-fdatasync:
+ENTRY(fdatasync)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_fdatasync, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(fdatasync)
diff --git a/libc/arch-x86/syscalls/fgetxattr.S b/libc/arch-x86/syscalls/fgetxattr.S
index d9f582f..beaab09 100644
--- a/libc/arch-x86/syscalls/fgetxattr.S
+++ b/libc/arch-x86/syscalls/fgetxattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fgetxattr, @function
-    .globl fgetxattr
-    .align 4
-
-fgetxattr:
+ENTRY(fgetxattr)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(fgetxattr)
diff --git a/libc/arch-x86/syscalls/flistxattr.S b/libc/arch-x86/syscalls/flistxattr.S
index 43ff73d..95935c0 100644
--- a/libc/arch-x86/syscalls/flistxattr.S
+++ b/libc/arch-x86/syscalls/flistxattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type flistxattr, @function
-    .globl flistxattr
-    .align 4
-
-flistxattr:
+ENTRY(flistxattr)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(flistxattr)
diff --git a/libc/arch-x86/syscalls/flock.S b/libc/arch-x86/syscalls/flock.S
index 1ca09a5..156844c 100644
--- a/libc/arch-x86/syscalls/flock.S
+++ b/libc/arch-x86/syscalls/flock.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type flock, @function
-    .globl flock
-    .align 4
-
-flock:
+ENTRY(flock)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(flock)
diff --git a/libc/arch-x86/syscalls/fremovexattr.S b/libc/arch-x86/syscalls/fremovexattr.S
index eeed57f..32d0bdc 100644
--- a/libc/arch-x86/syscalls/fremovexattr.S
+++ b/libc/arch-x86/syscalls/fremovexattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fremovexattr, @function
-    .globl fremovexattr
-    .align 4
-
-fremovexattr:
+ENTRY(fremovexattr)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(fremovexattr)
diff --git a/libc/arch-x86/syscalls/fsetxattr.S b/libc/arch-x86/syscalls/fsetxattr.S
index a70ca4f..c3d588e 100644
--- a/libc/arch-x86/syscalls/fsetxattr.S
+++ b/libc/arch-x86/syscalls/fsetxattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fsetxattr, @function
-    .globl fsetxattr
-    .align 4
-
-fsetxattr:
+ENTRY(fsetxattr)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(fsetxattr)
diff --git a/libc/arch-x86/syscalls/fstat.S b/libc/arch-x86/syscalls/fstat.S
index 8f58316..95301d9 100644
--- a/libc/arch-x86/syscalls/fstat.S
+++ b/libc/arch-x86/syscalls/fstat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fstat, @function
-    .globl fstat
-    .align 4
-
-fstat:
+ENTRY(fstat)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(fstat)
diff --git a/libc/arch-x86/syscalls/fstatat.S b/libc/arch-x86/syscalls/fstatat.S
index 4926e99..947f4da 100644
--- a/libc/arch-x86/syscalls/fstatat.S
+++ b/libc/arch-x86/syscalls/fstatat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fstatat, @function
-    .globl fstatat
-    .align 4
-
-fstatat:
+ENTRY(fstatat)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(fstatat)
diff --git a/libc/arch-x86/syscalls/fsync.S b/libc/arch-x86/syscalls/fsync.S
index d9fd225..363b334 100644
--- a/libc/arch-x86/syscalls/fsync.S
+++ b/libc/arch-x86/syscalls/fsync.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type fsync, @function
-    .globl fsync
-    .align 4
-
-fsync:
+ENTRY(fsync)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_fsync, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(fsync)
diff --git a/libc/arch-x86/syscalls/ftruncate.S b/libc/arch-x86/syscalls/ftruncate.S
index 25b7df5..1ed3f96 100644
--- a/libc/arch-x86/syscalls/ftruncate.S
+++ b/libc/arch-x86/syscalls/ftruncate.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type ftruncate, @function
-    .globl ftruncate
-    .align 4
-
-ftruncate:
+ENTRY(ftruncate)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(ftruncate)
diff --git a/libc/arch-x86/syscalls/ftruncate64.S b/libc/arch-x86/syscalls/ftruncate64.S
index 66835ab..fa6dbef 100644
--- a/libc/arch-x86/syscalls/ftruncate64.S
+++ b/libc/arch-x86/syscalls/ftruncate64.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type ftruncate64, @function
-    .globl ftruncate64
-    .align 4
-
-ftruncate64:
+ENTRY(ftruncate64)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(ftruncate64)
diff --git a/libc/arch-x86/syscalls/futex.S b/libc/arch-x86/syscalls/futex.S
index ac51316..f72be1b 100644
--- a/libc/arch-x86/syscalls/futex.S
+++ b/libc/arch-x86/syscalls/futex.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type futex, @function
-    .globl futex
-    .align 4
-
-futex:
+ENTRY(futex)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -36,3 +32,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(futex)
diff --git a/libc/arch-x86/syscalls/getdents.S b/libc/arch-x86/syscalls/getdents.S
index b8c527f..c5d2721 100644
--- a/libc/arch-x86/syscalls/getdents.S
+++ b/libc/arch-x86/syscalls/getdents.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getdents, @function
-    .globl getdents
-    .align 4
-
-getdents:
+ENTRY(getdents)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(getdents)
diff --git a/libc/arch-x86/syscalls/getegid.S b/libc/arch-x86/syscalls/getegid.S
index e34a147..c26ebc2 100644
--- a/libc/arch-x86/syscalls/getegid.S
+++ b/libc/arch-x86/syscalls/getegid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getegid, @function
-    .globl getegid
-    .align 4
-
-getegid:
+ENTRY(getegid)
     movl    $__NR_getegid32, %eax
     int     $0x80
     cmpl    $-129, %eax
@@ -18,3 +14,4 @@
     orl     $-1, %eax
 1:
     ret
+END(getegid)
diff --git a/libc/arch-x86/syscalls/geteuid.S b/libc/arch-x86/syscalls/geteuid.S
index 8ec7297..a7761e8 100644
--- a/libc/arch-x86/syscalls/geteuid.S
+++ b/libc/arch-x86/syscalls/geteuid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type geteuid, @function
-    .globl geteuid
-    .align 4
-
-geteuid:
+ENTRY(geteuid)
     movl    $__NR_geteuid32, %eax
     int     $0x80
     cmpl    $-129, %eax
@@ -18,3 +14,4 @@
     orl     $-1, %eax
 1:
     ret
+END(geteuid)
diff --git a/libc/arch-x86/syscalls/getgid.S b/libc/arch-x86/syscalls/getgid.S
index d69d722..7a51200 100644
--- a/libc/arch-x86/syscalls/getgid.S
+++ b/libc/arch-x86/syscalls/getgid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getgid, @function
-    .globl getgid
-    .align 4
-
-getgid:
+ENTRY(getgid)
     movl    $__NR_getgid32, %eax
     int     $0x80
     cmpl    $-129, %eax
@@ -18,3 +14,4 @@
     orl     $-1, %eax
 1:
     ret
+END(getgid)
diff --git a/libc/arch-x86/syscalls/getgroups.S b/libc/arch-x86/syscalls/getgroups.S
index f6a9912..35bc3f5 100644
--- a/libc/arch-x86/syscalls/getgroups.S
+++ b/libc/arch-x86/syscalls/getgroups.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getgroups, @function
-    .globl getgroups
-    .align 4
-
-getgroups:
+ENTRY(getgroups)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(getgroups)
diff --git a/libc/arch-x86/syscalls/getitimer.S b/libc/arch-x86/syscalls/getitimer.S
index f170ebf..79957da 100644
--- a/libc/arch-x86/syscalls/getitimer.S
+++ b/libc/arch-x86/syscalls/getitimer.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getitimer, @function
-    .globl getitimer
-    .align 4
-
-getitimer:
+ENTRY(getitimer)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(getitimer)
diff --git a/libc/arch-x86/syscalls/getpeername.S b/libc/arch-x86/syscalls/getpeername.S
index b6f8eb8..3831990 100644
--- a/libc/arch-x86/syscalls/getpeername.S
+++ b/libc/arch-x86/syscalls/getpeername.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getpeername, @function
-    .globl getpeername
-    .align 4
-
-getpeername:
+ENTRY(getpeername)
     pushl   %ebx
     pushl   %ecx
     mov     $7, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(getpeername)
diff --git a/libc/arch-x86/syscalls/getpgid.S b/libc/arch-x86/syscalls/getpgid.S
index ca1e659..f49abbf 100644
--- a/libc/arch-x86/syscalls/getpgid.S
+++ b/libc/arch-x86/syscalls/getpgid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getpgid, @function
-    .globl getpgid
-    .align 4
-
-getpgid:
+ENTRY(getpgid)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_getpgid, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(getpgid)
diff --git a/libc/arch-x86/syscalls/getpid.S b/libc/arch-x86/syscalls/getpid.S
index df43b88..29703e8 100644
--- a/libc/arch-x86/syscalls/getpid.S
+++ b/libc/arch-x86/syscalls/getpid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getpid, @function
-    .globl getpid
-    .align 4
-
-getpid:
+ENTRY(getpid)
     movl    $__NR_getpid, %eax
     int     $0x80
     cmpl    $-129, %eax
@@ -18,3 +14,4 @@
     orl     $-1, %eax
 1:
     ret
+END(getpid)
diff --git a/libc/arch-x86/syscalls/getppid.S b/libc/arch-x86/syscalls/getppid.S
index 9a882bd..dc89d6e 100644
--- a/libc/arch-x86/syscalls/getppid.S
+++ b/libc/arch-x86/syscalls/getppid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getppid, @function
-    .globl getppid
-    .align 4
-
-getppid:
+ENTRY(getppid)
     movl    $__NR_getppid, %eax
     int     $0x80
     cmpl    $-129, %eax
@@ -18,3 +14,4 @@
     orl     $-1, %eax
 1:
     ret
+END(getppid)
diff --git a/libc/arch-x86/syscalls/getresgid.S b/libc/arch-x86/syscalls/getresgid.S
index d43aec4..08a37e7 100644
--- a/libc/arch-x86/syscalls/getresgid.S
+++ b/libc/arch-x86/syscalls/getresgid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getresgid, @function
-    .globl getresgid
-    .align 4
-
-getresgid:
+ENTRY(getresgid)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(getresgid)
diff --git a/libc/arch-x86/syscalls/getresuid.S b/libc/arch-x86/syscalls/getresuid.S
index f489d40..435a901 100644
--- a/libc/arch-x86/syscalls/getresuid.S
+++ b/libc/arch-x86/syscalls/getresuid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getresuid, @function
-    .globl getresuid
-    .align 4
-
-getresuid:
+ENTRY(getresuid)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(getresuid)
diff --git a/libc/arch-x86/syscalls/getrlimit.S b/libc/arch-x86/syscalls/getrlimit.S
index f4c334f..8f6edd6 100644
--- a/libc/arch-x86/syscalls/getrlimit.S
+++ b/libc/arch-x86/syscalls/getrlimit.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getrlimit, @function
-    .globl getrlimit
-    .align 4
-
-getrlimit:
+ENTRY(getrlimit)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(getrlimit)
diff --git a/libc/arch-x86/syscalls/getrusage.S b/libc/arch-x86/syscalls/getrusage.S
index 750ab5b..ee47f3d 100644
--- a/libc/arch-x86/syscalls/getrusage.S
+++ b/libc/arch-x86/syscalls/getrusage.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getrusage, @function
-    .globl getrusage
-    .align 4
-
-getrusage:
+ENTRY(getrusage)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(getrusage)
diff --git a/libc/arch-x86/syscalls/getsid.S b/libc/arch-x86/syscalls/getsid.S
index 7046b9a..876bf6a 100644
--- a/libc/arch-x86/syscalls/getsid.S
+++ b/libc/arch-x86/syscalls/getsid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getsid, @function
-    .globl getsid
-    .align 4
-
-getsid:
+ENTRY(getsid)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_getsid, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(getsid)
diff --git a/libc/arch-x86/syscalls/getsockname.S b/libc/arch-x86/syscalls/getsockname.S
index 884acd9..b28ecb8 100644
--- a/libc/arch-x86/syscalls/getsockname.S
+++ b/libc/arch-x86/syscalls/getsockname.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getsockname, @function
-    .globl getsockname
-    .align 4
-
-getsockname:
+ENTRY(getsockname)
     pushl   %ebx
     pushl   %ecx
     mov     $6, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(getsockname)
diff --git a/libc/arch-x86/syscalls/getsockopt.S b/libc/arch-x86/syscalls/getsockopt.S
index a606532..190b6f2 100644
--- a/libc/arch-x86/syscalls/getsockopt.S
+++ b/libc/arch-x86/syscalls/getsockopt.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getsockopt, @function
-    .globl getsockopt
-    .align 4
-
-getsockopt:
+ENTRY(getsockopt)
     pushl   %ebx
     pushl   %ecx
     mov     $15, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(getsockopt)
diff --git a/libc/arch-x86/syscalls/gettid.S b/libc/arch-x86/syscalls/gettid.S
index 2e8cb59..c1e6ba0 100644
--- a/libc/arch-x86/syscalls/gettid.S
+++ b/libc/arch-x86/syscalls/gettid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type gettid, @function
-    .globl gettid
-    .align 4
-
-gettid:
+ENTRY(gettid)
     movl    $__NR_gettid, %eax
     int     $0x80
     cmpl    $-129, %eax
@@ -18,3 +14,4 @@
     orl     $-1, %eax
 1:
     ret
+END(gettid)
diff --git a/libc/arch-x86/syscalls/gettimeofday.S b/libc/arch-x86/syscalls/gettimeofday.S
index feffe92..34b9982 100644
--- a/libc/arch-x86/syscalls/gettimeofday.S
+++ b/libc/arch-x86/syscalls/gettimeofday.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type gettimeofday, @function
-    .globl gettimeofday
-    .align 4
-
-gettimeofday:
+ENTRY(gettimeofday)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(gettimeofday)
diff --git a/libc/arch-x86/syscalls/getuid.S b/libc/arch-x86/syscalls/getuid.S
index 635105e..e82b8b0 100644
--- a/libc/arch-x86/syscalls/getuid.S
+++ b/libc/arch-x86/syscalls/getuid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getuid, @function
-    .globl getuid
-    .align 4
-
-getuid:
+ENTRY(getuid)
     movl    $__NR_getuid32, %eax
     int     $0x80
     cmpl    $-129, %eax
@@ -18,3 +14,4 @@
     orl     $-1, %eax
 1:
     ret
+END(getuid)
diff --git a/libc/arch-x86/syscalls/getxattr.S b/libc/arch-x86/syscalls/getxattr.S
index 80d2fc4..92f7c30 100644
--- a/libc/arch-x86/syscalls/getxattr.S
+++ b/libc/arch-x86/syscalls/getxattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type getxattr, @function
-    .globl getxattr
-    .align 4
-
-getxattr:
+ENTRY(getxattr)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(getxattr)
diff --git a/libc/arch-x86/syscalls/init_module.S b/libc/arch-x86/syscalls/init_module.S
index 2e2b088..3ef9b36 100644
--- a/libc/arch-x86/syscalls/init_module.S
+++ b/libc/arch-x86/syscalls/init_module.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type init_module, @function
-    .globl init_module
-    .align 4
-
-init_module:
+ENTRY(init_module)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(init_module)
diff --git a/libc/arch-x86/syscalls/inotify_add_watch.S b/libc/arch-x86/syscalls/inotify_add_watch.S
index 12a12e4..7b57f3c 100644
--- a/libc/arch-x86/syscalls/inotify_add_watch.S
+++ b/libc/arch-x86/syscalls/inotify_add_watch.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type inotify_add_watch, @function
-    .globl inotify_add_watch
-    .align 4
-
-inotify_add_watch:
+ENTRY(inotify_add_watch)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(inotify_add_watch)
diff --git a/libc/arch-x86/syscalls/inotify_init.S b/libc/arch-x86/syscalls/inotify_init.S
index 2d186c4..c19174b 100644
--- a/libc/arch-x86/syscalls/inotify_init.S
+++ b/libc/arch-x86/syscalls/inotify_init.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type inotify_init, @function
-    .globl inotify_init
-    .align 4
-
-inotify_init:
+ENTRY(inotify_init)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_inotify_init, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(inotify_init)
diff --git a/libc/arch-x86/syscalls/inotify_rm_watch.S b/libc/arch-x86/syscalls/inotify_rm_watch.S
index f931833..351bdc2 100644
--- a/libc/arch-x86/syscalls/inotify_rm_watch.S
+++ b/libc/arch-x86/syscalls/inotify_rm_watch.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type inotify_rm_watch, @function
-    .globl inotify_rm_watch
-    .align 4
-
-inotify_rm_watch:
+ENTRY(inotify_rm_watch)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(inotify_rm_watch)
diff --git a/libc/arch-x86/syscalls/ioprio_get.S b/libc/arch-x86/syscalls/ioprio_get.S
index 3620271..b64662f 100644
--- a/libc/arch-x86/syscalls/ioprio_get.S
+++ b/libc/arch-x86/syscalls/ioprio_get.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type ioprio_get, @function
-    .globl ioprio_get
-    .align 4
-
-ioprio_get:
+ENTRY(ioprio_get)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(ioprio_get)
diff --git a/libc/arch-x86/syscalls/ioprio_set.S b/libc/arch-x86/syscalls/ioprio_set.S
index 174d923..6f2a4f3 100644
--- a/libc/arch-x86/syscalls/ioprio_set.S
+++ b/libc/arch-x86/syscalls/ioprio_set.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type ioprio_set, @function
-    .globl ioprio_set
-    .align 4
-
-ioprio_set:
+ENTRY(ioprio_set)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(ioprio_set)
diff --git a/libc/arch-x86/syscalls/kill.S b/libc/arch-x86/syscalls/kill.S
index e495c54..99fe9a9 100644
--- a/libc/arch-x86/syscalls/kill.S
+++ b/libc/arch-x86/syscalls/kill.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type kill, @function
-    .globl kill
-    .align 4
-
-kill:
+ENTRY(kill)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(kill)
diff --git a/libc/arch-x86/syscalls/klogctl.S b/libc/arch-x86/syscalls/klogctl.S
index e46c8ae..e9f8b79 100644
--- a/libc/arch-x86/syscalls/klogctl.S
+++ b/libc/arch-x86/syscalls/klogctl.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type klogctl, @function
-    .globl klogctl
-    .align 4
-
-klogctl:
+ENTRY(klogctl)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(klogctl)
diff --git a/libc/arch-x86/syscalls/lchown.S b/libc/arch-x86/syscalls/lchown.S
index f584a32..779f703 100644
--- a/libc/arch-x86/syscalls/lchown.S
+++ b/libc/arch-x86/syscalls/lchown.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type lchown, @function
-    .globl lchown
-    .align 4
-
-lchown:
+ENTRY(lchown)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(lchown)
diff --git a/libc/arch-x86/syscalls/lgetxattr.S b/libc/arch-x86/syscalls/lgetxattr.S
index 3f5b63e..3781bff 100644
--- a/libc/arch-x86/syscalls/lgetxattr.S
+++ b/libc/arch-x86/syscalls/lgetxattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type lgetxattr, @function
-    .globl lgetxattr
-    .align 4
-
-lgetxattr:
+ENTRY(lgetxattr)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(lgetxattr)
diff --git a/libc/arch-x86/syscalls/link.S b/libc/arch-x86/syscalls/link.S
index 3946dbf..dac7d0e 100644
--- a/libc/arch-x86/syscalls/link.S
+++ b/libc/arch-x86/syscalls/link.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type link, @function
-    .globl link
-    .align 4
-
-link:
+ENTRY(link)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(link)
diff --git a/libc/arch-x86/syscalls/listen.S b/libc/arch-x86/syscalls/listen.S
index de310cf..8f63945 100644
--- a/libc/arch-x86/syscalls/listen.S
+++ b/libc/arch-x86/syscalls/listen.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type listen, @function
-    .globl listen
-    .align 4
-
-listen:
+ENTRY(listen)
     pushl   %ebx
     pushl   %ecx
     mov     $4, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(listen)
diff --git a/libc/arch-x86/syscalls/listxattr.S b/libc/arch-x86/syscalls/listxattr.S
index 88109bb..853c47b 100644
--- a/libc/arch-x86/syscalls/listxattr.S
+++ b/libc/arch-x86/syscalls/listxattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type listxattr, @function
-    .globl listxattr
-    .align 4
-
-listxattr:
+ENTRY(listxattr)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(listxattr)
diff --git a/libc/arch-x86/syscalls/llistxattr.S b/libc/arch-x86/syscalls/llistxattr.S
index fa8505c..cd7038b 100644
--- a/libc/arch-x86/syscalls/llistxattr.S
+++ b/libc/arch-x86/syscalls/llistxattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type llistxattr, @function
-    .globl llistxattr
-    .align 4
-
-llistxattr:
+ENTRY(llistxattr)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(llistxattr)
diff --git a/libc/arch-x86/syscalls/lremovexattr.S b/libc/arch-x86/syscalls/lremovexattr.S
index f6c7afe..93973d6 100644
--- a/libc/arch-x86/syscalls/lremovexattr.S
+++ b/libc/arch-x86/syscalls/lremovexattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type lremovexattr, @function
-    .globl lremovexattr
-    .align 4
-
-lremovexattr:
+ENTRY(lremovexattr)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(lremovexattr)
diff --git a/libc/arch-x86/syscalls/lseek.S b/libc/arch-x86/syscalls/lseek.S
index 0b2c57c..f6250e6 100644
--- a/libc/arch-x86/syscalls/lseek.S
+++ b/libc/arch-x86/syscalls/lseek.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type lseek, @function
-    .globl lseek
-    .align 4
-
-lseek:
+ENTRY(lseek)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(lseek)
diff --git a/libc/arch-x86/syscalls/lsetxattr.S b/libc/arch-x86/syscalls/lsetxattr.S
index 56c8cf8..c5dbc30 100644
--- a/libc/arch-x86/syscalls/lsetxattr.S
+++ b/libc/arch-x86/syscalls/lsetxattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type lsetxattr, @function
-    .globl lsetxattr
-    .align 4
-
-lsetxattr:
+ENTRY(lsetxattr)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(lsetxattr)
diff --git a/libc/arch-x86/syscalls/lstat.S b/libc/arch-x86/syscalls/lstat.S
index 4739f32..4e25fae 100644
--- a/libc/arch-x86/syscalls/lstat.S
+++ b/libc/arch-x86/syscalls/lstat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type lstat, @function
-    .globl lstat
-    .align 4
-
-lstat:
+ENTRY(lstat)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(lstat)
diff --git a/libc/arch-x86/syscalls/madvise.S b/libc/arch-x86/syscalls/madvise.S
index 2423cc2..bf3e5dc 100644
--- a/libc/arch-x86/syscalls/madvise.S
+++ b/libc/arch-x86/syscalls/madvise.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type madvise, @function
-    .globl madvise
-    .align 4
-
-madvise:
+ENTRY(madvise)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(madvise)
diff --git a/libc/arch-x86/syscalls/mincore.S b/libc/arch-x86/syscalls/mincore.S
index 1e02ac2..37df639 100644
--- a/libc/arch-x86/syscalls/mincore.S
+++ b/libc/arch-x86/syscalls/mincore.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type mincore, @function
-    .globl mincore
-    .align 4
-
-mincore:
+ENTRY(mincore)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(mincore)
diff --git a/libc/arch-x86/syscalls/mkdir.S b/libc/arch-x86/syscalls/mkdir.S
index 4f1d157..16a5c03 100644
--- a/libc/arch-x86/syscalls/mkdir.S
+++ b/libc/arch-x86/syscalls/mkdir.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type mkdir, @function
-    .globl mkdir
-    .align 4
-
-mkdir:
+ENTRY(mkdir)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(mkdir)
diff --git a/libc/arch-x86/syscalls/mkdirat.S b/libc/arch-x86/syscalls/mkdirat.S
index 10406d3..ece2c27 100644
--- a/libc/arch-x86/syscalls/mkdirat.S
+++ b/libc/arch-x86/syscalls/mkdirat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type mkdirat, @function
-    .globl mkdirat
-    .align 4
-
-mkdirat:
+ENTRY(mkdirat)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(mkdirat)
diff --git a/libc/arch-x86/syscalls/mknod.S b/libc/arch-x86/syscalls/mknod.S
index 8df1013..22fc390 100644
--- a/libc/arch-x86/syscalls/mknod.S
+++ b/libc/arch-x86/syscalls/mknod.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type mknod, @function
-    .globl mknod
-    .align 4
-
-mknod:
+ENTRY(mknod)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(mknod)
diff --git a/libc/arch-x86/syscalls/mlock.S b/libc/arch-x86/syscalls/mlock.S
index 85323d2..5010e00 100644
--- a/libc/arch-x86/syscalls/mlock.S
+++ b/libc/arch-x86/syscalls/mlock.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type mlock, @function
-    .globl mlock
-    .align 4
-
-mlock:
+ENTRY(mlock)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(mlock)
diff --git a/libc/arch-x86/syscalls/mlockall.S b/libc/arch-x86/syscalls/mlockall.S
index ad24213..849b44f 100644
--- a/libc/arch-x86/syscalls/mlockall.S
+++ b/libc/arch-x86/syscalls/mlockall.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type mlockall, @function
-    .globl mlockall
-    .align 4
-
-mlockall:
+ENTRY(mlockall)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_mlockall, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(mlockall)
diff --git a/libc/arch-x86/syscalls/mount.S b/libc/arch-x86/syscalls/mount.S
index 46237d3..9ceeab9 100644
--- a/libc/arch-x86/syscalls/mount.S
+++ b/libc/arch-x86/syscalls/mount.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type mount, @function
-    .globl mount
-    .align 4
-
-mount:
+ENTRY(mount)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(mount)
diff --git a/libc/arch-x86/syscalls/mprotect.S b/libc/arch-x86/syscalls/mprotect.S
index f44d564..4438bfe 100644
--- a/libc/arch-x86/syscalls/mprotect.S
+++ b/libc/arch-x86/syscalls/mprotect.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type mprotect, @function
-    .globl mprotect
-    .align 4
-
-mprotect:
+ENTRY(mprotect)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(mprotect)
diff --git a/libc/arch-x86/syscalls/mremap.S b/libc/arch-x86/syscalls/mremap.S
index 891261c..d33a8dc 100644
--- a/libc/arch-x86/syscalls/mremap.S
+++ b/libc/arch-x86/syscalls/mremap.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type mremap, @function
-    .globl mremap
-    .align 4
-
-mremap:
+ENTRY(mremap)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(mremap)
diff --git a/libc/arch-x86/syscalls/msync.S b/libc/arch-x86/syscalls/msync.S
index b83ce01..2da5bc7 100644
--- a/libc/arch-x86/syscalls/msync.S
+++ b/libc/arch-x86/syscalls/msync.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type msync, @function
-    .globl msync
-    .align 4
-
-msync:
+ENTRY(msync)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(msync)
diff --git a/libc/arch-x86/syscalls/munlock.S b/libc/arch-x86/syscalls/munlock.S
index 75ee75e..574d17b 100644
--- a/libc/arch-x86/syscalls/munlock.S
+++ b/libc/arch-x86/syscalls/munlock.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type munlock, @function
-    .globl munlock
-    .align 4
-
-munlock:
+ENTRY(munlock)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(munlock)
diff --git a/libc/arch-x86/syscalls/munlockall.S b/libc/arch-x86/syscalls/munlockall.S
index c43e162..f69316a 100644
--- a/libc/arch-x86/syscalls/munlockall.S
+++ b/libc/arch-x86/syscalls/munlockall.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type munlockall, @function
-    .globl munlockall
-    .align 4
-
-munlockall:
+ENTRY(munlockall)
     movl    $__NR_munlockall, %eax
     int     $0x80
     cmpl    $-129, %eax
@@ -18,3 +14,4 @@
     orl     $-1, %eax
 1:
     ret
+END(munlockall)
diff --git a/libc/arch-x86/syscalls/munmap.S b/libc/arch-x86/syscalls/munmap.S
index b251844..91c73c1 100644
--- a/libc/arch-x86/syscalls/munmap.S
+++ b/libc/arch-x86/syscalls/munmap.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type munmap, @function
-    .globl munmap
-    .align 4
-
-munmap:
+ENTRY(munmap)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(munmap)
diff --git a/libc/arch-x86/syscalls/nanosleep.S b/libc/arch-x86/syscalls/nanosleep.S
index c274d4f..6d2df08 100644
--- a/libc/arch-x86/syscalls/nanosleep.S
+++ b/libc/arch-x86/syscalls/nanosleep.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type nanosleep, @function
-    .globl nanosleep
-    .align 4
-
-nanosleep:
+ENTRY(nanosleep)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(nanosleep)
diff --git a/libc/arch-x86/syscalls/pause.S b/libc/arch-x86/syscalls/pause.S
index 3fe1546..70be691 100644
--- a/libc/arch-x86/syscalls/pause.S
+++ b/libc/arch-x86/syscalls/pause.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type pause, @function
-    .globl pause
-    .align 4
-
-pause:
+ENTRY(pause)
     movl    $__NR_pause, %eax
     int     $0x80
     cmpl    $-129, %eax
@@ -18,3 +14,4 @@
     orl     $-1, %eax
 1:
     ret
+END(pause)
diff --git a/libc/arch-x86/syscalls/perf_event_open.S b/libc/arch-x86/syscalls/perf_event_open.S
index 5c15c5f..6466b45 100644
--- a/libc/arch-x86/syscalls/perf_event_open.S
+++ b/libc/arch-x86/syscalls/perf_event_open.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type perf_event_open, @function
-    .globl perf_event_open
-    .align 4
-
-perf_event_open:
+ENTRY(perf_event_open)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(perf_event_open)
diff --git a/libc/arch-x86/syscalls/personality.S b/libc/arch-x86/syscalls/personality.S
index af4f912..b23b592 100644
--- a/libc/arch-x86/syscalls/personality.S
+++ b/libc/arch-x86/syscalls/personality.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type personality, @function
-    .globl personality
-    .align 4
-
-personality:
+ENTRY(personality)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_personality, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(personality)
diff --git a/libc/arch-x86/syscalls/pipe.S b/libc/arch-x86/syscalls/pipe.S
index d130909..1560bad 100644
--- a/libc/arch-x86/syscalls/pipe.S
+++ b/libc/arch-x86/syscalls/pipe.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type pipe, @function
-    .globl pipe
-    .align 4
-
-pipe:
+ENTRY(pipe)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_pipe, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(pipe)
diff --git a/libc/arch-x86/syscalls/pipe2.S b/libc/arch-x86/syscalls/pipe2.S
index c3354a7..55fe08f 100644
--- a/libc/arch-x86/syscalls/pipe2.S
+++ b/libc/arch-x86/syscalls/pipe2.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type pipe2, @function
-    .globl pipe2
-    .align 4
-
-pipe2:
+ENTRY(pipe2)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(pipe2)
diff --git a/libc/arch-x86/syscalls/poll.S b/libc/arch-x86/syscalls/poll.S
index b732af6..541d657 100644
--- a/libc/arch-x86/syscalls/poll.S
+++ b/libc/arch-x86/syscalls/poll.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type poll, @function
-    .globl poll
-    .align 4
-
-poll:
+ENTRY(poll)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(poll)
diff --git a/libc/arch-x86/syscalls/prctl.S b/libc/arch-x86/syscalls/prctl.S
index 4ce5d89..56720fe 100644
--- a/libc/arch-x86/syscalls/prctl.S
+++ b/libc/arch-x86/syscalls/prctl.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type prctl, @function
-    .globl prctl
-    .align 4
-
-prctl:
+ENTRY(prctl)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(prctl)
diff --git a/libc/arch-x86/syscalls/pread64.S b/libc/arch-x86/syscalls/pread64.S
index eb004a9..987e9b8 100644
--- a/libc/arch-x86/syscalls/pread64.S
+++ b/libc/arch-x86/syscalls/pread64.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type pread64, @function
-    .globl pread64
-    .align 4
-
-pread64:
+ENTRY(pread64)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(pread64)
diff --git a/libc/arch-x86/syscalls/pwrite64.S b/libc/arch-x86/syscalls/pwrite64.S
index 01389f8..8773a20 100644
--- a/libc/arch-x86/syscalls/pwrite64.S
+++ b/libc/arch-x86/syscalls/pwrite64.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type pwrite64, @function
-    .globl pwrite64
-    .align 4
-
-pwrite64:
+ENTRY(pwrite64)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(pwrite64)
diff --git a/libc/arch-x86/syscalls/read.S b/libc/arch-x86/syscalls/read.S
index 63549dc..98b7c12 100644
--- a/libc/arch-x86/syscalls/read.S
+++ b/libc/arch-x86/syscalls/read.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type read, @function
-    .globl read
-    .align 4
-
-read:
+ENTRY(read)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(read)
diff --git a/libc/arch-x86/syscalls/readahead.S b/libc/arch-x86/syscalls/readahead.S
index b89314f..b0c0018 100644
--- a/libc/arch-x86/syscalls/readahead.S
+++ b/libc/arch-x86/syscalls/readahead.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type readahead, @function
-    .globl readahead
-    .align 4
-
-readahead:
+ENTRY(readahead)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(readahead)
diff --git a/libc/arch-x86/syscalls/readlink.S b/libc/arch-x86/syscalls/readlink.S
index 53c7632..393b5d4 100644
--- a/libc/arch-x86/syscalls/readlink.S
+++ b/libc/arch-x86/syscalls/readlink.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type readlink, @function
-    .globl readlink
-    .align 4
-
-readlink:
+ENTRY(readlink)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(readlink)
diff --git a/libc/arch-x86/syscalls/readv.S b/libc/arch-x86/syscalls/readv.S
index ed352d2..d626068 100644
--- a/libc/arch-x86/syscalls/readv.S
+++ b/libc/arch-x86/syscalls/readv.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type readv, @function
-    .globl readv
-    .align 4
-
-readv:
+ENTRY(readv)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(readv)
diff --git a/libc/arch-x86/syscalls/recvfrom.S b/libc/arch-x86/syscalls/recvfrom.S
index 3a38518..98558e1 100644
--- a/libc/arch-x86/syscalls/recvfrom.S
+++ b/libc/arch-x86/syscalls/recvfrom.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type recvfrom, @function
-    .globl recvfrom
-    .align 4
-
-recvfrom:
+ENTRY(recvfrom)
     pushl   %ebx
     pushl   %ecx
     mov     $12, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(recvfrom)
diff --git a/libc/arch-x86/syscalls/recvmsg.S b/libc/arch-x86/syscalls/recvmsg.S
index aee69d6..8b3c7bd 100644
--- a/libc/arch-x86/syscalls/recvmsg.S
+++ b/libc/arch-x86/syscalls/recvmsg.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type recvmsg, @function
-    .globl recvmsg
-    .align 4
-
-recvmsg:
+ENTRY(recvmsg)
     pushl   %ebx
     pushl   %ecx
     mov     $17, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(recvmsg)
diff --git a/libc/arch-x86/syscalls/removexattr.S b/libc/arch-x86/syscalls/removexattr.S
index 2350865..e2211e8 100644
--- a/libc/arch-x86/syscalls/removexattr.S
+++ b/libc/arch-x86/syscalls/removexattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type removexattr, @function
-    .globl removexattr
-    .align 4
-
-removexattr:
+ENTRY(removexattr)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(removexattr)
diff --git a/libc/arch-x86/syscalls/rename.S b/libc/arch-x86/syscalls/rename.S
index 79ae119..43be210 100644
--- a/libc/arch-x86/syscalls/rename.S
+++ b/libc/arch-x86/syscalls/rename.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type rename, @function
-    .globl rename
-    .align 4
-
-rename:
+ENTRY(rename)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(rename)
diff --git a/libc/arch-x86/syscalls/renameat.S b/libc/arch-x86/syscalls/renameat.S
index 30ba210..8084045 100644
--- a/libc/arch-x86/syscalls/renameat.S
+++ b/libc/arch-x86/syscalls/renameat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type renameat, @function
-    .globl renameat
-    .align 4
-
-renameat:
+ENTRY(renameat)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(renameat)
diff --git a/libc/arch-x86/syscalls/rmdir.S b/libc/arch-x86/syscalls/rmdir.S
index 124c10d..b16375c 100644
--- a/libc/arch-x86/syscalls/rmdir.S
+++ b/libc/arch-x86/syscalls/rmdir.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type rmdir, @function
-    .globl rmdir
-    .align 4
-
-rmdir:
+ENTRY(rmdir)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_rmdir, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(rmdir)
diff --git a/libc/arch-x86/syscalls/sched_get_priority_max.S b/libc/arch-x86/syscalls/sched_get_priority_max.S
index e2d09a6..713b02d 100644
--- a/libc/arch-x86/syscalls/sched_get_priority_max.S
+++ b/libc/arch-x86/syscalls/sched_get_priority_max.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sched_get_priority_max, @function
-    .globl sched_get_priority_max
-    .align 4
-
-sched_get_priority_max:
+ENTRY(sched_get_priority_max)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_sched_get_priority_max, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(sched_get_priority_max)
diff --git a/libc/arch-x86/syscalls/sched_get_priority_min.S b/libc/arch-x86/syscalls/sched_get_priority_min.S
index 0f66eee..de6768f 100644
--- a/libc/arch-x86/syscalls/sched_get_priority_min.S
+++ b/libc/arch-x86/syscalls/sched_get_priority_min.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sched_get_priority_min, @function
-    .globl sched_get_priority_min
-    .align 4
-
-sched_get_priority_min:
+ENTRY(sched_get_priority_min)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_sched_get_priority_min, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(sched_get_priority_min)
diff --git a/libc/arch-x86/syscalls/sched_getparam.S b/libc/arch-x86/syscalls/sched_getparam.S
index 2a8bd0e..eabc562 100644
--- a/libc/arch-x86/syscalls/sched_getparam.S
+++ b/libc/arch-x86/syscalls/sched_getparam.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sched_getparam, @function
-    .globl sched_getparam
-    .align 4
-
-sched_getparam:
+ENTRY(sched_getparam)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(sched_getparam)
diff --git a/libc/arch-x86/syscalls/sched_getscheduler.S b/libc/arch-x86/syscalls/sched_getscheduler.S
index aaa5f8c..2a6c8f7 100644
--- a/libc/arch-x86/syscalls/sched_getscheduler.S
+++ b/libc/arch-x86/syscalls/sched_getscheduler.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sched_getscheduler, @function
-    .globl sched_getscheduler
-    .align 4
-
-sched_getscheduler:
+ENTRY(sched_getscheduler)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_sched_getscheduler, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(sched_getscheduler)
diff --git a/libc/arch-x86/syscalls/sched_rr_get_interval.S b/libc/arch-x86/syscalls/sched_rr_get_interval.S
index 58ccddd..3f032d5 100644
--- a/libc/arch-x86/syscalls/sched_rr_get_interval.S
+++ b/libc/arch-x86/syscalls/sched_rr_get_interval.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sched_rr_get_interval, @function
-    .globl sched_rr_get_interval
-    .align 4
-
-sched_rr_get_interval:
+ENTRY(sched_rr_get_interval)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(sched_rr_get_interval)
diff --git a/libc/arch-x86/syscalls/sched_setaffinity.S b/libc/arch-x86/syscalls/sched_setaffinity.S
index 5fa51ef..988f6b4 100644
--- a/libc/arch-x86/syscalls/sched_setaffinity.S
+++ b/libc/arch-x86/syscalls/sched_setaffinity.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sched_setaffinity, @function
-    .globl sched_setaffinity
-    .align 4
-
-sched_setaffinity:
+ENTRY(sched_setaffinity)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(sched_setaffinity)
diff --git a/libc/arch-x86/syscalls/sched_setparam.S b/libc/arch-x86/syscalls/sched_setparam.S
index 4b869bf..a250783 100644
--- a/libc/arch-x86/syscalls/sched_setparam.S
+++ b/libc/arch-x86/syscalls/sched_setparam.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sched_setparam, @function
-    .globl sched_setparam
-    .align 4
-
-sched_setparam:
+ENTRY(sched_setparam)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(sched_setparam)
diff --git a/libc/arch-x86/syscalls/sched_setscheduler.S b/libc/arch-x86/syscalls/sched_setscheduler.S
index 099a6d1..c6851ba 100644
--- a/libc/arch-x86/syscalls/sched_setscheduler.S
+++ b/libc/arch-x86/syscalls/sched_setscheduler.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sched_setscheduler, @function
-    .globl sched_setscheduler
-    .align 4
-
-sched_setscheduler:
+ENTRY(sched_setscheduler)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(sched_setscheduler)
diff --git a/libc/arch-x86/syscalls/sched_yield.S b/libc/arch-x86/syscalls/sched_yield.S
index fcd7281..3dcc7fc 100644
--- a/libc/arch-x86/syscalls/sched_yield.S
+++ b/libc/arch-x86/syscalls/sched_yield.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sched_yield, @function
-    .globl sched_yield
-    .align 4
-
-sched_yield:
+ENTRY(sched_yield)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_sched_yield, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(sched_yield)
diff --git a/libc/arch-x86/syscalls/select.S b/libc/arch-x86/syscalls/select.S
index 27359a9..b665281 100644
--- a/libc/arch-x86/syscalls/select.S
+++ b/libc/arch-x86/syscalls/select.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type select, @function
-    .globl select
-    .align 4
-
-select:
+ENTRY(select)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(select)
diff --git a/libc/arch-x86/syscalls/sendfile.S b/libc/arch-x86/syscalls/sendfile.S
index 2752eec..b36fa1f 100644
--- a/libc/arch-x86/syscalls/sendfile.S
+++ b/libc/arch-x86/syscalls/sendfile.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sendfile, @function
-    .globl sendfile
-    .align 4
-
-sendfile:
+ENTRY(sendfile)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(sendfile)
diff --git a/libc/arch-x86/syscalls/sendmsg.S b/libc/arch-x86/syscalls/sendmsg.S
index 5f26623..119d632 100644
--- a/libc/arch-x86/syscalls/sendmsg.S
+++ b/libc/arch-x86/syscalls/sendmsg.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sendmsg, @function
-    .globl sendmsg
-    .align 4
-
-sendmsg:
+ENTRY(sendmsg)
     pushl   %ebx
     pushl   %ecx
     mov     $16, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(sendmsg)
diff --git a/libc/arch-x86/syscalls/sendto.S b/libc/arch-x86/syscalls/sendto.S
index d79a2ba..82208fe 100644
--- a/libc/arch-x86/syscalls/sendto.S
+++ b/libc/arch-x86/syscalls/sendto.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sendto, @function
-    .globl sendto
-    .align 4
-
-sendto:
+ENTRY(sendto)
     pushl   %ebx
     pushl   %ecx
     mov     $11, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(sendto)
diff --git a/libc/arch-x86/syscalls/setgid.S b/libc/arch-x86/syscalls/setgid.S
index 67fd02e..37f5ffe 100644
--- a/libc/arch-x86/syscalls/setgid.S
+++ b/libc/arch-x86/syscalls/setgid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type setgid, @function
-    .globl setgid
-    .align 4
-
-setgid:
+ENTRY(setgid)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_setgid32, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(setgid)
diff --git a/libc/arch-x86/syscalls/setgroups.S b/libc/arch-x86/syscalls/setgroups.S
index b6bab11..20266e0 100644
--- a/libc/arch-x86/syscalls/setgroups.S
+++ b/libc/arch-x86/syscalls/setgroups.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type setgroups, @function
-    .globl setgroups
-    .align 4
-
-setgroups:
+ENTRY(setgroups)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(setgroups)
diff --git a/libc/arch-x86/syscalls/setitimer.S b/libc/arch-x86/syscalls/setitimer.S
index 29d4bc6..97ee7c6 100644
--- a/libc/arch-x86/syscalls/setitimer.S
+++ b/libc/arch-x86/syscalls/setitimer.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type setitimer, @function
-    .globl setitimer
-    .align 4
-
-setitimer:
+ENTRY(setitimer)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(setitimer)
diff --git a/libc/arch-x86/syscalls/setpgid.S b/libc/arch-x86/syscalls/setpgid.S
index df72382..8ff9273 100644
--- a/libc/arch-x86/syscalls/setpgid.S
+++ b/libc/arch-x86/syscalls/setpgid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type setpgid, @function
-    .globl setpgid
-    .align 4
-
-setpgid:
+ENTRY(setpgid)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(setpgid)
diff --git a/libc/arch-x86/syscalls/setpriority.S b/libc/arch-x86/syscalls/setpriority.S
index 39d7a18..7358a89 100644
--- a/libc/arch-x86/syscalls/setpriority.S
+++ b/libc/arch-x86/syscalls/setpriority.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type setpriority, @function
-    .globl setpriority
-    .align 4
-
-setpriority:
+ENTRY(setpriority)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(setpriority)
diff --git a/libc/arch-x86/syscalls/setregid.S b/libc/arch-x86/syscalls/setregid.S
index c3112de..bbe092f 100644
--- a/libc/arch-x86/syscalls/setregid.S
+++ b/libc/arch-x86/syscalls/setregid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type setregid, @function
-    .globl setregid
-    .align 4
-
-setregid:
+ENTRY(setregid)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(setregid)
diff --git a/libc/arch-x86/syscalls/setresgid.S b/libc/arch-x86/syscalls/setresgid.S
index 8e6c8c9..c235837 100644
--- a/libc/arch-x86/syscalls/setresgid.S
+++ b/libc/arch-x86/syscalls/setresgid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type setresgid, @function
-    .globl setresgid
-    .align 4
-
-setresgid:
+ENTRY(setresgid)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(setresgid)
diff --git a/libc/arch-x86/syscalls/setrlimit.S b/libc/arch-x86/syscalls/setrlimit.S
index 31613c5..d7f5072 100644
--- a/libc/arch-x86/syscalls/setrlimit.S
+++ b/libc/arch-x86/syscalls/setrlimit.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type setrlimit, @function
-    .globl setrlimit
-    .align 4
-
-setrlimit:
+ENTRY(setrlimit)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(setrlimit)
diff --git a/libc/arch-x86/syscalls/setsid.S b/libc/arch-x86/syscalls/setsid.S
index db31380..684b304 100644
--- a/libc/arch-x86/syscalls/setsid.S
+++ b/libc/arch-x86/syscalls/setsid.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type setsid, @function
-    .globl setsid
-    .align 4
-
-setsid:
+ENTRY(setsid)
     movl    $__NR_setsid, %eax
     int     $0x80
     cmpl    $-129, %eax
@@ -18,3 +14,4 @@
     orl     $-1, %eax
 1:
     ret
+END(setsid)
diff --git a/libc/arch-x86/syscalls/setsockopt.S b/libc/arch-x86/syscalls/setsockopt.S
index d1c986a..9c70116 100644
--- a/libc/arch-x86/syscalls/setsockopt.S
+++ b/libc/arch-x86/syscalls/setsockopt.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type setsockopt, @function
-    .globl setsockopt
-    .align 4
-
-setsockopt:
+ENTRY(setsockopt)
     pushl   %ebx
     pushl   %ecx
     mov     $14, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(setsockopt)
diff --git a/libc/arch-x86/syscalls/settimeofday.S b/libc/arch-x86/syscalls/settimeofday.S
index e77fa1e..bc95fec 100644
--- a/libc/arch-x86/syscalls/settimeofday.S
+++ b/libc/arch-x86/syscalls/settimeofday.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type settimeofday, @function
-    .globl settimeofday
-    .align 4
-
-settimeofday:
+ENTRY(settimeofday)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(settimeofday)
diff --git a/libc/arch-x86/syscalls/setxattr.S b/libc/arch-x86/syscalls/setxattr.S
index 38be736..9dc87e3 100644
--- a/libc/arch-x86/syscalls/setxattr.S
+++ b/libc/arch-x86/syscalls/setxattr.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type setxattr, @function
-    .globl setxattr
-    .align 4
-
-setxattr:
+ENTRY(setxattr)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -33,3 +29,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(setxattr)
diff --git a/libc/arch-x86/syscalls/shutdown.S b/libc/arch-x86/syscalls/shutdown.S
index 45f0664..7fa36a1 100644
--- a/libc/arch-x86/syscalls/shutdown.S
+++ b/libc/arch-x86/syscalls/shutdown.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type shutdown, @function
-    .globl shutdown
-    .align 4
-
-shutdown:
+ENTRY(shutdown)
     pushl   %ebx
     pushl   %ecx
     mov     $13, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(shutdown)
diff --git a/libc/arch-x86/syscalls/sigaction.S b/libc/arch-x86/syscalls/sigaction.S
index b16e3aa..4fd5993 100644
--- a/libc/arch-x86/syscalls/sigaction.S
+++ b/libc/arch-x86/syscalls/sigaction.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sigaction, @function
-    .globl sigaction
-    .align 4
-
-sigaction:
+ENTRY(sigaction)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(sigaction)
diff --git a/libc/arch-x86/syscalls/sigaltstack.S b/libc/arch-x86/syscalls/sigaltstack.S
index d39419d..830c99f 100644
--- a/libc/arch-x86/syscalls/sigaltstack.S
+++ b/libc/arch-x86/syscalls/sigaltstack.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sigaltstack, @function
-    .globl sigaltstack
-    .align 4
-
-sigaltstack:
+ENTRY(sigaltstack)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(sigaltstack)
diff --git a/libc/arch-x86/syscalls/signalfd4.S b/libc/arch-x86/syscalls/signalfd4.S
index f1c2ea0..57e0233 100644
--- a/libc/arch-x86/syscalls/signalfd4.S
+++ b/libc/arch-x86/syscalls/signalfd4.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type signalfd4, @function
-    .globl signalfd4
-    .align 4
-
-signalfd4:
+ENTRY(signalfd4)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(signalfd4)
diff --git a/libc/arch-x86/syscalls/sigpending.S b/libc/arch-x86/syscalls/sigpending.S
index 2280886..2f009b2 100644
--- a/libc/arch-x86/syscalls/sigpending.S
+++ b/libc/arch-x86/syscalls/sigpending.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sigpending, @function
-    .globl sigpending
-    .align 4
-
-sigpending:
+ENTRY(sigpending)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_sigpending, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(sigpending)
diff --git a/libc/arch-x86/syscalls/sigprocmask.S b/libc/arch-x86/syscalls/sigprocmask.S
index 42fcf92..81cdfa2 100644
--- a/libc/arch-x86/syscalls/sigprocmask.S
+++ b/libc/arch-x86/syscalls/sigprocmask.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sigprocmask, @function
-    .globl sigprocmask
-    .align 4
-
-sigprocmask:
+ENTRY(sigprocmask)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(sigprocmask)
diff --git a/libc/arch-x86/syscalls/socket.S b/libc/arch-x86/syscalls/socket.S
index 89a8358..8cc93bd 100644
--- a/libc/arch-x86/syscalls/socket.S
+++ b/libc/arch-x86/syscalls/socket.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type socket, @function
-    .globl socket
-    .align 4
-
-socket:
+ENTRY(socket)
     pushl   %ebx
     pushl   %ecx
     mov     $1, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(socket)
diff --git a/libc/arch-x86/syscalls/socketpair.S b/libc/arch-x86/syscalls/socketpair.S
index 0222989..ccfc847 100644
--- a/libc/arch-x86/syscalls/socketpair.S
+++ b/libc/arch-x86/syscalls/socketpair.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type socketpair, @function
-    .globl socketpair
-    .align 4
-
-socketpair:
+ENTRY(socketpair)
     pushl   %ebx
     pushl   %ecx
     mov     $8, %ebx
@@ -25,3 +21,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(socketpair)
diff --git a/libc/arch-x86/syscalls/stat.S b/libc/arch-x86/syscalls/stat.S
index c9984f1..83d1af8 100644
--- a/libc/arch-x86/syscalls/stat.S
+++ b/libc/arch-x86/syscalls/stat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type stat, @function
-    .globl stat
-    .align 4
-
-stat:
+ENTRY(stat)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(stat)
diff --git a/libc/arch-x86/syscalls/symlink.S b/libc/arch-x86/syscalls/symlink.S
index 04c4298..dbc5490 100644
--- a/libc/arch-x86/syscalls/symlink.S
+++ b/libc/arch-x86/syscalls/symlink.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type symlink, @function
-    .globl symlink
-    .align 4
-
-symlink:
+ENTRY(symlink)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(symlink)
diff --git a/libc/arch-x86/syscalls/sync.S b/libc/arch-x86/syscalls/sync.S
index 5a6a727..f337c2c 100644
--- a/libc/arch-x86/syscalls/sync.S
+++ b/libc/arch-x86/syscalls/sync.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sync, @function
-    .globl sync
-    .align 4
-
-sync:
+ENTRY(sync)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_sync, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(sync)
diff --git a/libc/arch-x86/syscalls/sysinfo.S b/libc/arch-x86/syscalls/sysinfo.S
index c60c37b..ef9fcb0 100644
--- a/libc/arch-x86/syscalls/sysinfo.S
+++ b/libc/arch-x86/syscalls/sysinfo.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type sysinfo, @function
-    .globl sysinfo
-    .align 4
-
-sysinfo:
+ENTRY(sysinfo)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_sysinfo, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(sysinfo)
diff --git a/libc/arch-x86/syscalls/tgkill.S b/libc/arch-x86/syscalls/tgkill.S
index 99af740..6d5dc88 100644
--- a/libc/arch-x86/syscalls/tgkill.S
+++ b/libc/arch-x86/syscalls/tgkill.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type tgkill, @function
-    .globl tgkill
-    .align 4
-
-tgkill:
+ENTRY(tgkill)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(tgkill)
diff --git a/libc/arch-x86/syscalls/times.S b/libc/arch-x86/syscalls/times.S
index 543f2be..04991a8 100644
--- a/libc/arch-x86/syscalls/times.S
+++ b/libc/arch-x86/syscalls/times.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type times, @function
-    .globl times
-    .align 4
-
-times:
+ENTRY(times)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_times, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(times)
diff --git a/libc/arch-x86/syscalls/tkill.S b/libc/arch-x86/syscalls/tkill.S
index f1f174b..51eb1c8 100644
--- a/libc/arch-x86/syscalls/tkill.S
+++ b/libc/arch-x86/syscalls/tkill.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type tkill, @function
-    .globl tkill
-    .align 4
-
-tkill:
+ENTRY(tkill)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(tkill)
diff --git a/libc/arch-x86/syscalls/truncate.S b/libc/arch-x86/syscalls/truncate.S
index 8c6646d..9e9b08d 100644
--- a/libc/arch-x86/syscalls/truncate.S
+++ b/libc/arch-x86/syscalls/truncate.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type truncate, @function
-    .globl truncate
-    .align 4
-
-truncate:
+ENTRY(truncate)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(truncate)
diff --git a/libc/arch-x86/syscalls/umask.S b/libc/arch-x86/syscalls/umask.S
index fe3d8cd..f2bf7b0 100644
--- a/libc/arch-x86/syscalls/umask.S
+++ b/libc/arch-x86/syscalls/umask.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type umask, @function
-    .globl umask
-    .align 4
-
-umask:
+ENTRY(umask)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_umask, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(umask)
diff --git a/libc/arch-x86/syscalls/umount2.S b/libc/arch-x86/syscalls/umount2.S
index fdb5354..1949489 100644
--- a/libc/arch-x86/syscalls/umount2.S
+++ b/libc/arch-x86/syscalls/umount2.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type umount2, @function
-    .globl umount2
-    .align 4
-
-umount2:
+ENTRY(umount2)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(umount2)
diff --git a/libc/arch-x86/syscalls/uname.S b/libc/arch-x86/syscalls/uname.S
index b5e8bfa..9b2c746 100644
--- a/libc/arch-x86/syscalls/uname.S
+++ b/libc/arch-x86/syscalls/uname.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type uname, @function
-    .globl uname
-    .align 4
-
-uname:
+ENTRY(uname)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_uname, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(uname)
diff --git a/libc/arch-x86/syscalls/unlink.S b/libc/arch-x86/syscalls/unlink.S
index 0fe52bf..0d9ce84 100644
--- a/libc/arch-x86/syscalls/unlink.S
+++ b/libc/arch-x86/syscalls/unlink.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type unlink, @function
-    .globl unlink
-    .align 4
-
-unlink:
+ENTRY(unlink)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_unlink, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(unlink)
diff --git a/libc/arch-x86/syscalls/unlinkat.S b/libc/arch-x86/syscalls/unlinkat.S
index f6f8c17..d05b488 100644
--- a/libc/arch-x86/syscalls/unlinkat.S
+++ b/libc/arch-x86/syscalls/unlinkat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type unlinkat, @function
-    .globl unlinkat
-    .align 4
-
-unlinkat:
+ENTRY(unlinkat)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(unlinkat)
diff --git a/libc/arch-x86/syscalls/unshare.S b/libc/arch-x86/syscalls/unshare.S
index ef31a35..da0f563 100644
--- a/libc/arch-x86/syscalls/unshare.S
+++ b/libc/arch-x86/syscalls/unshare.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type unshare, @function
-    .globl unshare
-    .align 4
-
-unshare:
+ENTRY(unshare)
     pushl   %ebx
     mov     8(%esp), %ebx
     movl    $__NR_unshare, %eax
@@ -21,3 +17,4 @@
 1:
     popl    %ebx
     ret
+END(unshare)
diff --git a/libc/arch-x86/syscalls/utimensat.S b/libc/arch-x86/syscalls/utimensat.S
index e2032b5..fb1d630 100644
--- a/libc/arch-x86/syscalls/utimensat.S
+++ b/libc/arch-x86/syscalls/utimensat.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type utimensat, @function
-    .globl utimensat
-    .align 4
-
-utimensat:
+ENTRY(utimensat)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -30,3 +26,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(utimensat)
diff --git a/libc/arch-x86/syscalls/utimes.S b/libc/arch-x86/syscalls/utimes.S
index 1a1b51d..189f6b9 100644
--- a/libc/arch-x86/syscalls/utimes.S
+++ b/libc/arch-x86/syscalls/utimes.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type utimes, @function
-    .globl utimes
-    .align 4
-
-utimes:
+ENTRY(utimes)
     pushl   %ebx
     pushl   %ecx
     mov     12(%esp), %ebx
@@ -24,3 +20,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(utimes)
diff --git a/libc/arch-x86/syscalls/write.S b/libc/arch-x86/syscalls/write.S
index caa450f..7f0b030 100644
--- a/libc/arch-x86/syscalls/write.S
+++ b/libc/arch-x86/syscalls/write.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type write, @function
-    .globl write
-    .align 4
-
-write:
+ENTRY(write)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(write)
diff --git a/libc/arch-x86/syscalls/writev.S b/libc/arch-x86/syscalls/writev.S
index 53d3731..0757a44 100644
--- a/libc/arch-x86/syscalls/writev.S
+++ b/libc/arch-x86/syscalls/writev.S
@@ -1,12 +1,8 @@
 /* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type writev, @function
-    .globl writev
-    .align 4
-
-writev:
+ENTRY(writev)
     pushl   %ebx
     pushl   %ecx
     pushl   %edx
@@ -27,3 +23,4 @@
     popl    %ecx
     popl    %ebx
     ret
+END(writev)
diff --git a/libc/include/sys/cdefs.h b/libc/include/sys/cdefs.h
index aa65b54..3617aba 100644
--- a/libc/include/sys/cdefs.h
+++ b/libc/include/sys/cdefs.h
@@ -377,11 +377,11 @@
 #define	__link_set_entry(set, idx)	(__link_set_begin(set)[idx])
 
 /*
- * Some of the recend FreeBSD sources used in Bionic need this.
+ * Some of the FreeBSD sources used in Bionic need this.
  * Originally, this is used to embed the rcs versions of each source file
  * in the generated binary. We certainly don't want this in Bionic.
  */
-#define	__FBSDID(s)	struct __hack
+#define __FBSDID(s) /* nothing */
 
 /*-
  * The following definitions are an extension of the behavior originally
diff --git a/libc/tools/gensyscalls.py b/libc/tools/gensyscalls.py
index a4e5679..a39b63b 100755
--- a/libc/tools/gensyscalls.py
+++ b/libc/tools/gensyscalls.py
@@ -51,14 +51,10 @@
 #
 
 x86_header = """/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
 #include <sys/linux-syscalls.h>
 
-    .text
-    .type %(fname)s, @function
-    .globl %(fname)s
-    .align 4
-
-%(fname)s:
+ENTRY(%(fname)s)
 """
 
 x86_registers = [ "%ebx", "%ecx", "%edx", "%esi", "%edi", "%ebp" ]
@@ -76,6 +72,7 @@
 """
 
 x86_return = """    ret
+END(%(fname)s)
 """
 
 # ARM assembler templates for each syscall stub
@@ -288,7 +285,7 @@
         for r in range(numparams):
             result += "    popl    " + x86_registers[numparams-r-1] + "\n"
 
-        result += x86_return
+        result += x86_return % t
         return result
 
     def x86_genstub_cid(self, fname, numparams, idname, cid):
@@ -326,7 +323,7 @@
         result += "    popl    %ebx" + "\n"
 
         # epilog
-        result += x86_return
+        result += x86_return % t
         return result
 
     def arm_genstub(self,fname, flags, idname):