diff options
author | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:13 -0800 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:13 -0800 |
commit | 1767f908af327fa388b1c66883760ad851267013 (patch) | |
tree | 4b825dc642cb6eb9a060e54bf8d69288fbee4904 /libc/arch-arm | |
parent | a799b53f10e5a6fd51fef4436cfb7ec99836a516 (diff) | |
download | bionic-1767f908af327fa388b1c66883760ad851267013.zip bionic-1767f908af327fa388b1c66883760ad851267013.tar.gz bionic-1767f908af327fa388b1c66883760ad851267013.tar.bz2 |
auto import from //depot/cupcake/@135843
Diffstat (limited to 'libc/arch-arm')
202 files changed, 0 insertions, 6689 deletions
diff --git a/libc/arch-arm/bionic/__get_pc.S b/libc/arch-arm/bionic/__get_pc.S deleted file mode 100644 index d1377c7..0000000 --- a/libc/arch-arm/bionic/__get_pc.S +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -.global __get_pc - -__get_pc: - mov r0, pc - bx lr - diff --git a/libc/arch-arm/bionic/__get_sp.S b/libc/arch-arm/bionic/__get_sp.S deleted file mode 100644 index 9acaf3d..0000000 --- a/libc/arch-arm/bionic/__get_sp.S +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -.global __get_sp - -__get_sp: - mov r0, sp - bx lr - diff --git a/libc/arch-arm/bionic/_exit_with_stack_teardown.S b/libc/arch-arm/bionic/_exit_with_stack_teardown.S deleted file mode 100644 index 89f6c90..0000000 --- a/libc/arch-arm/bionic/_exit_with_stack_teardown.S +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -#include <asm/unistd.h> - -.text -.type _exit_with_stack_teardown, #function -.globl _exit_with_stack_teardown -.align 4 - -@ void _exit_with_stack_teardown(void * stackBase, int stackSize, int retCode) - -_exit_with_stack_teardown: - -#if __ARM_EABI__ - mov lr, r2 - ldr r7, =__NR_munmap - swi #0 @ the stack is destroyed by this call - mov r0, lr - ldr r7, =__NR_exit - swi #0 -#else - mov lr, r2 - swi # __NR_munmap @ the stack is destroyed by this call - mov r0, lr - swi # __NR_exit -#endif - - @ exit() should never return, cause a crash if it does - mov r0, #0 - ldr r0, [r0] diff --git a/libc/arch-arm/bionic/_setjmp.S b/libc/arch-arm/bionic/_setjmp.S deleted file mode 100644 index 6a27af2..0000000 --- a/libc/arch-arm/bionic/_setjmp.S +++ /dev/null @@ -1,106 +0,0 @@ -/* $OpenBSD: _setjmp.S,v 1.2 2004/02/01 05:40:52 drahn Exp $ */ -/* $NetBSD: _setjmp.S,v 1.5 2003/04/05 23:08:51 bjh21 Exp $ */ - -/* - * Copyright (c) 1997 Mark Brinicombe - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by Mark Brinicombe - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include <machine/asm.h> -#include <machine/setjmp.h> - -/* - * C library -- _setjmp, _longjmp - * - * _longjmp(a,v) - * will generate a "return(v)" from the last call to - * _setjmp(a) - * by restoring registers from the stack. - * The previous signal state is NOT restored. - * - * Note: r0 is the return value - * r1-r3 are scratch registers in functions - */ - -ENTRY(_setjmp) - ldr r1, .L_setjmp_magic - str r1, [r0], #4 -#ifdef SOFTFLOAT - add r0, r0, #52 -#else - /* Store fp registers */ - sfm f4, 4, [r0], #48 - /* Store fpsr */ - rfs r1 - str r1, [r0], #0x0004 -#endif /* SOFTFLOAT */ - /* Store integer registers */ - stmia r0, {r4-r14} - - mov r0, #0x00000000 - bx lr - -.L_setjmp_magic: - .word _JB_MAGIC__SETJMP - -ENTRY(_longjmp) - ldr r2, .L_setjmp_magic - ldr r3, [r0], #4 - teq r2, r3 - bne botch - -#ifdef SOFTFLOAT - add r0, r0, #52 -#else - /* Restore fp registers */ - lfm f4, 4, [r0], #48 - /* Restore fpsr */ - ldr r4, [r0], #0x0004 - wfs r4 -#endif /* SOFTFLOAT */ - /* Restore integer registers */ - ldmia r0, {r4-r14} - - /* Validate sp and r14 */ - teq sp, #0 - teqne r14, #0 - beq botch - - /* Set return value */ - mov r0, r1 - teq r0, #0x00000000 - moveq r0, #0x00000001 - bx lr - - /* validation failed, die die die. */ -botch: - bl PIC_SYM(_C_LABEL(longjmperror), PLT) - bl PIC_SYM(_C_LABEL(abort), PLT) - b . - 8 /* Cannot get here */ diff --git a/libc/arch-arm/bionic/atomics_arm.S b/libc/arch-arm/bionic/atomics_arm.S deleted file mode 100644 index b2da09f..0000000 --- a/libc/arch-arm/bionic/atomics_arm.S +++ /dev/null @@ -1,178 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -#include <sys/linux-syscalls.h> - -.global __atomic_cmpxchg -.global __atomic_swap -.global __atomic_dec -.global __atomic_inc -.global __futex_wait -.global __futex_wake - -#define FUTEX_WAIT 0 -#define FUTEX_WAKE 1 - -#if 1 - .equ kernel_cmpxchg, 0xFFFF0FC0 - .equ kernel_atomic_base, 0xFFFF0FFF -__atomic_dec: - stmdb sp!, {r4, lr} - mov r2, r0 -1: @ atomic_dec - ldr r0, [r2] - mov r3, #kernel_atomic_base - add lr, pc, #4 - sub r1, r0, #1 - add pc, r3, #(kernel_cmpxchg - kernel_atomic_base) - bcc 1b - add r0, r1, #1 - ldmia sp!, {r4, lr} - bx lr - -__atomic_inc: - stmdb sp!, {r4, lr} - mov r2, r0 -1: @ atomic_inc - ldr r0, [r2] - mov r3, #kernel_atomic_base - add lr, pc, #4 - add r1, r0, #1 - add pc, r3, #(kernel_cmpxchg - kernel_atomic_base) - bcc 1b - sub r0, r1, #1 - ldmia sp!, {r4, lr} - bx lr - -/* r0(old) r1(new) r2(addr) -> r0(zero_if_succeeded) */ -__atomic_cmpxchg: - stmdb sp!, {r4, lr} - mov r4, r0 /* r4 = save oldvalue */ -1: @ atomic_cmpxchg - mov r3, #kernel_atomic_base - add lr, pc, #4 - mov r0, r4 /* r0 = oldvalue */ - add pc, r3, #(kernel_cmpxchg - kernel_atomic_base) - bcs 2f /* swap was made. we're good, return. */ - ldr r3, [r2] /* swap not made, see if it's because *ptr!=oldvalue */ - cmp r3, r4 - beq 1b -2: @ atomic_cmpxchg - ldmia sp!, {r4, lr} - bx lr -#else -#define KUSER_CMPXCHG 0xffffffc0 - -/* r0(old) r1(new) r2(addr) -> r0(zero_if_succeeded) */ -__atomic_cmpxchg: - stmdb sp!, {r4, lr} - mov r4, r0 /* r4 = save oldvalue */ -1: add lr, pc, #4 - mov r0, r4 /* r0 = oldvalue */ - mov pc, #KUSER_CMPXCHG - bcs 2f /* swap was made. we're good, return. */ - ldr r3, [r2] /* swap not made, see if it's because *ptr!=oldvalue */ - cmp r3, r4 - beq 1b -2: ldmia sp!, {r4, lr} - bx lr - -/* r0(addr) -> r0(old) */ -__atomic_dec: - stmdb sp!, {r4, lr} - mov r2, r0 /* address */ -1: ldr r0, [r2] /* oldvalue */ - add lr, pc, #4 - sub r1, r0, #1 /* newvalue = oldvalue - 1 */ - mov pc, #KUSER_CMPXCHG - bcc 1b /* no swap, try again until we get it right */ - mov r0, ip /* swapped, return the old value */ - ldmia sp!, {r4, lr} - bx lr - -/* r0(addr) -> r0(old) */ -__atomic_inc: - stmdb sp!, {r4, lr} - mov r2, r0 /* address */ -1: ldr r0, [r2] /* oldvalue */ - add lr, pc, #4 - add r1, r0, #1 /* newvalue = oldvalue + 1 */ - mov pc, #KUSER_CMPXCHG - bcc 1b /* no swap, try again until we get it right */ - mov r0, ip /* swapped, return the old value */ - ldmia sp!, {r4, lr} - bx lr -#endif - -/* r0(new) r1(addr) -> r0(old) */ -__atomic_swap: - swp r0, r0, [r1] - bx lr - -/* __futex_wait(*ftx, val, *timespec) */ -/* __futex_syscall(*ftx, op, val, *timespec, *addr2, val3) */ - -#if __ARM_EABI__ - -__futex_wait: - .fnstart - stmdb sp!, {r4, r7} - .save {r4, r7} - mov r3, r2 - mov r2, r1 - mov r1, #FUTEX_WAIT - ldr r7, =__NR_futex - swi #0 - ldmia sp!, {r4, r7} - bx lr - .fnend - -__futex_wake: - stmdb sp!, {r4, r7} - mov r2, r1 - mov r1, #FUTEX_WAKE - ldr r7, =__NR_futex - swi #0 - ldmia sp!, {r4, r7} - bx lr - -#else - -__futex_wait: - mov r3, r2 - mov r2, r1 - mov r1, #FUTEX_WAIT - swi #__NR_futex - bx lr - -__futex_wake: - mov r2, r1 - mov r1, #FUTEX_WAKE - swi #__NR_futex - bx lr - -#endif diff --git a/libc/arch-arm/bionic/clone.S b/libc/arch-arm/bionic/clone.S deleted file mode 100644 index 791c73d..0000000 --- a/libc/arch-arm/bionic/clone.S +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -#include <sys/linux-syscalls.h> - - .text - .type __pthread_clone, #function - .global __pthread_clone - .align 4 - -__pthread_clone: - @ insert the args onto the new stack - str r0, [r1, #-4] - str r3, [r1, #-8] - - @ do the system call - @ get flags - - mov r0, r2 - - @ new sp is already in r1 - -#if __ARM_EABI__ - stmfd sp!, {r4, r7} - ldr r7, =__NR_clone - swi #0 -#else - swi #__NR_clone -#endif - - movs r0, r0 -#if __ARM_EABI__ - ldmnefd sp!, {r4, r7} -#endif - blt __error - bxne lr - - - @ pick the function arg and call address off the stack and jump - @ to the C __thread_entry function which does some setup and then - @ calls the thread's start function - - ldr r0, [sp, #-4] - ldr r1, [sp, #-8] - mov r2, sp @ __thread_entry needs the TLS pointer - b __thread_entry - -__error: - mov r0, #-1 - bx lr diff --git a/libc/arch-arm/bionic/crtbegin_dynamic.S b/libc/arch-arm/bionic/crtbegin_dynamic.S deleted file mode 100644 index e265923..0000000 --- a/libc/arch-arm/bionic/crtbegin_dynamic.S +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - .text - .align 4 - .type _start,#function - .globl _start - -# this is the small startup code that is first run when -# any executable that is statically-linked with Bionic -# runs. -# -# it's purpose is to call __libc_init with appropriate -# arguments, which are: -# -# - the address of the raw data block setup by the Linux -# kernel ELF loader -# -# - address of an "onexit" function, not used on any -# platform supported by Bionic -# -# - address of the "main" function of the program. We -# can't hard-code it in the adr pseudo instruction -# so we use a tiny trampoline that will get relocated -# by the dynamic linker before this code runs -# -# - address of the constructor list -# -_start: - mov r0, sp - mov r1, #0 - adr r2, 0f - adr r3, 1f - b __libc_init - -0: b main - -1: .long __PREINIT_ARRAY__ - .long __INIT_ARRAY__ - .long __FINI_ARRAY__ - .long __CTOR_LIST__ - -# the .ctors section contains a list of pointers to "constructor" -# functions that need to be called in order during C library initialization, -# just before the program is being run. This is a C++ requirement -# -# the last entry shall be 0, and is defined in crtend.S -# - .section .preinit_array, "aw" - .globl __PREINIT_ARRAY__ -__PREINIT_ARRAY__: - .long -1 - - .section .init_array, "aw" - .globl __INIT_ARRAY__ -__INIT_ARRAY__: - .long -1 - - .section .fini_array, "aw" - .globl __FINI_ARRAY__ -__FINI_ARRAY__: - .long -1 - - .section .ctors, "aw" - .globl __CTOR_LIST__ -__CTOR_LIST__: - .long -1 - diff --git a/libc/arch-arm/bionic/crtbegin_static.S b/libc/arch-arm/bionic/crtbegin_static.S deleted file mode 100644 index e265923..0000000 --- a/libc/arch-arm/bionic/crtbegin_static.S +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - .text - .align 4 - .type _start,#function - .globl _start - -# this is the small startup code that is first run when -# any executable that is statically-linked with Bionic -# runs. -# -# it's purpose is to call __libc_init with appropriate -# arguments, which are: -# -# - the address of the raw data block setup by the Linux -# kernel ELF loader -# -# - address of an "onexit" function, not used on any -# platform supported by Bionic -# -# - address of the "main" function of the program. We -# can't hard-code it in the adr pseudo instruction -# so we use a tiny trampoline that will get relocated -# by the dynamic linker before this code runs -# -# - address of the constructor list -# -_start: - mov r0, sp - mov r1, #0 - adr r2, 0f - adr r3, 1f - b __libc_init - -0: b main - -1: .long __PREINIT_ARRAY__ - .long __INIT_ARRAY__ - .long __FINI_ARRAY__ - .long __CTOR_LIST__ - -# the .ctors section contains a list of pointers to "constructor" -# functions that need to be called in order during C library initialization, -# just before the program is being run. This is a C++ requirement -# -# the last entry shall be 0, and is defined in crtend.S -# - .section .preinit_array, "aw" - .globl __PREINIT_ARRAY__ -__PREINIT_ARRAY__: - .long -1 - - .section .init_array, "aw" - .globl __INIT_ARRAY__ -__INIT_ARRAY__: - .long -1 - - .section .fini_array, "aw" - .globl __FINI_ARRAY__ -__FINI_ARRAY__: - .long -1 - - .section .ctors, "aw" - .globl __CTOR_LIST__ -__CTOR_LIST__: - .long -1 - diff --git a/libc/arch-arm/bionic/crtend.S b/libc/arch-arm/bionic/crtend.S deleted file mode 100644 index 2f3b1ed..0000000 --- a/libc/arch-arm/bionic/crtend.S +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - - .section .preinit_array, "aw" - .long 0 - - .section .init_array, "aw" - .long 0 - - .section .fini_array, "aw" - .long 0 - - .section .ctors, "aw" - .long 0 - diff --git a/libc/arch-arm/bionic/exidx_dynamic.c b/libc/arch-arm/bionic/exidx_dynamic.c deleted file mode 100644 index 962606f..0000000 --- a/libc/arch-arm/bionic/exidx_dynamic.c +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -typedef long unsigned int *_Unwind_Ptr; - -/* Stubbed out in libdl and defined in the dynamic linker. - * Same semantics as __gnu_Unwind_Find_exidx(). - */ -extern _Unwind_Ptr dl_unwind_find_exidx(_Unwind_Ptr pc, int *pcount); - -/* For a given PC, find the .so that it belongs to. - * Returns the base address of the .ARM.exidx section - * for that .so, and the number of 8-byte entries - * in that section (via *pcount). - * - * libgcc declares __gnu_Unwind_Find_exidx() as a weak symbol, with - * the expectation that libc will define it and call through to - * a differently-named function in the dynamic linker. - */ -_Unwind_Ptr __gnu_Unwind_Find_exidx(_Unwind_Ptr pc, int *pcount) -{ - return dl_unwind_find_exidx(pc, pcount); -} diff --git a/libc/arch-arm/bionic/exidx_static.c b/libc/arch-arm/bionic/exidx_static.c deleted file mode 100644 index e79e951..0000000 --- a/libc/arch-arm/bionic/exidx_static.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -typedef long unsigned int *_Unwind_Ptr; - -/* Find the .ARM.exidx section (which in the case of a static executable - * can be identified through its start and end symbols), and return its - * beginning and numbe of entries to the caller. Note that for static - * executables we do not need to use the value of the PC to find the - * EXIDX section. - */ - -extern unsigned __exidx_end; -extern unsigned __exidx_start; - -_Unwind_Ptr __gnu_Unwind_Find_exidx(_Unwind_Ptr pc __attribute__((unused)), - int *pcount) -{ - *pcount = (__exidx_end-__exidx_start)/8; - return (_Unwind_Ptr)__exidx_start; -} diff --git a/libc/arch-arm/bionic/ffs.S b/libc/arch-arm/bionic/ffs.S deleted file mode 100644 index f11141c..0000000 --- a/libc/arch-arm/bionic/ffs.S +++ /dev/null @@ -1,82 +0,0 @@ -/* $NetBSD: ffs.S,v 1.5 2003/04/05 23:08:52 bjh21 Exp $ */ -/* - * Copyright (c) 2001 Christopher Gilbert - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of the company nor the name of the author may be used to - * endorse or promote products derived from this software without specific - * prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include <machine/asm.h> - -/* - * ffs - find first set bit, this algorithm isolates the first set - * bit, then multiplies the number by 0x0450fbaf which leaves the top - * 6 bits as an index into the table. This algorithm should be a win - * over the checking each bit in turn as per the C compiled version. - * - * under ARMv5 there's an instruction called CLZ (count leading Zero's) that - * could be used - * - * This is the ffs algorithm devised by d.seal and posted to comp.sys.arm on - * 16 Feb 1994. - */ - -ENTRY(ffs) - /* Standard trick to isolate bottom bit in r0 or 0 if r0 = 0 on entry */ - rsb r1, r0, #0 - ands r0, r0, r1 -#ifndef __ARM_ARCH_5__ - /* - * now r0 has at most one set bit, call this X - * if X = 0, all further instructions are skipped - */ - adrne r2, .L_ffs_table - orrne r0, r0, r0, lsl #4 /* r0 = X * 0x11 */ - orrne r0, r0, r0, lsl #6 /* r0 = X * 0x451 */ - rsbne r0, r0, r0, lsl #16 /* r0 = X * 0x0450fbaf */ - - /* now lookup in table indexed on top 6 bits of r0 */ - ldrneb r0, [ r2, r0, lsr #26 ] - - bx lr - -.text; -.type .L_ffs_table, _ASM_TYPE_OBJECT; -.L_ffs_table: -/* 0 1 2 3 4 5 6 7 */ - .byte 0, 1, 2, 13, 3, 7, 0, 14 /* 0- 7 */ - .byte 4, 0, 8, 0, 0, 0, 0, 15 /* 8-15 */ - .byte 11, 5, 0, 0, 9, 0, 0, 26 /* 16-23 */ - .byte 0, 0, 0, 0, 0, 22, 28, 16 /* 24-31 */ - .byte 32, 12, 6, 0, 0, 0, 0, 0 /* 32-39 */ - .byte 10, 0, 0, 25, 0, 0, 21, 27 /* 40-47 */ - .byte 31, 0, 0, 0, 0, 24, 0, 20 /* 48-55 */ - .byte 30, 0, 23, 19, 29, 18, 17, 0 /* 56-63 */ -#else - clzne r0, r0 - rsbne r0, r0, #32 - bx lr -#endif - diff --git a/libc/arch-arm/bionic/kill.S b/libc/arch-arm/bionic/kill.S deleted file mode 100644 index 2954091..0000000 --- a/libc/arch-arm/bionic/kill.S +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -/* unlike our auto-generated syscall stubs, this code saves lr - on the stack, as well as a few other registers. this makes - our stack unwinder happy, when we generate debug stack - traces after the C library or other parts of the system - abort due to a fatal runtime error (e.g. detection - of a corrupted malloc heap). -*/ -#include <sys/linux-syscalls.h> - -#ifndef __NR_kill -#define __NR_kill 37 -#endif - - .text - .type kill, #function - .globl kill - .align 4 - -kill: - stmfd sp!, {r4-r7, ip, lr} - ldr r7, =__NR_kill - swi #0 - ldmfd sp!, {r4-r7, ip, lr} - movs r0, r0 - bxpl lr - b __set_syscall_errno diff --git a/libc/arch-arm/bionic/memcmp.S b/libc/arch-arm/bionic/memcmp.S deleted file mode 100644 index f45b56b..0000000 --- a/libc/arch-arm/bionic/memcmp.S +++ /dev/null @@ -1,285 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include <machine/cpu-features.h> - - .text - - .global memcmp - .type memcmp, %function - .align 4 - -/* - * Optimized memcmp() for ARM9. - * This would not be optimal on XScale or ARM11, where more prefetching - * and use of PLD will be needed. - * The 2 major optimzations here are - * (1) The main loop compares 16 bytes at a time - * (2) The loads are scheduled in a way they won't stall - */ - -memcmp: - PLD (r0, #0) - PLD (r1, #0) - - /* take of the case where length is 0 or the buffers are the same */ - cmp r0, r1 - cmpne r2, #0 - moveq r0, #0 - bxeq lr - - /* save registers */ - stmfd sp!, {r4, lr} - - PLD (r0, #32) - PLD (r1, #32) - - /* since r0 hold the result, move the first source - * pointer somewhere else - */ - - mov r4, r0 - - /* make sure we have at least 8+4 bytes, this simplify things below - * and avoid some overhead for small blocks - */ - cmp r2, #(8+4) - bmi 8f - - /* align first pointer to word boundary - * offset = -src & 3 - */ - rsb r3, r4, #0 - ands r3, r3, #3 - beq 0f - - /* align first pointer */ - sub r2, r2, r3 -1: ldrb r0, [r4], #1 - ldrb ip, [r1], #1 - subs r0, r0, ip - bne 9f - subs r3, r3, #1 - bne 1b - - -0: /* here the first pointer is aligned, and we have at least 4 bytes - * to process. - */ - - /* see if the pointers are congruent */ - eor r0, r4, r1 - ands r0, r0, #3 - bne 5f - - /* congruent case, 32 bytes per iteration - * We need to make sure there are at least 32+4 bytes left - * because we effectively read ahead one word, and we could - * read past the buffer (and segfault) if we're not careful. - */ - - ldr ip, [r1] - subs r2, r2, #(32 + 4) - bmi 1f - -0: PLD (r4, #64) - PLD (r1, #64) - ldr r0, [r4], #4 - ldr lr, [r1, #4]! - eors r0, r0, ip - ldreq r0, [r4], #4 - ldreq ip, [r1, #4]! - eoreqs r0, r0, lr - ldreq r0, [r4], #4 - ldreq lr, [r1, #4]! - eoreqs r0, r0, ip - ldreq r0, [r4], #4 - ldreq ip, [r1, #4]! - eoreqs r0, r0, lr - ldreq r0, [r4], #4 - ldreq lr, [r1, #4]! - eoreqs r0, r0, ip - ldreq r0, [r4], #4 - ldreq ip, [r1, #4]! - eoreqs r0, r0, lr - ldreq r0, [r4], #4 - ldreq lr, [r1, #4]! - eoreqs r0, r0, ip - ldreq r0, [r4], #4 - ldreq ip, [r1, #4]! - eoreqs r0, r0, lr - bne 2f - subs r2, r2, #32 - bhs 0b - - /* do we have at least 4 bytes left? */ -1: adds r2, r2, #(32 - 4 + 4) - bmi 4f - - /* finish off 4 bytes at a time */ -3: ldr r0, [r4], #4 - ldr ip, [r1], #4 - eors r0, r0, ip - bne 2f - subs r2, r2, #4 - bhs 3b - - /* are we done? */ -4: adds r2, r2, #4 - moveq r0, #0 - beq 9f - - /* finish off the remaining bytes */ - b 8f - -2: /* the last 4 bytes are different, restart them */ - sub r4, r4, #4 - sub r1, r1, #4 - mov r2, #4 - - /* process the last few bytes */ -8: ldrb r0, [r4], #1 - ldrb ip, [r1], #1 - // stall - subs r0, r0, ip - bne 9f - subs r2, r2, #1 - bne 8b - -9: /* restore registers and return */ - ldmfd sp!, {r4, lr} - bx lr - - - - - -5: /*************** non-congruent case ***************/ - and r0, r1, #3 - cmp r0, #2 - bne 4f - - /* here, offset is 2 (16-bits aligned, special cased) */ - - /* make sure we have at least 16 bytes to process */ - subs r2, r2, #16 - addmi r2, r2, #16 - bmi 8b - - /* align the unaligned pointer */ - bic r1, r1, #3 - ldr lr, [r1], #4 - -6: PLD (r1, #64) - PLD (r4, #64) - mov ip, lr, lsr #16 - ldr lr, [r1], #4 - ldr r0, [r4], #4 - orr ip, ip, lr, lsl #16 - eors r0, r0, ip - moveq ip, lr, lsr #16 - ldreq lr, [r1], #4 - ldreq r0, [r4], #4 - orreq ip, ip, lr, lsl #16 - eoreqs r0, r0, ip - moveq ip, lr, lsr #16 - ldreq lr, [r1], #4 - ldreq r0, [r4], #4 - orreq ip, ip, lr, lsl #16 - eoreqs r0, r0, ip - moveq ip, lr, lsr #16 - ldreq lr, [r1], #4 - ldreq r0, [r4], #4 - orreq ip, ip, lr, lsl #16 - eoreqs r0, r0, ip - bne 7f - subs r2, r2, #16 - bhs 6b - sub r1, r1, #2 - /* are we done? */ - adds r2, r2, #16 - moveq r0, #0 - beq 9b - /* finish off the remaining bytes */ - b 8b - -7: /* fix up the 2 pointers and fallthrough... */ - sub r1, r1, #(4+2) - sub r4, r4, #4 - mov r2, #4 - b 8b - - -4: /*************** offset is 1 or 3 (less optimized) ***************/ - - stmfd sp!, {r5, r6, r7} - - // r5 = rhs - // r6 = lhs - // r7 = scratch - - mov r5, r0, lsl #3 /* r5 = right shift */ - rsb r6, r5, #32 /* r6 = left shift */ - - /* align the unaligned pointer */ - bic r1, r1, #3 - ldr r7, [r1], #4 - sub r2, r2, #8 - -6: mov ip, r7, lsr r5 - ldr r7, [r1], #4 - ldr r0, [r4], #4 - orr ip, ip, r7, lsl r6 - eors r0, r0, ip - moveq ip, r7, lsr r5 - ldreq r7, [r1], #4 - ldreq r0, [r4], #4 - orreq ip, ip, r7, lsl r6 - eoreqs r0, r0, ip - bne 7f - subs r2, r2, #8 - bhs 6b - - sub r1, r1, r6, lsr #3 - ldmfd sp!, {r5, r6, r7} - - /* are we done? */ - adds r2, r2, #8 - moveq r0, #0 - beq 9b - - /* finish off the remaining bytes */ - b 8b - -7: /* fix up the 2 pointers and fallthrough... */ - sub r1, r1, #4 - sub r1, r1, r6, lsr #3 - sub r4, r4, #4 - mov r2, #4 - ldmfd sp!, {r5, r6, r7} - b 8b diff --git a/libc/arch-arm/bionic/memcmp16.S b/libc/arch-arm/bionic/memcmp16.S deleted file mode 100644 index 38d8b62..0000000 --- a/libc/arch-arm/bionic/memcmp16.S +++ /dev/null @@ -1,236 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include <machine/cpu-features.h> - - .text - - .global __memcmp16 - .type __memcmp16, %function - .align 4 - -/* - * Optimized memcmp16() for ARM9. - * This would not be optimal on XScale or ARM11, where more prefetching - * and use of PLD will be needed. - * The 2 major optimzations here are - * (1) The main loop compares 16 bytes at a time - * (2) The loads are scheduled in a way they won't stall - */ - -__memcmp16: - PLD (r0, #0) - PLD (r1, #0) - - /* take of the case where length is nul or the buffers are the same */ - cmp r0, r1 - cmpne r2, #0 - moveq r0, #0 - bxeq lr - - /* since r0 hold the result, move the first source - * pointer somewhere else - */ - - mov r3, r0 - - /* make sure we have at least 12 words, this simplify things below - * and avoid some overhead for small blocks - */ - - cmp r2, #12 - bpl 0f - - /* small blocks (less then 12 words) */ - PLD (r0, #32) - PLD (r1, #32) - -1: ldrh r0, [r3], #2 - ldrh ip, [r1], #2 - subs r0, r0, ip - bxne lr - subs r2, r2, #1 - bne 1b - bx lr - - - /* save registers */ -0: stmfd sp!, {r4, lr} - - /* align first pointer to word boundary */ - tst r3, #2 - beq 0f - - ldrh r0, [r3], #2 - ldrh ip, [r1], #2 - sub r2, r2, #1 - subs r0, r0, ip - /* restore registers and return */ - ldmnefd sp!, {r4, lr} - bxne lr - - - -0: /* here the first pointer is aligned, and we have at least 3 words - * to process. - */ - - /* see if the pointers are congruent */ - eor r0, r3, r1 - ands r0, r0, #2 - bne 5f - - /* congruent case, 16 half-words per iteration - * We need to make sure there are at least 16+2 words left - * because we effectively read ahead one long word, and we could - * read past the buffer (and segfault) if we're not careful. - */ - - ldr ip, [r1] - subs r2, r2, #(16 + 2) - bmi 1f - -0: - PLD (r3, #64) - PLD (r1, #64) - ldr r0, [r3], #4 - ldr lr, [r1, #4]! - eors r0, r0, ip - ldreq r0, [r3], #4 - ldreq ip, [r1, #4]! - eoreqs r0, r0, lr - ldreq r0, [r3], #4 - ldreq lr, [r1, #4]! - eoreqs r0, r0, ip - ldreq r0, [r3], #4 - ldreq ip, [r1, #4]! - eoreqs r0, r0, lr - ldreq r0, [r3], #4 - ldreq lr, [r1, #4]! - eoreqs r0, r0, ip - ldreq r0, [r3], #4 - ldreq ip, [r1, #4]! - eoreqs r0, r0, lr - ldreq r0, [r3], #4 - ldreq lr, [r1, #4]! - eoreqs r0, r0, ip - ldreq r0, [r3], #4 - ldreq ip, [r1, #4]! - eoreqs r0, r0, lr - bne 2f - subs r2, r2, #16 - bhs 0b - - /* do we have at least 2 words left? */ -1: adds r2, r2, #(16 - 2 + 2) - bmi 4f - - /* finish off 2 words at a time */ -3: ldr r0, [r3], #4 - ldr ip, [r1], #4 - eors r0, r0, ip - bne 2f - subs r2, r2, #2 - bhs 3b - - /* are we done? */ -4: adds r2, r2, #2 - bne 8f - /* restore registers and return */ - mov r0, #0 - ldmfd sp!, {r4, lr} - bx lr - -2: /* the last 2 words are different, restart them */ - ldrh r0, [r3, #-4] - ldrh ip, [r1, #-4] - subs r0, r0, ip - ldreqh r0, [r3, #-2] - ldreqh ip, [r1, #-2] - subeqs r0, r0, ip - /* restore registers and return */ - ldmfd sp!, {r4, lr} - bx lr - - /* process the last few words */ -8: ldrh r0, [r3], #2 - ldrh ip, [r1], #2 - subs r0, r0, ip - bne 9f - subs r2, r2, #1 - bne 8b - -9: /* restore registers and return */ - ldmfd sp!, {r4, lr} - bx lr - - -5: /*************** non-congruent case ***************/ - - /* align the unaligned pointer */ - bic r1, r1, #3 - ldr lr, [r1], #4 - sub r2, r2, #8 - -6: - PLD (r3, #64) - PLD (r1, #64) - mov ip, lr, lsr #16 - ldr lr, [r1], #4 - ldr r0, [r3], #4 - orr ip, ip, lr, lsl #16 - eors r0, r0, ip - moveq ip, lr, lsr #16 - ldreq lr, [r1], #4 - ldreq r0, [r3], #4 - orreq ip, ip, lr, lsl #16 - eoreqs r0, r0, ip - moveq ip, lr, lsr #16 - ldreq lr, [r1], #4 - ldreq r0, [r3], #4 - orreq ip, ip, lr, lsl #16 - eoreqs r0, r0, ip - moveq ip, lr, lsr #16 - ldreq lr, [r1], #4 - ldreq r0, [r3], #4 - orreq ip, ip, lr, lsl #16 - eoreqs r0, r0, ip - bne 7f - subs r2, r2, #8 - bhs 6b - sub r1, r1, #2 - /* are we done? */ - adds r2, r2, #8 - moveq r0, #0 - beq 9b - /* finish off the remaining bytes */ - b 8b - -7: /* fix up the 2 pointers and fallthrough... */ - sub r1, r1, #2 - b 2b diff --git a/libc/arch-arm/bionic/memcpy.S b/libc/arch-arm/bionic/memcpy.S deleted file mode 100644 index fcb58cd..0000000 --- a/libc/arch-arm/bionic/memcpy.S +++ /dev/null @@ -1,387 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include <machine/cpu-features.h> - - .text - - .global memcpy - .type memcpy, %function - .align 4 - - /* - * Optimized memcpy() for ARM. - * - * note that memcpy() always returns the destination pointer, - * so we have to preserve R0. - */ - -memcpy: - /* The stack must always be 64-bits aligned to be compliant with the - * ARM ABI. Since we have to save R0, we might as well save R4 - * which we can use for better pipelining of the reads below - */ - .fnstart - .save {r0, r4, lr} - stmfd sp!, {r0, r4, lr} - /* Making room for r5-r11 which will be spilled later */ - .pad #28 - sub sp, sp, #28 - - // preload the destination because we'll align it to a cache line - // with small writes. Also start the source "pump". - PLD (r0, #0) - PLD (r1, #0) - PLD (r1, #32) - - /* it simplifies things to take care of len<4 early */ - cmp r2, #4 - blo copy_last_3_and_return - - /* compute the offset to align the source - * offset = (4-(src&3))&3 = -src & 3 - */ - rsb r3, r1, #0 - ands r3, r3, #3 - beq src_aligned - - /* align source to 32 bits. We need to insert 2 instructions between - * a ldr[b|h] and str[b|h] because byte and half-word instructions - * stall 2 cycles. - */ - movs r12, r3, lsl #31 - sub r2, r2, r3 /* we know that r3 <= r2 because r2 >= 4 */ - ldrmib r3, [r1], #1 - ldrcsb r4, [r1], #1 - ldrcsb r12,[r1], #1 - strmib r3, [r0], #1 - strcsb r4, [r0], #1 - strcsb r12,[r0], #1 - -src_aligned: - - /* see if src and dst are aligned together (congruent) */ - eor r12, r0, r1 - tst r12, #3 - bne non_congruent - - /* Use post-incriment mode for stm to spill r5-r11 to reserved stack - * frame. Don't update sp. - */ - stmea sp, {r5-r11} - - /* align the destination to a cache-line */ - rsb r3, r0, #0 - ands r3, r3, #0x1C - beq congruent_aligned32 - cmp r3, r2 - andhi r3, r2, #0x1C - - /* conditionnaly copies 0 to 7 words (length in r3) */ - movs r12, r3, lsl #28 - ldmcsia r1!, {r4, r5, r6, r7} /* 16 bytes */ - ldmmiia r1!, {r8, r9} /* 8 bytes */ - stmcsia r0!, {r4, r5, r6, r7} - stmmiia r0!, {r8, r9} - tst r3, #0x4 - ldrne r10,[r1], #4 /* 4 bytes */ - strne r10,[r0], #4 - sub r2, r2, r3 - -congruent_aligned32: - /* - * here source is aligned to 32 bytes. - */ - -cached_aligned32: - subs r2, r2, #32 - blo less_than_32_left - - /* - * We preload a cache-line up to 64 bytes ahead. On the 926, this will - * stall only until the requested world is fetched, but the linefill - * continues in the the background. - * While the linefill is going, we write our previous cache-line - * into the write-buffer (which should have some free space). - * When the linefill is done, the writebuffer will - * start dumping its content into memory - * - * While all this is going, we then load a full cache line into - * 8 registers, this cache line should be in the cache by now - * (or partly in the cache). - * - * This code should work well regardless of the source/dest alignment. - * - */ - - // Align the preload register to a cache-line because the cpu does - // "critical word first" (the first word requested is loaded first). - bic r12, r1, #0x1F - add r12, r12, #64 - -1: ldmia r1!, { r4-r11 } - PLD (r12, #64) - subs r2, r2, #32 - - // NOTE: if r12 is more than 64 ahead of r1, the following ldrhi - // for ARM9 preload will not be safely guarded by the preceding subs. - // When it is safely guarded the only possibility to have SIGSEGV here - // is because the caller overstates the length. - ldrhi r3, [r12], #32 /* cheap ARM9 preload */ - stmia r0!, { r4-r11 } - bhs 1b - - add r2, r2, #32 - - - - -less_than_32_left: - /* - * less than 32 bytes left at this point (length in r2) - */ - - /* skip all this if there is nothing to do, which should - * be a common case (if not executed the code below takes - * about 16 cycles) - */ - tst r2, #0x1F - beq 1f - - /* conditionnaly copies 0 to 31 bytes */ - movs r12, r2, lsl #28 - ldmcsia r1!, {r4, r5, r6, r7} /* 16 bytes */ - ldmmiia r1!, {r8, r9} /* 8 bytes */ - stmcsia r0!, {r4, r5, r6, r7} - stmmiia r0!, {r8, r9} - movs r12, r2, lsl #30 - ldrcs r3, [r1], #4 /* 4 bytes */ - ldrmih r4, [r1], #2 /* 2 bytes */ - strcs r3, [r0], #4 - strmih r4, [r0], #2 - tst r2, #0x1 - ldrneb r3, [r1] /* last byte */ - strneb r3, [r0] - - /* we're done! restore everything and return */ -1: ldmfd sp!, {r5-r11} - ldmfd sp!, {r0, r4, lr} - bx lr - - /********************************************************************/ - -non_congruent: - /* - * here source is aligned to 4 bytes - * but destination is not. - * - * in the code below r2 is the number of bytes read - * (the number of bytes written is always smaller, because we have - * partial words in the shift queue) - */ - cmp r2, #4 - blo copy_last_3_and_return - - /* Use post-incriment mode for stm to spill r5-r11 to reserved stack - * frame. Don't update sp. - */ - stmea sp, {r5-r11} - - /* compute shifts needed to align src to dest */ - rsb r5, r0, #0 - and r5, r5, #3 /* r5 = # bytes in partial words */ - mov r12, r5, lsl #3 /* r12 = right */ - rsb lr, r12, #32 /* lr = left */ - - /* read the first word */ - ldr r3, [r1], #4 - sub r2, r2, #4 - - /* write a partial word (0 to 3 bytes), such that destination - * becomes aligned to 32 bits (r5 = nb of words to copy for alignment) - */ - movs r5, r5, lsl #31 - strmib r3, [r0], #1 - movmi r3, r3, lsr #8 - strcsb r3, [r0], #1 - movcs r3, r3, lsr #8 - strcsb r3, [r0], #1 - movcs r3, r3, lsr #8 - - cmp r2, #4 - blo partial_word_tail - - /* Align destination to 32 bytes (cache line boundary) */ -1: tst r0, #0x1c - beq 2f - ldr r5, [r1], #4 - sub r2, r2, #4 - orr r4, r3, r5, lsl lr - mov r3, r5, lsr r12 - str r4, [r0], #4 - cmp r2, #4 - bhs 1b - blo partial_word_tail - - /* copy 32 bytes at a time */ -2: subs r2, r2, #32 - blo less_than_thirtytwo - - /* Use immediate mode for the shifts, because there is an extra cycle - * for register shifts, which could account for up to 50% of - * performance hit. - */ - - cmp r12, #24 - beq loop24 - cmp r12, #8 - beq loop8 - -loop16: - ldr r12, [r1], #4 -1: mov r4, r12 - ldmia r1!, { r5,r6,r7, r8,r9,r10,r11} - PLD (r1, #64) - subs r2, r2, #32 - ldrhs r12, [r1], #4 - orr r3, r3, r4, lsl #16 - mov r4, r4, lsr #16 - orr r4, r4, r5, lsl #16 - mov r5, r5, lsr #16 - orr r5, r5, r6, lsl #16 - mov r6, r6, lsr #16 - orr r6, r6, r7, lsl #16 - mov r7, r7, lsr #16 - orr r7, r7, r8, lsl #16 - mov r8, r8, lsr #16 - orr r8, r8, r9, lsl #16 - mov r9, r9, lsr #16 - orr r9, r9, r10, lsl #16 - mov r10, r10, lsr #16 - orr r10, r10, r11, lsl #16 - stmia r0!, {r3,r4,r5,r6, r7,r8,r9,r10} - mov r3, r11, lsr #16 - bhs 1b - b less_than_thirtytwo - -loop8: - ldr r12, [r1], #4 -1: mov r4, r12 - ldmia r1!, { r5,r6,r7, r8,r9,r10,r11} - PLD (r1, #64) - subs r2, r2, #32 - ldrhs r12, [r1], #4 - orr r3, r3, r4, lsl #24 - mov r4, r4, lsr #8 - orr r4, r4, r5, lsl #24 - mov r5, r5, lsr #8 - orr r5, r5, r6, lsl #24 - mov r6, r6, lsr #8 - orr r6, r6, r7, lsl #24 - mov r7, r7, lsr #8 - orr r7, r7, r8, lsl #24 - mov r8, r8, lsr #8 - orr r8, r8, r9, lsl #24 - mov r9, r9, lsr #8 - orr r9, r9, r10, lsl #24 - mov r10, r10, lsr #8 - orr r10, r10, r11, lsl #24 - stmia r0!, {r3,r4,r5,r6, r7,r8,r9,r10} - mov r3, r11, lsr #8 - bhs 1b - b less_than_thirtytwo - -loop24: - ldr r12, [r1], #4 -1: mov r4, r12 - ldmia r1!, { r5,r6,r7, r8,r9,r10,r11} - PLD (r1, #64) - subs r2, r2, #32 - ldrhs r12, [r1], #4 - orr r3, r3, r4, lsl #8 - mov r4, r4, lsr #24 - orr r4, r4, r5, lsl #8 - mov r5, r5, lsr #24 - orr r5, r5, r6, lsl #8 - mov r6, r6, lsr #24 - orr r6, r6, r7, lsl #8 - mov r7, r7, lsr #24 - orr r7, r7, r8, lsl #8 - mov r8, r8, lsr #24 - orr r8, r8, r9, lsl #8 - mov r9, r9, lsr #24 - orr r9, r9, r10, lsl #8 - mov r10, r10, lsr #24 - orr r10, r10, r11, lsl #8 - stmia r0!, {r3,r4,r5,r6, r7,r8,r9,r10} - mov r3, r11, lsr #24 - bhs 1b - - -less_than_thirtytwo: - /* copy the last 0 to 31 bytes of the source */ - rsb r12, lr, #32 /* we corrupted r12, recompute it */ - add r2, r2, #32 - cmp r2, #4 - blo partial_word_tail - -1: ldr r5, [r1], #4 - sub r2, r2, #4 - orr r4, r3, r5, lsl lr - mov r3, r5, lsr r12 - str r4, [r0], #4 - cmp r2, #4 - bhs 1b - -partial_word_tail: - /* we have a partial word in the input buffer */ - movs r5, lr, lsl #(31-3) - strmib r3, [r0], #1 - movmi r3, r3, lsr #8 - strcsb r3, [r0], #1 - movcs r3, r3, lsr #8 - strcsb r3, [r0], #1 - - /* Refill spilled registers from the stack. Don't update sp. */ - ldmfd sp, {r5-r11} - -copy_last_3_and_return: - movs r2, r2, lsl #31 /* copy remaining 0, 1, 2 or 3 bytes */ - ldrmib r2, [r1], #1 - ldrcsb r3, [r1], #1 - ldrcsb r12,[r1] - strmib r2, [r0], #1 - strcsb r3, [r0], #1 - strcsb r12,[r0] - - /* we're done! restore sp and spilled registers and return */ - add sp, sp, #28 - ldmfd sp!, {r0, r4, lr} - bx lr - .fnend - diff --git a/libc/arch-arm/bionic/memset.S b/libc/arch-arm/bionic/memset.S deleted file mode 100644 index d52d622..0000000 --- a/libc/arch-arm/bionic/memset.S +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - .text - - .global memset - .type memset, %function - - .global bzero - .type bzero, %function - - .align - - /* - * Optimized memset() for ARM. - * - * memset() returns its first argument. - */ - -bzero: - mov r2, r1 - mov r1, #0 - -memset: - /* compute the offset to align the destination - * offset = (4-(src&3))&3 = -src & 3 - */ - .fnstart - .save {r0, r4-r7, lr} - stmfd sp!, {r0, r4-r7, lr} - rsb r3, r0, #0 - ands r3, r3, #3 - cmp r3, r2 - movhi r3, r2 - - /* splat r1 */ - mov r1, r1, lsl #24 - orr r1, r1, r1, lsr #8 - orr r1, r1, r1, lsr #16 - - movs r12, r3, lsl #31 - strcsb r1, [r0], #1 /* can't use strh (alignment unknown) */ - strcsb r1, [r0], #1 - strmib r1, [r0], #1 - subs r2, r2, r3 - ldmlsfd sp!, {r0, r4-r7, lr} /* return */ - bxls lr - - /* align the destination to a cache-line */ - mov r12, r1 - mov lr, r1 - mov r4, r1 - mov r5, r1 - mov r6, r1 - mov r7, r1 - - rsb r3, r0, #0 - ands r3, r3, #0x1C - beq aligned32 - cmp r3, r2 - andhi r3, r2, #0x1C - sub r2, r2, r3 - - /* conditionnaly writes 0 to 7 words (length in r3) */ - movs r3, r3, lsl #28 - stmcsia r0!, {r1, lr} - stmcsia r0!, {r1, lr} - stmmiia r0!, {r1, lr} - movs r3, r3, lsl #2 - strcs r1, [r0], #4 - -aligned32: - subs r2, r2, #32 - mov r3, r1 - bmi 2f -1: subs r2, r2, #32 - stmia r0!, {r1,r3,r4,r5,r6,r7,r12,lr} - bhs 1b -2: add r2, r2, #32 - - /* conditionnaly stores 0 to 31 bytes */ - movs r2, r2, lsl #28 - stmcsia r0!, {r1,r3,r12,lr} - stmmiia r0!, {r1, lr} - movs r2, r2, lsl #2 - strcs r1, [r0], #4 - strmih r1, [r0], #2 - movs r2, r2, lsl #2 - strcsb r1, [r0] - ldmfd sp!, {r0, r4-r7, lr} - bx lr - .fnend - diff --git a/libc/arch-arm/bionic/setjmp.S b/libc/arch-arm/bionic/setjmp.S deleted file mode 100644 index a9f6ea4..0000000 --- a/libc/arch-arm/bionic/setjmp.S +++ /dev/null @@ -1,136 +0,0 @@ -/* $OpenBSD: setjmp.S,v 1.2 2004/02/01 05:40:52 drahn Exp $ */ -/* $NetBSD: setjmp.S,v 1.5 2003/04/05 23:08:51 bjh21 Exp $ */ - -/* - * Copyright (c) 1997 Mark Brinicombe - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by Mark Brinicombe - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include <machine/asm.h> -#include <machine/setjmp.h> - -/* - * C library -- setjmp, longjmp - * - * longjmp(a,v) - * will generate a "return(v)" from the last call to - * setjmp(a) - * by restoring registers from the stack. - * The previous signal state is restored. - */ - -ENTRY(setjmp) - /* Block all signals and retrieve the old signal mask */ - stmfd sp!, {r0, r14} - mov r0, #0x00000000 - - bl PIC_SYM(_C_LABEL(sigblock), PLT) - mov r1, r0 - - ldmfd sp!, {r0, r14} - - /* Store signal mask */ - str r1, [r0, #(25 * 4)] - - ldr r1, .Lsetjmp_magic - str r1, [r0], #4 - -#ifdef SOFTFLOAT - add r0, r0, #52 -#else - /* Store fp registers */ - sfm f4, 4, [r0], #48 - /* Store fpsr */ - rfs r1 - str r1, [r0], #0x0004 -#endif /*SOFTFLOAT*/ - /* Store integer registers */ - stmia r0, {r4-r14} - mov r0, #0x00000000 - bx lr - -.Lsetjmp_magic: - .word _JB_MAGIC_SETJMP - - -ENTRY(longjmp) - ldr r2, .Lsetjmp_magic - ldr r3, [r0] - teq r2, r3 - bne botch - - /* Fetch signal mask */ - ldr r2, [r0, #(25 * 4)] - - /* Set signal mask */ - stmfd sp!, {r0, r1, r14} - sub sp, sp, #4 /* align the stack */ - - mov r0, r2 - bl PIC_SYM(_C_LABEL(sigsetmask), PLT) - - add sp, sp, #4 /* unalign the stack */ - ldmfd sp!, {r0, r1, r14} - - add r0, r0, #4 -#ifdef SOFTFLOAT - add r0, r0, #52 -#else - /* Restore fp registers */ - lfm f4, 4, [r0], #48 - /* Restore FPSR */ - ldr r4, [r0], #0x0004 - wfs r4 -#endif /* SOFTFLOAT */ - /* Restore integer registers */ - ldmia r0, {r4-r14} - - /* Validate sp and r14 */ - teq sp, #0 - teqne r14, #0 - beq botch - - /* Set return value */ - - mov r0, r1 - teq r0, #0x00000000 - moveq r0, #0x00000001 - bx lr -#ifdef __ARM_26__ - mov r15, r14 -#else - mov r15, r14 -#endif - - /* validation failed, die die die. */ -botch: - bl PIC_SYM(_C_LABEL(longjmperror), PLT) - bl PIC_SYM(_C_LABEL(abort), PLT) - b . - 8 /* Cannot get here */ diff --git a/libc/arch-arm/bionic/sigsetjmp.S b/libc/arch-arm/bionic/sigsetjmp.S deleted file mode 100644 index 50e6429..0000000 --- a/libc/arch-arm/bionic/sigsetjmp.S +++ /dev/null @@ -1,62 +0,0 @@ -/* $OpenBSD: sigsetjmp.S,v 1.2 2004/02/01 05:40:52 drahn Exp $ */ -/* $NetBSD: sigsetjmp.S,v 1.3 2002/08/17 19:54:30 thorpej Exp $ */ - -/* - * Copyright (c) 1997 Mark Brinicombe - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by Mark Brinicombe - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include <machine/asm.h> -#include <machine/setjmp.h> - -/* - * C library -- sigsetjmp, siglongjmp - * - * longjmp(a,v) - * will generate a "return(v)" from the last call to - * setjmp(a, m) - * by restoring registers from the stack. - * The previous signal state is restored. - */ - -ENTRY(sigsetjmp) - teq r1, #0 - beq PIC_SYM(_C_LABEL(_setjmp), PLT) - b PIC_SYM(_C_LABEL(setjmp), PLT) - -.L_setjmp_magic: - .word _JB_MAGIC__SETJMP - -ENTRY(siglongjmp) - ldr r2, .L_setjmp_magic - ldr r3, [r0] - teq r2, r3 - beq PIC_SYM(_C_LABEL(_longjmp), PLT) - b PIC_SYM(_C_LABEL(longjmp), PLT) diff --git a/libc/arch-arm/bionic/strlen.c b/libc/arch-arm/bionic/strlen.c deleted file mode 100644 index 01632e3..0000000 --- a/libc/arch-arm/bionic/strlen.c +++ /dev/null @@ -1,129 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -#include <string.h> -#include <stdint.h> -#include <machine/cpu-features.h> - -size_t strlen(const char *s) -{ - __builtin_prefetch(s); - __builtin_prefetch(s+32); - - union { - const char *b; - const uint32_t *w; - uintptr_t i; - } u; - - // these are some scratch variables for the asm code below - uint32_t v, t; - - // initialize the string length to zero - size_t l = 0; - - // align the pointer to a 32-bit word boundary - u.b = s; - while (u.i & 0x3) { - if (__builtin_expect(*u.b++ == 0, 0)) { - goto done; - } - l++; - } - - // loop for each word, testing if it contains a zero byte - // if so, exit the loop and update the length. - // We need to process 32 bytes per loop to schedule PLD properly - // and achieve the maximum bus speed. - asm( - "ldr %[v], [ %[s] ], #4 \n" - "sub %[l], %[l], %[s] \n" - "0: \n" -#if __ARM_HAVE_PLD - "pld [ %[s], #64 ] \n" -#endif - "sub %[t], %[v], %[mask], lsr #7\n" - "and %[t], %[t], %[mask] \n" - "bics %[t], %[t], %[v] \n" - "ldreq %[v], [ %[s] ], #4 \n" -#if !defined(__OPTIMIZE_SIZE__) - "bne 1f \n" - "sub %[t], %[v], %[mask], lsr #7\n" - "and %[t], %[t], %[mask] \n" - "bics %[t], %[t], %[v] \n" - "ldreq %[v], [ %[s] ], #4 \n" - "bne 1f \n" - "sub %[t], %[v], %[mask], lsr #7\n" - "and %[t], %[t], %[mask] \n" - "bics %[t], %[t], %[v] \n" - "ldreq %[v], [ %[s] ], #4 \n" - "bne 1f \n" - "sub %[t], %[v], %[mask], lsr #7\n" - "and %[t], %[t], %[mask] \n" - "bics %[t], %[t], %[v] \n" - "ldreq %[v], [ %[s] ], #4 \n" - "bne 1f \n" - "sub %[t], %[v], %[mask], lsr #7\n" - "and %[t], %[t], %[mask] \n" - "bics %[t], %[t], %[v] \n" - "ldreq %[v], [ %[s] ], #4 \n" - "bne 1f \n" - "sub %[t], %[v], %[mask], lsr #7\n" - "and %[t], %[t], %[mask] \n" - "bics %[t], %[t], %[v] \n" - "ldreq %[v], [ %[s] ], #4 \n" - "bne 1f \n" - "sub %[t], %[v], %[mask], lsr #7\n" - "and %[t], %[t], %[mask] \n" - "bics %[t], %[t], %[v] \n" - "ldreq %[v], [ %[s] ], #4 \n" - "bne 1f \n" - "sub %[t], %[v], %[mask], lsr #7\n" - "and %[t], %[t], %[mask] \n" - "bics %[t], %[t], %[v] \n" - "ldreq %[v], [ %[s] ], #4 \n" -#endif - "beq 0b \n" - "1: \n" - "add %[l], %[l], %[s] \n" - "tst %[v], #0xFF \n" - "beq 2f \n" - "add %[l], %[l], #1 \n" - "tst %[v], #0xFF00 \n" - "beq 2f \n" - "add %[l], %[l], #1 \n" - "tst %[v], #0xFF0000 \n" - "addne %[l], %[l], #1 \n" - "2: \n" - : [l]"=&r"(l), [v]"=&r"(v), [t]"=&r"(t), [s]"=&r"(u.b) - : "%[l]"(l), "%[s]"(u.b), [mask]"r"(0x80808080UL) - : "cc" - ); - -done: - return l; -} diff --git a/libc/arch-arm/bionic/syscall.S b/libc/arch-arm/bionic/syscall.S deleted file mode 100644 index ada12a6..0000000 --- a/libc/arch-arm/bionic/syscall.S +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -#include <sys/linux-syscalls.h> - - - .text - .align 4 - .type syscall,#function - .globl syscall - - .text - .align - -#if __ARM_EABI__ - -syscall: - mov ip, sp - stmfd sp!, {r4, r5, r6, r7} - mov r7, r0 - mov r0, r1 - mov r1, r2 - mov r2, r3 - ldmfd ip, {r3, r4, r5, r6} - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - -#else - -#ifndef __NR_syscall -#define __NR_syscall 113 -#endif - -syscall: - stmfd sp!, {r4, r5, lr} - ldr r4, [sp, #12] - ldr r5, [sp, #16] - swi __NR_syscall - ldmfd sp!, {r4, r5, lr} - movs r0, r0 - bxpl lr - b __set_syscall_errno - -#endif diff --git a/libc/arch-arm/bionic/tkill.S b/libc/arch-arm/bionic/tkill.S deleted file mode 100644 index 7b3301a..0000000 --- a/libc/arch-arm/bionic/tkill.S +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -/* unlike our auto-generated syscall stubs, this code saves lr - on the stack, as well as a few other registers. this makes - our stack unwinder happy, when we generate debug stack - traces after the C library or other parts of the system - abort due to a fatal runtime error (e.g. detection - of a corrupted malloc heap). -*/ -#include <sys/linux-syscalls.h> - -#ifndef __NR_tkill -#define __NR_tkill 238 -#endif - - .text - .type tkill, #function - .globl tkill - .align 4 - -tkill: - stmfd sp!, {r4-r7, ip, lr} - ldr r7, =__NR_tkill - swi #0 - ldmfd sp!, {r4-r7, ip, lr} - movs r0, r0 - bxpl lr - b __set_syscall_errno diff --git a/libc/arch-arm/include/endian.h b/libc/arch-arm/include/endian.h deleted file mode 100644 index 04204ed..0000000 --- a/libc/arch-arm/include/endian.h +++ /dev/null @@ -1,10 +0,0 @@ -/* $OpenBSD: endian.h,v 1.3 2005/12/13 00:35:23 millert Exp $ */ - -#ifdef __ARMEB__ -#define _BYTE_ORDER _BIG_ENDIAN -#else -#define _BYTE_ORDER _LITTLE_ENDIAN -#endif -#define __STRICT_ALIGNMENT -#include <sys/types.h> -#include <sys/endian.h> diff --git a/libc/arch-arm/include/machine/_types.h b/libc/arch-arm/include/machine/_types.h deleted file mode 100644 index 6d10e12..0000000 --- a/libc/arch-arm/include/machine/_types.h +++ /dev/null @@ -1,127 +0,0 @@ -/* $OpenBSD: _types.h,v 1.3 2006/02/14 18:12:58 miod Exp $ */ - -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)types.h 8.3 (Berkeley) 1/5/94 - * @(#)ansi.h 8.2 (Berkeley) 1/4/94 - */ - -#ifndef _ARM__TYPES_H_ -#define _ARM__TYPES_H_ - - -#if !defined(__ARM_EABI__) -/* the kernel defines size_t as unsigned int, but g++ wants it to be unsigned long */ -#define _SIZE_T -#define _SSIZE_T -#define _PTRDIFF_T -typedef unsigned long size_t; -typedef long ssize_t; -typedef long ptrdiff_t; -#endif - -//#include <linux/types.h> - -/* 7.18.1.1 Exact-width integer types */ -typedef __signed char __int8_t; -typedef unsigned char __uint8_t; -typedef short __int16_t; -typedef unsigned short __uint16_t; -typedef int __int32_t; -typedef unsigned int __uint32_t; -/* LONGLONG */ -typedef long long __int64_t; -/* LONGLONG */ -typedef unsigned long long __uint64_t; - -/* 7.18.1.2 Minimum-width integer types */ -typedef __int8_t __int_least8_t; -typedef __uint8_t __uint_least8_t; -typedef __int16_t __int_least16_t; -typedef __uint16_t __uint_least16_t; -typedef __int32_t __int_least32_t; -typedef __uint32_t __uint_least32_t; -typedef __int64_t __int_least64_t; -typedef __uint64_t __uint_least64_t; - -/* 7.18.1.3 Fastest minimum-width integer types */ -typedef __int32_t __int_fast8_t; -typedef __uint32_t __uint_fast8_t; -typedef __int32_t __int_fast16_t; -typedef __uint32_t __uint_fast16_t; -typedef __int32_t __int_fast32_t; -typedef __uint32_t __uint_fast32_t; -typedef __int64_t __int_fast64_t; -typedef __uint64_t __uint_fast64_t; - -/* 7.18.1.4 Integer types capable of holding object pointers */ -typedef int __intptr_t; -typedef unsigned int __uintptr_t; - -/* 7.18.1.5 Greatest-width integer types */ -typedef __int64_t __intmax_t; -typedef __uint64_t __uintmax_t; - -/* Register size */ -typedef __int32_t __register_t; - -/* VM system types */ -typedef unsigned long __vaddr_t; -typedef unsigned long __paddr_t; -typedef unsigned long __vsize_t; -typedef unsigned long __psize_t; - -/* Standard system types */ -typedef int __clock_t; -typedef int __clockid_t; -typedef long __ptrdiff_t; -typedef int __time_t; -typedef int __timer_t; -#if defined(__GNUC__) && __GNUC__ >= 3 -typedef __builtin_va_list __va_list; -#else -typedef char * __va_list; -#endif - -/* Wide character support types */ -#ifndef __cplusplus -typedef int __wchar_t; -#endif -typedef int __wint_t; -typedef int __rune_t; -typedef void * __wctrans_t; -typedef void * __wctype_t; - -#ifdef __ARMEB__ -#define _BYTE_ORDER _BIG_ENDIAN -#else -#define _BYTE_ORDER _LITTLE_ENDIAN -#endif - -#endif /* _ARM__TYPES_H_ */ diff --git a/libc/arch-arm/include/machine/asm.h b/libc/arch-arm/include/machine/asm.h deleted file mode 100644 index c7bd017..0000000 --- a/libc/arch-arm/include/machine/asm.h +++ /dev/null @@ -1,130 +0,0 @@ -/* $OpenBSD: asm.h,v 1.1 2004/02/01 05:09:49 drahn Exp $ */ -/* $NetBSD: asm.h,v 1.4 2001/07/16 05:43:32 matt Exp $ */ - -/* - * Copyright (c) 1990 The Regents of the University of California. - * All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * William Jolitz. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * from: @(#)asm.h 5.5 (Berkeley) 5/7/91 - */ - -#ifndef _ARM32_ASM_H_ -#define _ARM32_ASM_H_ - -#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 - -#ifdef __STDC__ -# define __CONCAT(x,y) x ## y -# define __STRING(x) #x -#else -# define __CONCAT(x,y) x/**/y -# define __STRING(x) "x" -#endif - -#ifndef _ALIGN_TEXT -# define _ALIGN_TEXT .align 0 -#endif - -/* - * gas/arm uses @ as a single comment character and thus cannot be used here - * Instead it recognised the # instead of an @ symbols in .type directives - * We define a couple of macros so that assembly code will not be dependant - * on one or the other. - */ -#define _ASM_TYPE_FUNCTION #function -#define _ASM_TYPE_OBJECT #object -#define _ENTRY(x) \ - .text; _ALIGN_TEXT; .globl x; .type x,_ASM_TYPE_FUNCTION; x: - -#ifdef GPROF -# ifdef __ELF__ -# define _PROF_PROLOGUE \ - mov ip, lr; bl __mcount -# else -# define _PROF_PROLOGUE \ - mov ip,lr; bl mcount -# endif -#else -# define _PROF_PROLOGUE -#endif - -#define ENTRY(y) _ENTRY(_C_LABEL(y)); _PROF_PROLOGUE -#define ENTRY_NP(y) _ENTRY(_C_LABEL(y)) -#define ASENTRY(y) _ENTRY(_ASM_LABEL(y)); _PROF_PROLOGUE -#define ASENTRY_NP(y) _ENTRY(_ASM_LABEL(y)) - -#define ASMSTR .asciz - -#if defined(__ELF__) && defined(PIC) -#ifdef __STDC__ -#define PIC_SYM(x,y) x ## ( ## y ## ) -#else -#define PIC_SYM(x,y) x/**/(/**/y/**/) -#endif -#else -#define PIC_SYM(x,y) x -#endif - -#ifdef __ELF__ -#define RCSID(x) .section ".ident"; .asciz x -#else -#define RCSID(x) .text; .asciz x -#endif - -#ifdef __ELF__ -#define WEAK_ALIAS(alias,sym) \ - .weak alias; \ - alias = sym -#endif - -#ifdef __STDC__ -#define WARN_REFERENCES(sym,msg) \ - .stabs msg ## ,30,0,0,0 ; \ - .stabs __STRING(_C_LABEL(sym)) ## ,1,0,0,0 -#elif defined(__ELF__) -#define WARN_REFERENCES(sym,msg) \ - .stabs msg,30,0,0,0 ; \ - .stabs __STRING(sym),1,0,0,0 -#else -#define WARN_REFERENCES(sym,msg) \ - .stabs msg,30,0,0,0 ; \ - .stabs __STRING(_/**/sym),1,0,0,0 -#endif /* __STDC__ */ - -#endif /* !_ARM_ASM_H_ */ diff --git a/libc/arch-arm/include/machine/cdefs.h b/libc/arch-arm/include/machine/cdefs.h deleted file mode 100644 index 44f1542..0000000 --- a/libc/arch-arm/include/machine/cdefs.h +++ /dev/null @@ -1,19 +0,0 @@ -/* $OpenBSD: cdefs.h,v 1.2 2005/11/24 20:46:44 deraadt Exp $ */ - -#ifndef _MACHINE_CDEFS_H_ -#define _MACHINE_CDEFS_H_ - -#if defined(lint) -#define __indr_reference(sym,alias) __lint_equal__(sym,alias) -#define __warn_references(sym,msg) -#define __weak_alias(alias,sym) __lint_equal__(sym,alias) -#elif defined(__GNUC__) && defined(__STDC__) -#define __weak_alias(alias,sym) \ - __asm__(".weak " __STRING(alias) " ; " __STRING(alias) \ - " = " __STRING(sym)); -#define __warn_references(sym,msg) \ - __asm__(".section .gnu.warning." __STRING(sym) \ - " ; .ascii \"" msg "\" ; .text"); -#endif - -#endif /* !_MACHINE_CDEFS_H_ */ diff --git a/libc/arch-arm/include/machine/cpu-features.h b/libc/arch-arm/include/machine/cpu-features.h deleted file mode 100644 index f836006..0000000 --- a/libc/arch-arm/include/machine/cpu-features.h +++ /dev/null @@ -1,164 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -#ifndef _ARM_MACHINE_CPU_FEATURES_H -#define _ARM_MACHINE_CPU_FEATURES_H - -/* The purpose of this file is to define several macros corresponding - * to CPU features that may or may not be available at build time on - * on the target CPU. - * - * This is done to abstract us from the various ARM Architecture - * quirks and alphabet soup. - * - * IMPORTANT: We have no intention to support anything below an ARMv4T ! - */ - -/* _ARM_ARCH_REVISION is a number corresponding to the ARM revision - * we're going to support - * - * it looks like our toolchain doesn't define __ARM_ARCH__ - * so try to guess it. - * - * - * - */ -#ifndef __ARM_ARCH__ - -# if defined __ARM_ARCH_7__ || defined __ARM_ARCH_7A__ || \ - defined __ARM_ARCH_7R__ || defined __ARM_ARCH_7M__ - -# define __ARM_ARCH__ 7 - -# elif defined __ARM_ARCH_6__ || defined __ARM_ARCH_6J__ || \ - defined __ARM_ARCH_6K__ || defined __ARM_ARCH_6Z__ || \ - defined __ARM_ARCH_6KZ__ || defined __ARM_ARCH_6T2__ -# -# define __ARM_ARCH__ 6 -# -# elif defined __ARM_ARCH_5__ || defined __ARM_ARCH_5T__ || \ - defined __ARM_ARCH_5TE__ || defined __ARM_ARCH_5TEJ__ -# -# define __ARM_ARCH__ 5 -# -# elif defined __ARM_ARCH_4T__ -# -# define __ARM_ARCH__ 4 -# -# elif defined __ARM_ARCH_4__ -# error ARMv4 is not supported, please use ARMv4T at a minimum -# else -# error Unknown or unsupported ARM architecture -# endif -#endif - -/* experimental feature used to check that our ARMv4 workarounds - * work correctly without a real ARMv4 machine */ -#ifdef BIONIC_EXPERIMENTAL_FORCE_ARMV4 -# undef __ARM_ARCH__ -# define __ARM_ARCH__ 4 -#endif - -/* define __ARM_HAVE_5TE if we have the ARMv5TE instructions */ -#if __ARM_ARCH__ > 5 -# define __ARM_HAVE_5TE 1 -#elif __ARM_ARCH__ == 5 -# if defined __ARM_ARCH_5TE__ || defined __ARM_ARCH_5TEJ__ -# define __ARM_HAVE_5TE 1 -# endif -#endif - -/* instructions introduced in ARMv5 */ -#if __ARM_ARCH__ >= 5 -# define __ARM_HAVE_BLX 1 -# define __ARM_HAVE_CLZ 1 -# define __ARM_HAVE_LDC2 1 -# define __ARM_HAVE_MCR2 1 -# define __ARM_HAVE_MRC2 1 -# define __ARM_HAVE_STC2 1 -#endif - -/* ARMv5TE introduces a few instructions */ -#if __ARM_HAVE_5TE -# define __ARM_HAVE_PLD 1 -# define __ARM_HAVE_MCRR 1 -# define __ARM_HAVE_MRRC 1 -#endif - -/* define __ARM_HAVE_HALFWORD_MULTIPLY when half-word multiply instructions - * this means variants of: smul, smulw, smla, smlaw, smlal - */ -#if __ARM_HAVE_5TE -# define __ARM_HAVE_HALFWORD_MULTIPLY 1 -#endif - -/* define __ARM_HAVE_PAIR_LOAD_STORE when 64-bit memory loads and stored - * into/from a pair of 32-bit registers is supported throuhg 'ldrd' and 'strd' - */ -#if __ARM_HAVE_5TE -# define __ARM_HAVE_PAIR_LOAD_STORE 1 -#endif - -/* define __ARM_HAVE_SATURATED_ARITHMETIC is you have the saturated integer - * arithmetic instructions: qdd, qdadd, qsub, qdsub - */ -#if __ARM_HAVE_5TE -# define __ARM_HAVE_SATURATED_ARITHMETIC 1 -#endif - -/* define __ARM_HAVE_PC_INTERWORK when a direct assignment to the - * pc register will switch into thumb/ARM mode depending on bit 0 - * of the new instruction address. Before ARMv5, this was not the - * case, and you have to write: - * - * mov r0, [<some address>] - * bx r0 - * - * instead of: - * - * ldr pc, [<some address>] - * - * note that this affects any instruction that explicitely changes the - * value of the pc register, including ldm { ...,pc } or 'add pc, #offset' - */ -#if __ARM_ARCH__ >= 5 -# define __ARM_HAVE_PC_INTERWORK -#endif - - -/* Assembly-only macros */ - -/* define a handy PLD(address) macro since the cache preload - * is an optional opcode - */ -#if __ARM_HAVE_PLD -# define PLD(reg,offset) pld [reg, offset] -#else -# define PLD(reg,offset) /* nothing */ -#endif - -#endif /* _ARM_MACHINE_CPU_FEATURES_H */ diff --git a/libc/arch-arm/include/machine/exec.h b/libc/arch-arm/include/machine/exec.h deleted file mode 100644 index 227b207..0000000 --- a/libc/arch-arm/include/machine/exec.h +++ /dev/null @@ -1,50 +0,0 @@ -/* $OpenBSD: exec.h,v 1.9 2003/04/17 03:42:14 drahn Exp $ */ -/* $NetBSD: exec.h,v 1.6 1994/10/27 04:16:05 cgd Exp $ */ - -/* - * Copyright (c) 1993 Christopher G. Demetriou - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef _ARM_EXEC_H_ -#define _ARM_EXEC_H_ - -#define __LDPGSZ 4096 - -#define NATIVE_EXEC_ELF - -#define ARCH_ELFSIZE 32 - -#define ELF_TARG_CLASS ELFCLASS32 -#define ELF_TARG_DATA ELFDATA2LSB -#define ELF_TARG_MACH EM_ARM - -#define _NLIST_DO_AOUT -#define _NLIST_DO_ELF - -#define _KERN_DO_AOUT -#define _KERN_DO_ELF - -#endif /* _ARM_EXEC_H_ */ diff --git a/libc/arch-arm/include/machine/ieee.h b/libc/arch-arm/include/machine/ieee.h deleted file mode 100644 index 5f9b89e..0000000 --- a/libc/arch-arm/include/machine/ieee.h +++ /dev/null @@ -1,191 +0,0 @@ -/* $OpenBSD: ieee.h,v 1.1 2004/02/01 05:09:49 drahn Exp $ */ -/* $NetBSD: ieee.h,v 1.2 2001/02/21 17:43:50 bjh21 Exp $ */ - -/* - * Copyright (c) 1992, 1993 - * The Regents of the University of California. All rights reserved. - * - * This software was developed by the Computer Systems Engineering group - * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and - * contributed to Berkeley. - * - * All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Lawrence Berkeley Laboratory. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)ieee.h 8.1 (Berkeley) 6/11/93 - */ - -/* - * ieee.h defines the machine-dependent layout of the machine's IEEE - * floating point. - */ - -/* - * Define the number of bits in each fraction and exponent. - * - * k k+1 - * Note that 1.0 x 2 == 0.1 x 2 and that denorms are represented - * - * (-exp_bias+1) - * as fractions that look like 0.fffff x 2 . This means that - * - * -126 - * the number 0.10000 x 2 , for instance, is the same as the normalized - * - * -127 -128 - * float 1.0 x 2 . Thus, to represent 2 , we need one leading zero - * - * -129 - * in the fraction; to represent 2 , we need two, and so on. This - * - * (-exp_bias-fracbits+1) - * implies that the smallest denormalized number is 2 - * - * for whichever format we are talking about: for single precision, for - * - * -126 -149 - * instance, we get .00000000000000000000001 x 2 , or 1.0 x 2 , and - * - * -149 == -127 - 23 + 1. - */ - -/* - * The ARM has two sets of FP data formats. The FPA supports 32-bit, 64-bit - * and 96-bit IEEE formats, with the words in big-endian order. VFP supports - * 32-bin and 64-bit IEEE formats with the words in the CPU's native byte - * order. - * - * The FPA also has two packed decimal formats, but we ignore them here. - */ - -#define SNG_EXPBITS 8 -#define SNG_FRACBITS 23 - -#define DBL_EXPBITS 11 -#define DBL_FRACBITS 52 - -#ifndef __VFP_FP__ -#define E80_EXPBITS 15 -#define E80_FRACBITS 64 - -#define EXT_EXPBITS 15 -#define EXT_FRACBITS 112 -#endif - -struct ieee_single { - u_int sng_frac:23; - u_int sng_exponent:8; - u_int sng_sign:1; -}; - -#ifdef __VFP_FP__ -struct ieee_double { -#ifdef __ARMEB__ - u_int dbl_sign:1; - u_int dbl_exp:11; - u_int dbl_frach:20; - u_int dbl_fracl; -#else /* !__ARMEB__ */ - u_int dbl_fracl; - u_int dbl_frach:20; - u_int dbl_exp:11; - u_int dbl_sign:1; -#endif /* !__ARMEB__ */ -}; -#else /* !__VFP_FP__ */ -struct ieee_double { - u_int dbl_frach:20; - u_int dbl_exp:11; - u_int dbl_sign:1; - u_int dbl_fracl; -}; - -union ieee_double_u { - double dblu_d; - struct ieee_double dblu_dbl; -}; - - -struct ieee_e80 { - u_int e80_exp:15; - u_int e80_zero:16; - u_int e80_sign:1; - u_int e80_frach:31; - u_int e80_j:1; - u_int e80_fracl; -}; - -struct ieee_ext { - u_int ext_frach:16; - u_int ext_exp:15; - u_int ext_sign:1; - u_int ext_frachm; - u_int ext_fraclm; - u_int ext_fracl; -}; -#endif /* !__VFP_FP__ */ - -/* - * Floats whose exponent is in [1..INFNAN) (of whatever type) are - * `normal'. Floats whose exponent is INFNAN are either Inf or NaN. - * Floats whose exponent is zero are either zero (iff all fraction - * bits are zero) or subnormal values. - * - * A NaN is a `signalling NaN' if its QUIETNAN bit is clear in its - * high fraction; if the bit is set, it is a `quiet NaN'. - */ -#define SNG_EXP_INFNAN 255 -#define DBL_EXP_INFNAN 2047 -#ifndef __VFP_FP__ -#define E80_EXP_INFNAN 32767 -#define EXT_EXP_INFNAN 32767 -#endif /* !__VFP_FP__ */ - -#if 0 -#define SNG_QUIETNAN (1 << 22) -#define DBL_QUIETNAN (1 << 19) -#ifndef __VFP_FP__ -#define E80_QUIETNAN (1 << 15) -#define EXT_QUIETNAN (1 << 15) -#endif /* !__VFP_FP__ */ -#endif - -/* - * Exponent biases. - */ -#define SNG_EXP_BIAS 127 -#define DBL_EXP_BIAS 1023 -#ifndef __VFP_FP__ -#define E80_EXP_BIAS 16383 -#define EXT_EXP_BIAS 16383 -#endif /* !__VFP_FP__ */ diff --git a/libc/arch-arm/include/machine/internal_types.h b/libc/arch-arm/include/machine/internal_types.h deleted file mode 100644 index 7e610b0..0000000 --- a/libc/arch-arm/include/machine/internal_types.h +++ /dev/null @@ -1,10 +0,0 @@ -/* $OpenBSD: internal_types.h,v 1.2 2004/05/06 15:53:39 drahn Exp $ */ -/* Public domain */ -#ifndef _ARM_INTERNAL_TYPES_H_ -#define _ARM_INTERNAL_TYPES_H_ - -#ifdef __CHAR_UNSIGNED__ -#define __machine_has_unsigned_chars -#endif - -#endif diff --git a/libc/arch-arm/include/machine/kernel.h b/libc/arch-arm/include/machine/kernel.h deleted file mode 100644 index 462b8e3..0000000 --- a/libc/arch-arm/include/machine/kernel.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ -#ifndef _ARCH_ARM_KERNEL_H -#define _ARCH_ARM_KERNEL_H - -/* this file contains kernel-specific definitions that were optimized out of - our processed kernel headers, but still useful nonetheless... */ - -typedef unsigned long __kernel_blkcnt_t; -typedef unsigned long __kernel_blksize_t; - -/* these aren't really defined by the kernel headers though... */ -typedef unsigned long __kernel_fsblkcnt_t; -typedef unsigned long __kernel_fsfilcnt_t; -typedef unsigned int __kernel_id_t; - -#endif /* _ARCH_ARM_KERNEL_H */ diff --git a/libc/arch-arm/include/machine/limits.h b/libc/arch-arm/include/machine/limits.h deleted file mode 100644 index f9c04fa..0000000 --- a/libc/arch-arm/include/machine/limits.h +++ /dev/null @@ -1,63 +0,0 @@ -/* $OpenBSD: limits.h,v 1.3 2006/01/06 22:48:46 millert Exp $ */ -/* $NetBSD: limits.h,v 1.4 2003/04/28 23:16:18 bjh21 Exp $ */ - -/* - * Copyright (c) 1988 The Regents of the University of California. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * from: @(#)limits.h 7.2 (Berkeley) 6/28/90 - */ - -#ifndef _ARM32_LIMITS_H_ -#define _ARM32_LIMITS_H_ - -#include <sys/cdefs.h> - -#define MB_LEN_MAX 1 /* no multibyte characters */ - -#ifndef SIZE_MAX -#define SIZE_MAX UINT_MAX /* max value for a size_t */ -#endif -#ifndef SSIZE_MAX -#define SSIZE_MAX INT_MAX /* max value for a ssize_t */ -#endif - -#if __BSD_VISIBLE -#define SIZE_T_MAX UINT_MAX /* max value for a size_t (historic) */ - -#define UQUAD_MAX 0xffffffffffffffffULL /* max unsigned quad */ -#define QUAD_MAX 0x7fffffffffffffffLL /* max signed quad */ -#define QUAD_MIN (-0x7fffffffffffffffLL-1) /* min signed quad */ - -#endif /* __BSD_VISIBLE */ - -#define LONGLONG_BIT 64 -#define LONGLONG_MIN (-9223372036854775807LL-1) -#define LONGLONG_MAX 9223372036854775807LL -#define ULONGLONG_MAX 18446744073709551615ULL - -#endif /* _ARM32_LIMITS_H_ */ diff --git a/libc/arch-arm/include/machine/setjmp.h b/libc/arch-arm/include/machine/setjmp.h deleted file mode 100644 index f20cab2..0000000 --- a/libc/arch-arm/include/machine/setjmp.h +++ /dev/null @@ -1,87 +0,0 @@ -/* $OpenBSD: setjmp.h,v 1.1 2004/02/01 05:09:49 drahn Exp $ */ -/* $NetBSD: setjmp.h,v 1.2 2001/08/25 14:45:59 bjh21 Exp $ */ - -/* - * machine/setjmp.h: machine dependent setjmp-related information. - */ - -#ifdef __ELF__ -#define _JBLEN 64 /* size, in longs, of a jmp_buf */ -#else -#define _JBLEN 29 /* size, in longs, of a jmp_buf */ -#endif - -/* - * NOTE: The internal structure of a jmp_buf is *PRIVATE* - * This information is provided as there is software - * that fiddles with this with obtain the stack pointer - * (yes really ! and its commercial !). - * - * Description of the setjmp buffer - * - * word 0 magic number (dependant on creator) - * 1 - 3 f4 fp register 4 - * 4 - 6 f5 fp register 5 - * 7 - 9 f6 fp register 6 - * 10 - 12 f7 fp register 7 - * 13 fpsr fp status register - * 14 r4 register 4 - * 15 r5 register 5 - * 16 r6 register 6 - * 17 r7 register 7 - * 18 r8 register 8 - * 19 r9 register 9 - * 20 r10 register 10 (sl) - * 21 r11 register 11 (fp) - * 22 r12 register 12 (ip) - * 23 r13 register 13 (sp) - * 24 r14 register 14 (lr) - * 25 signal mask (dependant on magic) - * 26 (con't) - * 27 (con't) - * 28 (con't) - * - * The magic number number identifies the jmp_buf and - * how the buffer was created as well as providing - * a sanity check - * - * A side note I should mention - Please do not tamper - * with the floating point fields. While they are - * always saved and restored at the moment this cannot - * be garenteed especially if the compiler happens - * to be generating soft-float code so no fp - * registers will be used. - * - * Whilst this can be seen an encouraging people to - * use the setjmp buffer in this way I think that it - * is for the best then if changes occur compiles will - * break rather than just having new builds falling over - * mysteriously. - */ - -#define _JB_MAGIC__SETJMP 0x4278f500 -#define _JB_MAGIC_SETJMP 0x4278f501 - -/* Valid for all jmp_buf's */ - -#define _JB_MAGIC 0 -#define _JB_REG_F4 1 -#define _JB_REG_F5 4 -#define _JB_REG_F6 7 -#define _JB_REG_F7 10 -#define _JB_REG_FPSR 13 -#define _JB_REG_R4 14 -#define _JB_REG_R5 15 -#define _JB_REG_R6 16 -#define _JB_REG_R7 17 -#define _JB_REG_R8 18 -#define _JB_REG_R9 19 -#define _JB_REG_R10 20 -#define _JB_REG_R11 21 -#define _JB_REG_R12 22 -#define _JB_REG_R13 23 -#define _JB_REG_R14 24 - -/* Only valid with the _JB_MAGIC_SETJMP magic */ - -#define _JB_SIGMASK 25 diff --git a/libc/arch-arm/syscalls.mk b/libc/arch-arm/syscalls.mk deleted file mode 100644 index 706cb0c..0000000 --- a/libc/arch-arm/syscalls.mk +++ /dev/null @@ -1,170 +0,0 @@ -# auto-generated by gensyscalls.py, do not touch -syscall_src := -syscall_src += arch-arm/syscalls/_exit.S -syscall_src += arch-arm/syscalls/_exit_thread.S -syscall_src += arch-arm/syscalls/__fork.S -syscall_src += arch-arm/syscalls/waitid.S -syscall_src += arch-arm/syscalls/__clone.S -syscall_src += arch-arm/syscalls/execve.S -syscall_src += arch-arm/syscalls/setuid.S -syscall_src += arch-arm/syscalls/getuid.S -syscall_src += arch-arm/syscalls/getgid.S -syscall_src += arch-arm/syscalls/geteuid.S -syscall_src += arch-arm/syscalls/getegid.S -syscall_src += arch-arm/syscalls/getresuid.S -syscall_src += arch-arm/syscalls/getresgid.S -syscall_src += arch-arm/syscalls/gettid.S -syscall_src += arch-arm/syscalls/getgroups.S -syscall_src += arch-arm/syscalls/getpgid.S -syscall_src += arch-arm/syscalls/getppid.S -syscall_src += arch-arm/syscalls/setsid.S -syscall_src += arch-arm/syscalls/setgid.S -syscall_src += arch-arm/syscalls/setreuid.S -syscall_src += arch-arm/syscalls/setresuid.S -syscall_src += arch-arm/syscalls/setresgid.S -syscall_src += arch-arm/syscalls/__brk.S -syscall_src += arch-arm/syscalls/__ptrace.S -syscall_src += arch-arm/syscalls/__getpriority.S -syscall_src += arch-arm/syscalls/setpriority.S -syscall_src += arch-arm/syscalls/setrlimit.S -syscall_src += arch-arm/syscalls/getrlimit.S -syscall_src += arch-arm/syscalls/getrusage.S -syscall_src += arch-arm/syscalls/setgroups.S -syscall_src += arch-arm/syscalls/setpgid.S -syscall_src += arch-arm/syscalls/vfork.S -syscall_src += arch-arm/syscalls/setregid.S -syscall_src += arch-arm/syscalls/chroot.S -syscall_src += arch-arm/syscalls/prctl.S -syscall_src += arch-arm/syscalls/capget.S -syscall_src += arch-arm/syscalls/capset.S -syscall_src += arch-arm/syscalls/acct.S -syscall_src += arch-arm/syscalls/read.S -syscall_src += arch-arm/syscalls/write.S -syscall_src += arch-arm/syscalls/__pread64.S -syscall_src += arch-arm/syscalls/__pwrite64.S -syscall_src += arch-arm/syscalls/__open.S -syscall_src += arch-arm/syscalls/__openat.S -syscall_src += arch-arm/syscalls/close.S -syscall_src += arch-arm/syscalls/lseek.S -syscall_src += arch-arm/syscalls/__llseek.S -syscall_src += arch-arm/syscalls/getpid.S -syscall_src += arch-arm/syscalls/__mmap2.S -syscall_src += arch-arm/syscalls/munmap.S -syscall_src += arch-arm/syscalls/mremap.S -syscall_src += arch-arm/syscalls/msync.S -syscall_src += arch-arm/syscalls/mprotect.S -syscall_src += arch-arm/syscalls/madvise.S -syscall_src += arch-arm/syscalls/mlock.S -syscall_src += arch-arm/syscalls/munlock.S -syscall_src += arch-arm/syscalls/mincore.S -syscall_src += arch-arm/syscalls/__ioctl.S -syscall_src += arch-arm/syscalls/readv.S -syscall_src += arch-arm/syscalls/writev.S -syscall_src += arch-arm/syscalls/__fcntl.S -syscall_src += arch-arm/syscalls/flock.S -syscall_src += arch-arm/syscalls/fchmod.S -syscall_src += arch-arm/syscalls/dup.S -syscall_src += arch-arm/syscalls/pipe.S -syscall_src += arch-arm/syscalls/dup2.S -syscall_src += arch-arm/syscalls/select.S -syscall_src += arch-arm/syscalls/ftruncate.S -syscall_src += arch-arm/syscalls/getdents.S -syscall_src += arch-arm/syscalls/fsync.S -syscall_src += arch-arm/syscalls/fchown.S -syscall_src += arch-arm/syscalls/sync.S -syscall_src += arch-arm/syscalls/__fcntl64.S -syscall_src += arch-arm/syscalls/fstatfs.S -syscall_src += arch-arm/syscalls/sendfile.S -syscall_src += arch-arm/syscalls/fstatat.S -syscall_src += arch-arm/syscalls/mkdirat.S -syscall_src += arch-arm/syscalls/fchownat.S -syscall_src += arch-arm/syscalls/fchmodat.S -syscall_src += arch-arm/syscalls/renameat.S -syscall_src += arch-arm/syscalls/link.S -syscall_src += arch-arm/syscalls/unlink.S -syscall_src += arch-arm/syscalls/unlinkat.S -syscall_src += arch-arm/syscalls/chdir.S -syscall_src += arch-arm/syscalls/mknod.S -syscall_src += arch-arm/syscalls/chmod.S -syscall_src += arch-arm/syscalls/chown.S -syscall_src += arch-arm/syscalls/lchown.S -syscall_src += arch-arm/syscalls/mount.S -syscall_src += arch-arm/syscalls/umount2.S -syscall_src += arch-arm/syscalls/fstat.S -syscall_src += arch-arm/syscalls/stat.S -syscall_src += arch-arm/syscalls/lstat.S -syscall_src += arch-arm/syscalls/mkdir.S -syscall_src += arch-arm/syscalls/readlink.S -syscall_src += arch-arm/syscalls/rmdir.S -syscall_src += arch-arm/syscalls/rename.S -syscall_src += arch-arm/syscalls/__getcwd.S -syscall_src += arch-arm/syscalls/access.S -syscall_src += arch-arm/syscalls/symlink.S -syscall_src += arch-arm/syscalls/fchdir.S -syscall_src += arch-arm/syscalls/truncate.S -syscall_src += arch-arm/syscalls/__statfs64.S -syscall_src += arch-arm/syscalls/pause.S -syscall_src += arch-arm/syscalls/gettimeofday.S -syscall_src += arch-arm/syscalls/settimeofday.S -syscall_src += arch-arm/syscalls/times.S -syscall_src += arch-arm/syscalls/nanosleep.S -syscall_src += arch-arm/syscalls/clock_gettime.S -syscall_src += arch-arm/syscalls/clock_settime.S -syscall_src += arch-arm/syscalls/clock_getres.S -syscall_src += arch-arm/syscalls/clock_nanosleep.S -syscall_src += arch-arm/syscalls/getitimer.S -syscall_src += arch-arm/syscalls/setitimer.S -syscall_src += arch-arm/syscalls/__timer_create.S -syscall_src += arch-arm/syscalls/__timer_settime.S -syscall_src += arch-arm/syscalls/__timer_gettime.S -syscall_src += arch-arm/syscalls/__timer_getoverrun.S -syscall_src += arch-arm/syscalls/__timer_delete.S -syscall_src += arch-arm/syscalls/utimes.S -syscall_src += arch-arm/syscalls/sigaction.S -syscall_src += arch-arm/syscalls/sigprocmask.S -syscall_src += arch-arm/syscalls/__sigsuspend.S -syscall_src += arch-arm/syscalls/__rt_sigaction.S -syscall_src += arch-arm/syscalls/__rt_sigprocmask.S -syscall_src += arch-arm/syscalls/__rt_sigtimedwait.S -syscall_src += arch-arm/syscalls/sigpending.S -syscall_src += arch-arm/syscalls/socket.S -syscall_src += arch-arm/syscalls/socketpair.S -syscall_src += arch-arm/syscalls/bind.S -syscall_src += arch-arm/syscalls/connect.S -syscall_src += arch-arm/syscalls/listen.S -syscall_src += arch-arm/syscalls/accept.S -syscall_src += arch-arm/syscalls/getsockname.S -syscall_src += arch-arm/syscalls/getpeername.S -syscall_src += arch-arm/syscalls/sendto.S -syscall_src += arch-arm/syscalls/recvfrom.S -syscall_src += arch-arm/syscalls/shutdown.S -syscall_src += arch-arm/syscalls/setsockopt.S -syscall_src += arch-arm/syscalls/getsockopt.S -syscall_src += arch-arm/syscalls/sendmsg.S -syscall_src += arch-arm/syscalls/recvmsg.S -syscall_src += arch-arm/syscalls/sched_setscheduler.S -syscall_src += arch-arm/syscalls/sched_getscheduler.S -syscall_src += arch-arm/syscalls/sched_yield.S -syscall_src += arch-arm/syscalls/sched_setparam.S -syscall_src += arch-arm/syscalls/sched_getparam.S -syscall_src += arch-arm/syscalls/sched_get_priority_max.S -syscall_src += arch-arm/syscalls/sched_get_priority_min.S -syscall_src += arch-arm/syscalls/sched_rr_get_interval.S -syscall_src += arch-arm/syscalls/uname.S -syscall_src += arch-arm/syscalls/__wait4.S -syscall_src += arch-arm/syscalls/umask.S -syscall_src += arch-arm/syscalls/__reboot.S -syscall_src += arch-arm/syscalls/__syslog.S -syscall_src += arch-arm/syscalls/init_module.S -syscall_src += arch-arm/syscalls/delete_module.S -syscall_src += arch-arm/syscalls/klogctl.S -syscall_src += arch-arm/syscalls/futex.S -syscall_src += arch-arm/syscalls/epoll_create.S -syscall_src += arch-arm/syscalls/epoll_ctl.S -syscall_src += arch-arm/syscalls/epoll_wait.S -syscall_src += arch-arm/syscalls/inotify_init.S -syscall_src += arch-arm/syscalls/inotify_add_watch.S -syscall_src += arch-arm/syscalls/inotify_rm_watch.S -syscall_src += arch-arm/syscalls/poll.S -syscall_src += arch-arm/syscalls/__set_tls.S -syscall_src += arch-arm/syscalls/cacheflush.S diff --git a/libc/arch-arm/syscalls/__brk.S b/libc/arch-arm/syscalls/__brk.S deleted file mode 100644 index 99ad2e3..0000000 --- a/libc/arch-arm/syscalls/__brk.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __brk, #function - .globl __brk - .align 4 - .fnstart - -__brk: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_brk - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__clone.S b/libc/arch-arm/syscalls/__clone.S deleted file mode 100644 index 650e2c0..0000000 --- a/libc/arch-arm/syscalls/__clone.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __clone, #function - .globl __clone - .align 4 - .fnstart - -__clone: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_clone - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__fcntl.S b/libc/arch-arm/syscalls/__fcntl.S deleted file mode 100644 index 1b7b92f..0000000 --- a/libc/arch-arm/syscalls/__fcntl.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __fcntl, #function - .globl __fcntl - .align 4 - .fnstart - -__fcntl: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_fcntl - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__fcntl64.S b/libc/arch-arm/syscalls/__fcntl64.S deleted file mode 100644 index d1a6fc8..0000000 --- a/libc/arch-arm/syscalls/__fcntl64.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __fcntl64, #function - .globl __fcntl64 - .align 4 - .fnstart - -__fcntl64: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_fcntl64 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__fork.S b/libc/arch-arm/syscalls/__fork.S deleted file mode 100644 index fddd276..0000000 --- a/libc/arch-arm/syscalls/__fork.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __fork, #function - .globl __fork - .align 4 - .fnstart - -__fork: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_fork - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__getcwd.S b/libc/arch-arm/syscalls/__getcwd.S deleted file mode 100644 index 6098d09..0000000 --- a/libc/arch-arm/syscalls/__getcwd.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __getcwd, #function - .globl __getcwd - .align 4 - .fnstart - -__getcwd: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getcwd - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__getpriority.S b/libc/arch-arm/syscalls/__getpriority.S deleted file mode 100644 index 2b652ef..0000000 --- a/libc/arch-arm/syscalls/__getpriority.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __getpriority, #function - .globl __getpriority - .align 4 - .fnstart - -__getpriority: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getpriority - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__ioctl.S b/libc/arch-arm/syscalls/__ioctl.S deleted file mode 100644 index 2fad231..0000000 --- a/libc/arch-arm/syscalls/__ioctl.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __ioctl, #function - .globl __ioctl - .align 4 - .fnstart - -__ioctl: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_ioctl - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__llseek.S b/libc/arch-arm/syscalls/__llseek.S deleted file mode 100644 index 8325e2d..0000000 --- a/libc/arch-arm/syscalls/__llseek.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __llseek, #function - .globl __llseek - .align 4 - .fnstart - -__llseek: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR__llseek - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__mmap2.S b/libc/arch-arm/syscalls/__mmap2.S deleted file mode 100644 index d57020a..0000000 --- a/libc/arch-arm/syscalls/__mmap2.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __mmap2, #function - .globl __mmap2 - .align 4 - .fnstart - -__mmap2: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_mmap2 - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__open.S b/libc/arch-arm/syscalls/__open.S deleted file mode 100644 index 7e3fb7a..0000000 --- a/libc/arch-arm/syscalls/__open.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __open, #function - .globl __open - .align 4 - .fnstart - -__open: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_open - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__openat.S b/libc/arch-arm/syscalls/__openat.S deleted file mode 100644 index ae92b9d..0000000 --- a/libc/arch-arm/syscalls/__openat.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __openat, #function - .globl __openat - .align 4 - .fnstart - -__openat: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_openat - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__pread64.S b/libc/arch-arm/syscalls/__pread64.S deleted file mode 100644 index ea645e1..0000000 --- a/libc/arch-arm/syscalls/__pread64.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __pread64, #function - .globl __pread64 - .align 4 - .fnstart - -__pread64: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_pread64 - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__ptrace.S b/libc/arch-arm/syscalls/__ptrace.S deleted file mode 100644 index 329a5af..0000000 --- a/libc/arch-arm/syscalls/__ptrace.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __ptrace, #function - .globl __ptrace - .align 4 - .fnstart - -__ptrace: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_ptrace - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__pwrite64.S b/libc/arch-arm/syscalls/__pwrite64.S deleted file mode 100644 index d1263be..0000000 --- a/libc/arch-arm/syscalls/__pwrite64.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __pwrite64, #function - .globl __pwrite64 - .align 4 - .fnstart - -__pwrite64: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_pwrite64 - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__reboot.S b/libc/arch-arm/syscalls/__reboot.S deleted file mode 100644 index 770e9f8..0000000 --- a/libc/arch-arm/syscalls/__reboot.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __reboot, #function - .globl __reboot - .align 4 - .fnstart - -__reboot: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_reboot - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__rt_sigaction.S b/libc/arch-arm/syscalls/__rt_sigaction.S deleted file mode 100644 index 29abd55..0000000 --- a/libc/arch-arm/syscalls/__rt_sigaction.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __rt_sigaction, #function - .globl __rt_sigaction - .align 4 - .fnstart - -__rt_sigaction: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_rt_sigaction - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__rt_sigprocmask.S b/libc/arch-arm/syscalls/__rt_sigprocmask.S deleted file mode 100644 index c3acb54..0000000 --- a/libc/arch-arm/syscalls/__rt_sigprocmask.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __rt_sigprocmask, #function - .globl __rt_sigprocmask - .align 4 - .fnstart - -__rt_sigprocmask: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_rt_sigprocmask - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__rt_sigtimedwait.S b/libc/arch-arm/syscalls/__rt_sigtimedwait.S deleted file mode 100644 index 0fb1573..0000000 --- a/libc/arch-arm/syscalls/__rt_sigtimedwait.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __rt_sigtimedwait, #function - .globl __rt_sigtimedwait - .align 4 - .fnstart - -__rt_sigtimedwait: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_rt_sigtimedwait - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__set_tls.S b/libc/arch-arm/syscalls/__set_tls.S deleted file mode 100644 index f6a097f..0000000 --- a/libc/arch-arm/syscalls/__set_tls.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __set_tls, #function - .globl __set_tls - .align 4 - .fnstart - -__set_tls: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_ARM_set_tls - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__sigsuspend.S b/libc/arch-arm/syscalls/__sigsuspend.S deleted file mode 100644 index 39416f1..0000000 --- a/libc/arch-arm/syscalls/__sigsuspend.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __sigsuspend, #function - .globl __sigsuspend - .align 4 - .fnstart - -__sigsuspend: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sigsuspend - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__statfs64.S b/libc/arch-arm/syscalls/__statfs64.S deleted file mode 100644 index f602637..0000000 --- a/libc/arch-arm/syscalls/__statfs64.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __statfs64, #function - .globl __statfs64 - .align 4 - .fnstart - -__statfs64: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_statfs64 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__syslog.S b/libc/arch-arm/syscalls/__syslog.S deleted file mode 100644 index 3318d76..0000000 --- a/libc/arch-arm/syscalls/__syslog.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __syslog, #function - .globl __syslog - .align 4 - .fnstart - -__syslog: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_syslog - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__timer_create.S b/libc/arch-arm/syscalls/__timer_create.S deleted file mode 100644 index 5bc3966..0000000 --- a/libc/arch-arm/syscalls/__timer_create.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __timer_create, #function - .globl __timer_create - .align 4 - .fnstart - -__timer_create: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_timer_create - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__timer_delete.S b/libc/arch-arm/syscalls/__timer_delete.S deleted file mode 100644 index 4ddee01..0000000 --- a/libc/arch-arm/syscalls/__timer_delete.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __timer_delete, #function - .globl __timer_delete - .align 4 - .fnstart - -__timer_delete: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_timer_delete - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__timer_getoverrun.S b/libc/arch-arm/syscalls/__timer_getoverrun.S deleted file mode 100644 index fb0c87d..0000000 --- a/libc/arch-arm/syscalls/__timer_getoverrun.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __timer_getoverrun, #function - .globl __timer_getoverrun - .align 4 - .fnstart - -__timer_getoverrun: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_timer_getoverrun - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__timer_gettime.S b/libc/arch-arm/syscalls/__timer_gettime.S deleted file mode 100644 index 9d6e446..0000000 --- a/libc/arch-arm/syscalls/__timer_gettime.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __timer_gettime, #function - .globl __timer_gettime - .align 4 - .fnstart - -__timer_gettime: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_timer_gettime - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__timer_settime.S b/libc/arch-arm/syscalls/__timer_settime.S deleted file mode 100644 index a7be132..0000000 --- a/libc/arch-arm/syscalls/__timer_settime.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __timer_settime, #function - .globl __timer_settime - .align 4 - .fnstart - -__timer_settime: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_timer_settime - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/__wait4.S b/libc/arch-arm/syscalls/__wait4.S deleted file mode 100644 index 9670177..0000000 --- a/libc/arch-arm/syscalls/__wait4.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type __wait4, #function - .globl __wait4 - .align 4 - .fnstart - -__wait4: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_wait4 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/_exit.S b/libc/arch-arm/syscalls/_exit.S deleted file mode 100644 index e750ca3..0000000 --- a/libc/arch-arm/syscalls/_exit.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type _exit, #function - .globl _exit - .align 4 - .fnstart - -_exit: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_exit_group - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/_exit_thread.S b/libc/arch-arm/syscalls/_exit_thread.S deleted file mode 100644 index c6f868f..0000000 --- a/libc/arch-arm/syscalls/_exit_thread.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type _exit_thread, #function - .globl _exit_thread - .align 4 - .fnstart - -_exit_thread: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_exit - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/accept.S b/libc/arch-arm/syscalls/accept.S deleted file mode 100644 index 6c32f24..0000000 --- a/libc/arch-arm/syscalls/accept.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type accept, #function - .globl accept - .align 4 - .fnstart - -accept: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_accept - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/access.S b/libc/arch-arm/syscalls/access.S deleted file mode 100644 index 3639106..0000000 --- a/libc/arch-arm/syscalls/access.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type access, #function - .globl access - .align 4 - .fnstart - -access: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_access - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/acct.S b/libc/arch-arm/syscalls/acct.S deleted file mode 100644 index d7d8781..0000000 --- a/libc/arch-arm/syscalls/acct.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type acct, #function - .globl acct - .align 4 - .fnstart - -acct: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_acct - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/bind.S b/libc/arch-arm/syscalls/bind.S deleted file mode 100644 index 66cc667..0000000 --- a/libc/arch-arm/syscalls/bind.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type bind, #function - .globl bind - .align 4 - .fnstart - -bind: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_bind - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/cacheflush.S b/libc/arch-arm/syscalls/cacheflush.S deleted file mode 100644 index d7fba90..0000000 --- a/libc/arch-arm/syscalls/cacheflush.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type cacheflush, #function - .globl cacheflush - .align 4 - .fnstart - -cacheflush: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_ARM_cacheflush - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/capget.S b/libc/arch-arm/syscalls/capget.S deleted file mode 100644 index 92082a1..0000000 --- a/libc/arch-arm/syscalls/capget.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type capget, #function - .globl capget - .align 4 - .fnstart - -capget: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_capget - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/capset.S b/libc/arch-arm/syscalls/capset.S deleted file mode 100644 index 8a169ed..0000000 --- a/libc/arch-arm/syscalls/capset.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type capset, #function - .globl capset - .align 4 - .fnstart - -capset: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_capset - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/chdir.S b/libc/arch-arm/syscalls/chdir.S deleted file mode 100644 index ff4ec68..0000000 --- a/libc/arch-arm/syscalls/chdir.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type chdir, #function - .globl chdir - .align 4 - .fnstart - -chdir: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_chdir - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/chmod.S b/libc/arch-arm/syscalls/chmod.S deleted file mode 100644 index 56e43c5..0000000 --- a/libc/arch-arm/syscalls/chmod.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type chmod, #function - .globl chmod - .align 4 - .fnstart - -chmod: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_chmod - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/chown.S b/libc/arch-arm/syscalls/chown.S deleted file mode 100644 index 1d3032f..0000000 --- a/libc/arch-arm/syscalls/chown.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type chown, #function - .globl chown - .align 4 - .fnstart - -chown: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_chown32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/chroot.S b/libc/arch-arm/syscalls/chroot.S deleted file mode 100644 index c063d8b..0000000 --- a/libc/arch-arm/syscalls/chroot.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type chroot, #function - .globl chroot - .align 4 - .fnstart - -chroot: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_chroot - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/clock_getres.S b/libc/arch-arm/syscalls/clock_getres.S deleted file mode 100644 index 6fdbe37..0000000 --- a/libc/arch-arm/syscalls/clock_getres.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type clock_getres, #function - .globl clock_getres - .align 4 - .fnstart - -clock_getres: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_clock_getres - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/clock_gettime.S b/libc/arch-arm/syscalls/clock_gettime.S deleted file mode 100644 index 8941b23..0000000 --- a/libc/arch-arm/syscalls/clock_gettime.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type clock_gettime, #function - .globl clock_gettime - .align 4 - .fnstart - -clock_gettime: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_clock_gettime - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/clock_nanosleep.S b/libc/arch-arm/syscalls/clock_nanosleep.S deleted file mode 100644 index 2c10151..0000000 --- a/libc/arch-arm/syscalls/clock_nanosleep.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type clock_nanosleep, #function - .globl clock_nanosleep - .align 4 - .fnstart - -clock_nanosleep: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_clock_nanosleep - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/clock_settime.S b/libc/arch-arm/syscalls/clock_settime.S deleted file mode 100644 index 94614f2..0000000 --- a/libc/arch-arm/syscalls/clock_settime.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type clock_settime, #function - .globl clock_settime - .align 4 - .fnstart - -clock_settime: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_clock_settime - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/close.S b/libc/arch-arm/syscalls/close.S deleted file mode 100644 index e54b100..0000000 --- a/libc/arch-arm/syscalls/close.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type close, #function - .globl close - .align 4 - .fnstart - -close: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_close - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/connect.S b/libc/arch-arm/syscalls/connect.S deleted file mode 100644 index b05d6a2..0000000 --- a/libc/arch-arm/syscalls/connect.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type connect, #function - .globl connect - .align 4 - .fnstart - -connect: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_connect - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/delete_module.S b/libc/arch-arm/syscalls/delete_module.S deleted file mode 100644 index 69d5966..0000000 --- a/libc/arch-arm/syscalls/delete_module.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type delete_module, #function - .globl delete_module - .align 4 - .fnstart - -delete_module: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_delete_module - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/dup.S b/libc/arch-arm/syscalls/dup.S deleted file mode 100644 index 5a5d050..0000000 --- a/libc/arch-arm/syscalls/dup.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type dup, #function - .globl dup - .align 4 - .fnstart - -dup: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_dup - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/dup2.S b/libc/arch-arm/syscalls/dup2.S deleted file mode 100644 index 1ced458..0000000 --- a/libc/arch-arm/syscalls/dup2.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type dup2, #function - .globl dup2 - .align 4 - .fnstart - -dup2: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_dup2 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/epoll_create.S b/libc/arch-arm/syscalls/epoll_create.S deleted file mode 100644 index 389d4ba..0000000 --- a/libc/arch-arm/syscalls/epoll_create.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type epoll_create, #function - .globl epoll_create - .align 4 - .fnstart - -epoll_create: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_epoll_create - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/epoll_ctl.S b/libc/arch-arm/syscalls/epoll_ctl.S deleted file mode 100644 index 906d80d..0000000 --- a/libc/arch-arm/syscalls/epoll_ctl.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type epoll_ctl, #function - .globl epoll_ctl - .align 4 - .fnstart - -epoll_ctl: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_epoll_ctl - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/epoll_wait.S b/libc/arch-arm/syscalls/epoll_wait.S deleted file mode 100644 index af74878..0000000 --- a/libc/arch-arm/syscalls/epoll_wait.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type epoll_wait, #function - .globl epoll_wait - .align 4 - .fnstart - -epoll_wait: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_epoll_wait - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/execve.S b/libc/arch-arm/syscalls/execve.S deleted file mode 100644 index 2309a1b..0000000 --- a/libc/arch-arm/syscalls/execve.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type execve, #function - .globl execve - .align 4 - .fnstart - -execve: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_execve - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/fchdir.S b/libc/arch-arm/syscalls/fchdir.S deleted file mode 100644 index 441f3e2..0000000 --- a/libc/arch-arm/syscalls/fchdir.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type fchdir, #function - .globl fchdir - .align 4 - .fnstart - -fchdir: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_fchdir - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/fchmod.S b/libc/arch-arm/syscalls/fchmod.S deleted file mode 100644 index b5f1983..0000000 --- a/libc/arch-arm/syscalls/fchmod.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type fchmod, #function - .globl fchmod - .align 4 - .fnstart - -fchmod: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_fchmod - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/fchmodat.S b/libc/arch-arm/syscalls/fchmodat.S deleted file mode 100644 index d6e3916..0000000 --- a/libc/arch-arm/syscalls/fchmodat.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type fchmodat, #function - .globl fchmodat - .align 4 - .fnstart - -fchmodat: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_fchmodat - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/fchown.S b/libc/arch-arm/syscalls/fchown.S deleted file mode 100644 index 7887296..0000000 --- a/libc/arch-arm/syscalls/fchown.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type fchown, #function - .globl fchown - .align 4 - .fnstart - -fchown: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_fchown32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/fchownat.S b/libc/arch-arm/syscalls/fchownat.S deleted file mode 100644 index 2279d2c..0000000 --- a/libc/arch-arm/syscalls/fchownat.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type fchownat, #function - .globl fchownat - .align 4 - .fnstart - -fchownat: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_fchownat - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/flock.S b/libc/arch-arm/syscalls/flock.S deleted file mode 100644 index 22e391c..0000000 --- a/libc/arch-arm/syscalls/flock.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type flock, #function - .globl flock - .align 4 - .fnstart - -flock: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_flock - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/fstat.S b/libc/arch-arm/syscalls/fstat.S deleted file mode 100644 index ef1752f..0000000 --- a/libc/arch-arm/syscalls/fstat.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type fstat, #function - .globl fstat - .align 4 - .fnstart - -fstat: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_fstat64 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/fstatat.S b/libc/arch-arm/syscalls/fstatat.S deleted file mode 100644 index a3dd74a..0000000 --- a/libc/arch-arm/syscalls/fstatat.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type fstatat, #function - .globl fstatat - .align 4 - .fnstart - -fstatat: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_fstatat64 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/fstatfs.S b/libc/arch-arm/syscalls/fstatfs.S deleted file mode 100644 index 88150d6..0000000 --- a/libc/arch-arm/syscalls/fstatfs.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type fstatfs, #function - .globl fstatfs - .align 4 - .fnstart - -fstatfs: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_fstatfs64 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/fsync.S b/libc/arch-arm/syscalls/fsync.S deleted file mode 100644 index 588dfa3..0000000 --- a/libc/arch-arm/syscalls/fsync.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type fsync, #function - .globl fsync - .align 4 - .fnstart - -fsync: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_fsync - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/ftruncate.S b/libc/arch-arm/syscalls/ftruncate.S deleted file mode 100644 index 2d60b41..0000000 --- a/libc/arch-arm/syscalls/ftruncate.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type ftruncate, #function - .globl ftruncate - .align 4 - .fnstart - -ftruncate: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_ftruncate - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/futex.S b/libc/arch-arm/syscalls/futex.S deleted file mode 100644 index c2d4b7e..0000000 --- a/libc/arch-arm/syscalls/futex.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type futex, #function - .globl futex - .align 4 - .fnstart - -futex: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_futex - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getdents.S b/libc/arch-arm/syscalls/getdents.S deleted file mode 100644 index 312aa0d..0000000 --- a/libc/arch-arm/syscalls/getdents.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getdents, #function - .globl getdents - .align 4 - .fnstart - -getdents: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getdents64 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getegid.S b/libc/arch-arm/syscalls/getegid.S deleted file mode 100644 index 26723bf..0000000 --- a/libc/arch-arm/syscalls/getegid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getegid, #function - .globl getegid - .align 4 - .fnstart - -getegid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getegid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/geteuid.S b/libc/arch-arm/syscalls/geteuid.S deleted file mode 100644 index d86959f..0000000 --- a/libc/arch-arm/syscalls/geteuid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type geteuid, #function - .globl geteuid - .align 4 - .fnstart - -geteuid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_geteuid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getgid.S b/libc/arch-arm/syscalls/getgid.S deleted file mode 100644 index 1502fdf..0000000 --- a/libc/arch-arm/syscalls/getgid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getgid, #function - .globl getgid - .align 4 - .fnstart - -getgid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getgid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getgroups.S b/libc/arch-arm/syscalls/getgroups.S deleted file mode 100644 index e68fe05..0000000 --- a/libc/arch-arm/syscalls/getgroups.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getgroups, #function - .globl getgroups - .align 4 - .fnstart - -getgroups: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getgroups32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getitimer.S b/libc/arch-arm/syscalls/getitimer.S deleted file mode 100644 index 404c2fc..0000000 --- a/libc/arch-arm/syscalls/getitimer.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getitimer, #function - .globl getitimer - .align 4 - .fnstart - -getitimer: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getitimer - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getpeername.S b/libc/arch-arm/syscalls/getpeername.S deleted file mode 100644 index f04ec32..0000000 --- a/libc/arch-arm/syscalls/getpeername.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getpeername, #function - .globl getpeername - .align 4 - .fnstart - -getpeername: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getpeername - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getpgid.S b/libc/arch-arm/syscalls/getpgid.S deleted file mode 100644 index 9397458..0000000 --- a/libc/arch-arm/syscalls/getpgid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getpgid, #function - .globl getpgid - .align 4 - .fnstart - -getpgid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getpgid - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getpid.S b/libc/arch-arm/syscalls/getpid.S deleted file mode 100644 index 1be793a..0000000 --- a/libc/arch-arm/syscalls/getpid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getpid, #function - .globl getpid - .align 4 - .fnstart - -getpid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getpid - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getppid.S b/libc/arch-arm/syscalls/getppid.S deleted file mode 100644 index 14185b9..0000000 --- a/libc/arch-arm/syscalls/getppid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getppid, #function - .globl getppid - .align 4 - .fnstart - -getppid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getppid - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getresgid.S b/libc/arch-arm/syscalls/getresgid.S deleted file mode 100644 index 90c90df..0000000 --- a/libc/arch-arm/syscalls/getresgid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getresgid, #function - .globl getresgid - .align 4 - .fnstart - -getresgid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getresgid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getresuid.S b/libc/arch-arm/syscalls/getresuid.S deleted file mode 100644 index e067ac0..0000000 --- a/libc/arch-arm/syscalls/getresuid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getresuid, #function - .globl getresuid - .align 4 - .fnstart - -getresuid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getresuid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getrlimit.S b/libc/arch-arm/syscalls/getrlimit.S deleted file mode 100644 index 79c1357..0000000 --- a/libc/arch-arm/syscalls/getrlimit.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getrlimit, #function - .globl getrlimit - .align 4 - .fnstart - -getrlimit: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_ugetrlimit - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getrusage.S b/libc/arch-arm/syscalls/getrusage.S deleted file mode 100644 index 81db153..0000000 --- a/libc/arch-arm/syscalls/getrusage.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getrusage, #function - .globl getrusage - .align 4 - .fnstart - -getrusage: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getrusage - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getsockname.S b/libc/arch-arm/syscalls/getsockname.S deleted file mode 100644 index 2ae0876..0000000 --- a/libc/arch-arm/syscalls/getsockname.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getsockname, #function - .globl getsockname - .align 4 - .fnstart - -getsockname: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getsockname - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getsockopt.S b/libc/arch-arm/syscalls/getsockopt.S deleted file mode 100644 index 76e1b11..0000000 --- a/libc/arch-arm/syscalls/getsockopt.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getsockopt, #function - .globl getsockopt - .align 4 - .fnstart - -getsockopt: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_getsockopt - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/gettid.S b/libc/arch-arm/syscalls/gettid.S deleted file mode 100644 index e5da45d..0000000 --- a/libc/arch-arm/syscalls/gettid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type gettid, #function - .globl gettid - .align 4 - .fnstart - -gettid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_gettid - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/gettimeofday.S b/libc/arch-arm/syscalls/gettimeofday.S deleted file mode 100644 index ba759f2..0000000 --- a/libc/arch-arm/syscalls/gettimeofday.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type gettimeofday, #function - .globl gettimeofday - .align 4 - .fnstart - -gettimeofday: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_gettimeofday - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/getuid.S b/libc/arch-arm/syscalls/getuid.S deleted file mode 100644 index 68c3057..0000000 --- a/libc/arch-arm/syscalls/getuid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type getuid, #function - .globl getuid - .align 4 - .fnstart - -getuid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_getuid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/init_module.S b/libc/arch-arm/syscalls/init_module.S deleted file mode 100644 index 4e9cd1f..0000000 --- a/libc/arch-arm/syscalls/init_module.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type init_module, #function - .globl init_module - .align 4 - .fnstart - -init_module: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_init_module - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/inotify_add_watch.S b/libc/arch-arm/syscalls/inotify_add_watch.S deleted file mode 100644 index 823f321..0000000 --- a/libc/arch-arm/syscalls/inotify_add_watch.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type inotify_add_watch, #function - .globl inotify_add_watch - .align 4 - .fnstart - -inotify_add_watch: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_inotify_add_watch - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/inotify_init.S b/libc/arch-arm/syscalls/inotify_init.S deleted file mode 100644 index c612b83..0000000 --- a/libc/arch-arm/syscalls/inotify_init.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type inotify_init, #function - .globl inotify_init - .align 4 - .fnstart - -inotify_init: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_inotify_init - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/inotify_rm_watch.S b/libc/arch-arm/syscalls/inotify_rm_watch.S deleted file mode 100644 index 6c416d6..0000000 --- a/libc/arch-arm/syscalls/inotify_rm_watch.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type inotify_rm_watch, #function - .globl inotify_rm_watch - .align 4 - .fnstart - -inotify_rm_watch: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_inotify_rm_watch - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/klogctl.S b/libc/arch-arm/syscalls/klogctl.S deleted file mode 100644 index aee3474..0000000 --- a/libc/arch-arm/syscalls/klogctl.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type klogctl, #function - .globl klogctl - .align 4 - .fnstart - -klogctl: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_syslog - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/lchown.S b/libc/arch-arm/syscalls/lchown.S deleted file mode 100644 index f8ee793..0000000 --- a/libc/arch-arm/syscalls/lchown.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type lchown, #function - .globl lchown - .align 4 - .fnstart - -lchown: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_lchown32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/link.S b/libc/arch-arm/syscalls/link.S deleted file mode 100644 index f368595..0000000 --- a/libc/arch-arm/syscalls/link.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type link, #function - .globl link - .align 4 - .fnstart - -link: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_link - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/listen.S b/libc/arch-arm/syscalls/listen.S deleted file mode 100644 index d1a8a6e..0000000 --- a/libc/arch-arm/syscalls/listen.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type listen, #function - .globl listen - .align 4 - .fnstart - -listen: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_listen - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/lseek.S b/libc/arch-arm/syscalls/lseek.S deleted file mode 100644 index 47bf06a..0000000 --- a/libc/arch-arm/syscalls/lseek.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type lseek, #function - .globl lseek - .align 4 - .fnstart - -lseek: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_lseek - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/lstat.S b/libc/arch-arm/syscalls/lstat.S deleted file mode 100644 index f19d12f..0000000 --- a/libc/arch-arm/syscalls/lstat.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type lstat, #function - .globl lstat - .align 4 - .fnstart - -lstat: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_lstat64 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/madvise.S b/libc/arch-arm/syscalls/madvise.S deleted file mode 100644 index a992f46..0000000 --- a/libc/arch-arm/syscalls/madvise.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type madvise, #function - .globl madvise - .align 4 - .fnstart - -madvise: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_madvise - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/mincore.S b/libc/arch-arm/syscalls/mincore.S deleted file mode 100644 index c2b5432..0000000 --- a/libc/arch-arm/syscalls/mincore.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type mincore, #function - .globl mincore - .align 4 - .fnstart - -mincore: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_mincore - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/mkdir.S b/libc/arch-arm/syscalls/mkdir.S deleted file mode 100644 index ec8372d..0000000 --- a/libc/arch-arm/syscalls/mkdir.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type mkdir, #function - .globl mkdir - .align 4 - .fnstart - -mkdir: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_mkdir - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/mkdirat.S b/libc/arch-arm/syscalls/mkdirat.S deleted file mode 100644 index e377c66..0000000 --- a/libc/arch-arm/syscalls/mkdirat.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type mkdirat, #function - .globl mkdirat - .align 4 - .fnstart - -mkdirat: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_mkdirat - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/mknod.S b/libc/arch-arm/syscalls/mknod.S deleted file mode 100644 index 0a8b6fa..0000000 --- a/libc/arch-arm/syscalls/mknod.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type mknod, #function - .globl mknod - .align 4 - .fnstart - -mknod: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_mknod - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/mlock.S b/libc/arch-arm/syscalls/mlock.S deleted file mode 100644 index 4eff70b..0000000 --- a/libc/arch-arm/syscalls/mlock.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type mlock, #function - .globl mlock - .align 4 - .fnstart - -mlock: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_mlock - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/mount.S b/libc/arch-arm/syscalls/mount.S deleted file mode 100644 index a2b9f1d..0000000 --- a/libc/arch-arm/syscalls/mount.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type mount, #function - .globl mount - .align 4 - .fnstart - -mount: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_mount - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/mprotect.S b/libc/arch-arm/syscalls/mprotect.S deleted file mode 100644 index b10291e..0000000 --- a/libc/arch-arm/syscalls/mprotect.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type mprotect, #function - .globl mprotect - .align 4 - .fnstart - -mprotect: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_mprotect - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/mremap.S b/libc/arch-arm/syscalls/mremap.S deleted file mode 100644 index 397844a..0000000 --- a/libc/arch-arm/syscalls/mremap.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type mremap, #function - .globl mremap - .align 4 - .fnstart - -mremap: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_mremap - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/msync.S b/libc/arch-arm/syscalls/msync.S deleted file mode 100644 index 7ac7cd2..0000000 --- a/libc/arch-arm/syscalls/msync.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type msync, #function - .globl msync - .align 4 - .fnstart - -msync: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_msync - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/munlock.S b/libc/arch-arm/syscalls/munlock.S deleted file mode 100644 index 21ee4d2..0000000 --- a/libc/arch-arm/syscalls/munlock.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type munlock, #function - .globl munlock - .align 4 - .fnstart - -munlock: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_munlock - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/munmap.S b/libc/arch-arm/syscalls/munmap.S deleted file mode 100644 index 7765b00..0000000 --- a/libc/arch-arm/syscalls/munmap.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type munmap, #function - .globl munmap - .align 4 - .fnstart - -munmap: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_munmap - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/nanosleep.S b/libc/arch-arm/syscalls/nanosleep.S deleted file mode 100644 index 1f9b181..0000000 --- a/libc/arch-arm/syscalls/nanosleep.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type nanosleep, #function - .globl nanosleep - .align 4 - .fnstart - -nanosleep: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_nanosleep - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/pause.S b/libc/arch-arm/syscalls/pause.S deleted file mode 100644 index 3a16ec3..0000000 --- a/libc/arch-arm/syscalls/pause.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type pause, #function - .globl pause - .align 4 - .fnstart - -pause: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_pause - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/pipe.S b/libc/arch-arm/syscalls/pipe.S deleted file mode 100644 index 4edc75e..0000000 --- a/libc/arch-arm/syscalls/pipe.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type pipe, #function - .globl pipe - .align 4 - .fnstart - -pipe: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_pipe - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/poll.S b/libc/arch-arm/syscalls/poll.S deleted file mode 100644 index 14b18e3..0000000 --- a/libc/arch-arm/syscalls/poll.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type poll, #function - .globl poll - .align 4 - .fnstart - -poll: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_poll - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/prctl.S b/libc/arch-arm/syscalls/prctl.S deleted file mode 100644 index 0dd417b..0000000 --- a/libc/arch-arm/syscalls/prctl.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type prctl, #function - .globl prctl - .align 4 - .fnstart - -prctl: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_prctl - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/read.S b/libc/arch-arm/syscalls/read.S deleted file mode 100644 index da9d81c..0000000 --- a/libc/arch-arm/syscalls/read.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type read, #function - .globl read - .align 4 - .fnstart - -read: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_read - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/readlink.S b/libc/arch-arm/syscalls/readlink.S deleted file mode 100644 index eb8ae8b..0000000 --- a/libc/arch-arm/syscalls/readlink.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type readlink, #function - .globl readlink - .align 4 - .fnstart - -readlink: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_readlink - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/readv.S b/libc/arch-arm/syscalls/readv.S deleted file mode 100644 index 045648f..0000000 --- a/libc/arch-arm/syscalls/readv.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type readv, #function - .globl readv - .align 4 - .fnstart - -readv: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_readv - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/recvfrom.S b/libc/arch-arm/syscalls/recvfrom.S deleted file mode 100644 index 344b60d..0000000 --- a/libc/arch-arm/syscalls/recvfrom.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type recvfrom, #function - .globl recvfrom - .align 4 - .fnstart - -recvfrom: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_recvfrom - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/recvmsg.S b/libc/arch-arm/syscalls/recvmsg.S deleted file mode 100644 index 0b4b1be..0000000 --- a/libc/arch-arm/syscalls/recvmsg.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type recvmsg, #function - .globl recvmsg - .align 4 - .fnstart - -recvmsg: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_recvmsg - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/rename.S b/libc/arch-arm/syscalls/rename.S deleted file mode 100644 index 89f23b4..0000000 --- a/libc/arch-arm/syscalls/rename.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type rename, #function - .globl rename - .align 4 - .fnstart - -rename: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_rename - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/renameat.S b/libc/arch-arm/syscalls/renameat.S deleted file mode 100644 index 1807de7..0000000 --- a/libc/arch-arm/syscalls/renameat.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type renameat, #function - .globl renameat - .align 4 - .fnstart - -renameat: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_renameat - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/rmdir.S b/libc/arch-arm/syscalls/rmdir.S deleted file mode 100644 index ac2f4b7..0000000 --- a/libc/arch-arm/syscalls/rmdir.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type rmdir, #function - .globl rmdir - .align 4 - .fnstart - -rmdir: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_rmdir - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sched_get_priority_max.S b/libc/arch-arm/syscalls/sched_get_priority_max.S deleted file mode 100644 index e94ec93..0000000 --- a/libc/arch-arm/syscalls/sched_get_priority_max.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sched_get_priority_max, #function - .globl sched_get_priority_max - .align 4 - .fnstart - -sched_get_priority_max: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sched_get_priority_max - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sched_get_priority_min.S b/libc/arch-arm/syscalls/sched_get_priority_min.S deleted file mode 100644 index e2ae87e..0000000 --- a/libc/arch-arm/syscalls/sched_get_priority_min.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sched_get_priority_min, #function - .globl sched_get_priority_min - .align 4 - .fnstart - -sched_get_priority_min: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sched_get_priority_min - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sched_getparam.S b/libc/arch-arm/syscalls/sched_getparam.S deleted file mode 100644 index d9adddc..0000000 --- a/libc/arch-arm/syscalls/sched_getparam.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sched_getparam, #function - .globl sched_getparam - .align 4 - .fnstart - -sched_getparam: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sched_getparam - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sched_getscheduler.S b/libc/arch-arm/syscalls/sched_getscheduler.S deleted file mode 100644 index 2a070c1..0000000 --- a/libc/arch-arm/syscalls/sched_getscheduler.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sched_getscheduler, #function - .globl sched_getscheduler - .align 4 - .fnstart - -sched_getscheduler: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sched_getscheduler - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sched_rr_get_interval.S b/libc/arch-arm/syscalls/sched_rr_get_interval.S deleted file mode 100644 index 7438953..0000000 --- a/libc/arch-arm/syscalls/sched_rr_get_interval.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sched_rr_get_interval, #function - .globl sched_rr_get_interval - .align 4 - .fnstart - -sched_rr_get_interval: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sched_rr_get_interval - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sched_setparam.S b/libc/arch-arm/syscalls/sched_setparam.S deleted file mode 100644 index 6f7f92d..0000000 --- a/libc/arch-arm/syscalls/sched_setparam.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sched_setparam, #function - .globl sched_setparam - .align 4 - .fnstart - -sched_setparam: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sched_setparam - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sched_setscheduler.S b/libc/arch-arm/syscalls/sched_setscheduler.S deleted file mode 100644 index 11667c7..0000000 --- a/libc/arch-arm/syscalls/sched_setscheduler.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sched_setscheduler, #function - .globl sched_setscheduler - .align 4 - .fnstart - -sched_setscheduler: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sched_setscheduler - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sched_yield.S b/libc/arch-arm/syscalls/sched_yield.S deleted file mode 100644 index 6ff0141..0000000 --- a/libc/arch-arm/syscalls/sched_yield.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sched_yield, #function - .globl sched_yield - .align 4 - .fnstart - -sched_yield: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sched_yield - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/select.S b/libc/arch-arm/syscalls/select.S deleted file mode 100644 index 0a0ce5d..0000000 --- a/libc/arch-arm/syscalls/select.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type select, #function - .globl select - .align 4 - .fnstart - -select: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR__newselect - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sendfile.S b/libc/arch-arm/syscalls/sendfile.S deleted file mode 100644 index 0a1da4f..0000000 --- a/libc/arch-arm/syscalls/sendfile.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sendfile, #function - .globl sendfile - .align 4 - .fnstart - -sendfile: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sendfile - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sendmsg.S b/libc/arch-arm/syscalls/sendmsg.S deleted file mode 100644 index eac2d67..0000000 --- a/libc/arch-arm/syscalls/sendmsg.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sendmsg, #function - .globl sendmsg - .align 4 - .fnstart - -sendmsg: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sendmsg - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sendto.S b/libc/arch-arm/syscalls/sendto.S deleted file mode 100644 index 744891c..0000000 --- a/libc/arch-arm/syscalls/sendto.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sendto, #function - .globl sendto - .align 4 - .fnstart - -sendto: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_sendto - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setgid.S b/libc/arch-arm/syscalls/setgid.S deleted file mode 100644 index fdd4ee6..0000000 --- a/libc/arch-arm/syscalls/setgid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setgid, #function - .globl setgid - .align 4 - .fnstart - -setgid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setgid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setgroups.S b/libc/arch-arm/syscalls/setgroups.S deleted file mode 100644 index cba9dfb..0000000 --- a/libc/arch-arm/syscalls/setgroups.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setgroups, #function - .globl setgroups - .align 4 - .fnstart - -setgroups: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setgroups32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setitimer.S b/libc/arch-arm/syscalls/setitimer.S deleted file mode 100644 index b4ad56c..0000000 --- a/libc/arch-arm/syscalls/setitimer.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setitimer, #function - .globl setitimer - .align 4 - .fnstart - -setitimer: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setitimer - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setpgid.S b/libc/arch-arm/syscalls/setpgid.S deleted file mode 100644 index 0ec98c6..0000000 --- a/libc/arch-arm/syscalls/setpgid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setpgid, #function - .globl setpgid - .align 4 - .fnstart - -setpgid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setpgid - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setpriority.S b/libc/arch-arm/syscalls/setpriority.S deleted file mode 100644 index fa4110a..0000000 --- a/libc/arch-arm/syscalls/setpriority.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setpriority, #function - .globl setpriority - .align 4 - .fnstart - -setpriority: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setpriority - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setregid.S b/libc/arch-arm/syscalls/setregid.S deleted file mode 100644 index 53d9420..0000000 --- a/libc/arch-arm/syscalls/setregid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setregid, #function - .globl setregid - .align 4 - .fnstart - -setregid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setregid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setresgid.S b/libc/arch-arm/syscalls/setresgid.S deleted file mode 100644 index 0382913..0000000 --- a/libc/arch-arm/syscalls/setresgid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setresgid, #function - .globl setresgid - .align 4 - .fnstart - -setresgid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setresgid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setresuid.S b/libc/arch-arm/syscalls/setresuid.S deleted file mode 100644 index 266c1a1..0000000 --- a/libc/arch-arm/syscalls/setresuid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setresuid, #function - .globl setresuid - .align 4 - .fnstart - -setresuid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setresuid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setreuid.S b/libc/arch-arm/syscalls/setreuid.S deleted file mode 100644 index 0f94b47..0000000 --- a/libc/arch-arm/syscalls/setreuid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setreuid, #function - .globl setreuid - .align 4 - .fnstart - -setreuid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setreuid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setrlimit.S b/libc/arch-arm/syscalls/setrlimit.S deleted file mode 100644 index 0a5de48..0000000 --- a/libc/arch-arm/syscalls/setrlimit.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setrlimit, #function - .globl setrlimit - .align 4 - .fnstart - -setrlimit: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setrlimit - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setsid.S b/libc/arch-arm/syscalls/setsid.S deleted file mode 100644 index e2b0615..0000000 --- a/libc/arch-arm/syscalls/setsid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setsid, #function - .globl setsid - .align 4 - .fnstart - -setsid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setsid - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setsockopt.S b/libc/arch-arm/syscalls/setsockopt.S deleted file mode 100644 index 01f104f..0000000 --- a/libc/arch-arm/syscalls/setsockopt.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setsockopt, #function - .globl setsockopt - .align 4 - .fnstart - -setsockopt: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_setsockopt - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/settimeofday.S b/libc/arch-arm/syscalls/settimeofday.S deleted file mode 100644 index 6f79041..0000000 --- a/libc/arch-arm/syscalls/settimeofday.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type settimeofday, #function - .globl settimeofday - .align 4 - .fnstart - -settimeofday: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_settimeofday - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/setuid.S b/libc/arch-arm/syscalls/setuid.S deleted file mode 100644 index 31cf446..0000000 --- a/libc/arch-arm/syscalls/setuid.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type setuid, #function - .globl setuid - .align 4 - .fnstart - -setuid: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_setuid32 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/shutdown.S b/libc/arch-arm/syscalls/shutdown.S deleted file mode 100644 index 5bec030..0000000 --- a/libc/arch-arm/syscalls/shutdown.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type shutdown, #function - .globl shutdown - .align 4 - .fnstart - -shutdown: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_shutdown - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sigaction.S b/libc/arch-arm/syscalls/sigaction.S deleted file mode 100644 index 2696f1e..0000000 --- a/libc/arch-arm/syscalls/sigaction.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sigaction, #function - .globl sigaction - .align 4 - .fnstart - -sigaction: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sigaction - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sigpending.S b/libc/arch-arm/syscalls/sigpending.S deleted file mode 100644 index 58f565a..0000000 --- a/libc/arch-arm/syscalls/sigpending.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sigpending, #function - .globl sigpending - .align 4 - .fnstart - -sigpending: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sigpending - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sigprocmask.S b/libc/arch-arm/syscalls/sigprocmask.S deleted file mode 100644 index f157d76..0000000 --- a/libc/arch-arm/syscalls/sigprocmask.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sigprocmask, #function - .globl sigprocmask - .align 4 - .fnstart - -sigprocmask: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sigprocmask - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/socket.S b/libc/arch-arm/syscalls/socket.S deleted file mode 100644 index 93c9a53..0000000 --- a/libc/arch-arm/syscalls/socket.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type socket, #function - .globl socket - .align 4 - .fnstart - -socket: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_socket - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/socketpair.S b/libc/arch-arm/syscalls/socketpair.S deleted file mode 100644 index 1bf07d6..0000000 --- a/libc/arch-arm/syscalls/socketpair.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type socketpair, #function - .globl socketpair - .align 4 - .fnstart - -socketpair: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_socketpair - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/stat.S b/libc/arch-arm/syscalls/stat.S deleted file mode 100644 index 46afcc5..0000000 --- a/libc/arch-arm/syscalls/stat.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type stat, #function - .globl stat - .align 4 - .fnstart - -stat: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_stat64 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/symlink.S b/libc/arch-arm/syscalls/symlink.S deleted file mode 100644 index 83b554e..0000000 --- a/libc/arch-arm/syscalls/symlink.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type symlink, #function - .globl symlink - .align 4 - .fnstart - -symlink: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_symlink - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/sync.S b/libc/arch-arm/syscalls/sync.S deleted file mode 100644 index 778d38e..0000000 --- a/libc/arch-arm/syscalls/sync.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type sync, #function - .globl sync - .align 4 - .fnstart - -sync: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_sync - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/times.S b/libc/arch-arm/syscalls/times.S deleted file mode 100644 index c1ab0ce..0000000 --- a/libc/arch-arm/syscalls/times.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type times, #function - .globl times - .align 4 - .fnstart - -times: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_times - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/truncate.S b/libc/arch-arm/syscalls/truncate.S deleted file mode 100644 index 674c828..0000000 --- a/libc/arch-arm/syscalls/truncate.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type truncate, #function - .globl truncate - .align 4 - .fnstart - -truncate: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_truncate - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/umask.S b/libc/arch-arm/syscalls/umask.S deleted file mode 100644 index 6f18259..0000000 --- a/libc/arch-arm/syscalls/umask.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type umask, #function - .globl umask - .align 4 - .fnstart - -umask: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_umask - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/umount2.S b/libc/arch-arm/syscalls/umount2.S deleted file mode 100644 index 659c3c0..0000000 --- a/libc/arch-arm/syscalls/umount2.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type umount2, #function - .globl umount2 - .align 4 - .fnstart - -umount2: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_umount2 - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/uname.S b/libc/arch-arm/syscalls/uname.S deleted file mode 100644 index fda05e9..0000000 --- a/libc/arch-arm/syscalls/uname.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type uname, #function - .globl uname - .align 4 - .fnstart - -uname: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_uname - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/unlink.S b/libc/arch-arm/syscalls/unlink.S deleted file mode 100644 index 77ae9b7..0000000 --- a/libc/arch-arm/syscalls/unlink.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type unlink, #function - .globl unlink - .align 4 - .fnstart - -unlink: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_unlink - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/unlinkat.S b/libc/arch-arm/syscalls/unlinkat.S deleted file mode 100644 index eb31e85..0000000 --- a/libc/arch-arm/syscalls/unlinkat.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type unlinkat, #function - .globl unlinkat - .align 4 - .fnstart - -unlinkat: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_unlinkat - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/utimes.S b/libc/arch-arm/syscalls/utimes.S deleted file mode 100644 index 19fe8e2..0000000 --- a/libc/arch-arm/syscalls/utimes.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type utimes, #function - .globl utimes - .align 4 - .fnstart - -utimes: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_utimes - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/vfork.S b/libc/arch-arm/syscalls/vfork.S deleted file mode 100644 index e141761..0000000 --- a/libc/arch-arm/syscalls/vfork.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type vfork, #function - .globl vfork - .align 4 - .fnstart - -vfork: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_vfork - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/waitid.S b/libc/arch-arm/syscalls/waitid.S deleted file mode 100644 index 4134e53..0000000 --- a/libc/arch-arm/syscalls/waitid.S +++ /dev/null @@ -1,21 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type waitid, #function - .globl waitid - .align 4 - .fnstart - -waitid: - mov ip, sp - .save {r4, r5, r6, r7} - stmfd sp!, {r4, r5, r6, r7} - ldmfd ip, {r4, r5, r6} - ldr r7, =__NR_waitid - swi #0 - ldmfd sp!, {r4, r5, r6, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/write.S b/libc/arch-arm/syscalls/write.S deleted file mode 100644 index 06df33d..0000000 --- a/libc/arch-arm/syscalls/write.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type write, #function - .globl write - .align 4 - .fnstart - -write: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_write - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend diff --git a/libc/arch-arm/syscalls/writev.S b/libc/arch-arm/syscalls/writev.S deleted file mode 100644 index a6b04db..0000000 --- a/libc/arch-arm/syscalls/writev.S +++ /dev/null @@ -1,19 +0,0 @@ -/* autogenerated by gensyscalls.py */ -#include <sys/linux-syscalls.h> - - .text - .type writev, #function - .globl writev - .align 4 - .fnstart - -writev: - .save {r4, r7} - stmfd sp!, {r4, r7} - ldr r7, =__NR_writev - swi #0 - ldmfd sp!, {r4, r7} - movs r0, r0 - bxpl lr - b __set_syscall_errno - .fnend |