From 428d8b216549fa41147fd3540c3567e4947b07bc Mon Sep 17 00:00:00 2001 From: "Peter S. Mazinger" Date: Sat, 14 May 2011 20:09:42 +0200 Subject: remove sysdep.h from arch specific string implementation Remove hardcoded path from xtensa, we have sysdep.h in path Signed-off-by: Peter S. Mazinger Signed-off-by: Bernhard Reutner-Fischer --- libc/string/ia64/bcopy.S | 2 +- libc/string/ia64/bzero.S | 2 +- libc/string/ia64/memccpy.S | 2 +- libc/string/ia64/memchr.S | 2 +- libc/string/ia64/memcmp.S | 2 +- libc/string/ia64/memcpy.S | 2 +- libc/string/ia64/memmove.S | 2 +- libc/string/ia64/memset.S | 2 +- libc/string/ia64/strchr.S | 2 +- libc/string/ia64/strcmp.S | 2 +- libc/string/ia64/strcpy.S | 2 +- libc/string/ia64/strlen.S | 2 +- libc/string/ia64/strncmp.S | 2 +- libc/string/ia64/strncpy.S | 2 +- libc/string/ia64/sysdep.h | 168 ------------------------------------------- libc/string/mips/memcpy.S | 3 +- libc/string/mips/memset.S | 3 +- libc/string/mips/sysdep.h | 45 ------------ libc/string/xtensa/memcpy.S | 2 +- libc/string/xtensa/memset.S | 2 +- libc/string/xtensa/strcmp.S | 2 +- libc/string/xtensa/strcpy.S | 2 +- libc/string/xtensa/strlen.S | 2 +- libc/string/xtensa/strncpy.S | 2 +- 24 files changed, 22 insertions(+), 237 deletions(-) delete mode 100644 libc/string/ia64/sysdep.h delete mode 100644 libc/string/mips/sysdep.h (limited to 'libc/string') diff --git a/libc/string/ia64/bcopy.S b/libc/string/ia64/bcopy.S index c5637c369..62da68d74 100644 --- a/libc/string/ia64/bcopy.S +++ b/libc/string/ia64/bcopy.S @@ -1,4 +1,4 @@ -#include "sysdep.h" +#include #ifdef __UCLIBC_SUSV3_LEGACY__ diff --git a/libc/string/ia64/bzero.S b/libc/string/ia64/bzero.S index 1f0f8b7ac..203ff7f89 100644 --- a/libc/string/ia64/bzero.S +++ b/libc/string/ia64/bzero.S @@ -32,7 +32,7 @@ Since a stf.spill f0 can store 16B in one go, we use this instruction to get peak speed. */ -#include "sysdep.h" +#include #ifdef __UCLIBC_SUSV3_LEGACY__ diff --git a/libc/string/ia64/memccpy.S b/libc/string/ia64/memccpy.S index 259d680bc..68bcde62c 100644 --- a/libc/string/ia64/memccpy.S +++ b/libc/string/ia64/memccpy.S @@ -31,7 +31,7 @@ This implementation assumes that it is safe to do read ahead in the src block, without getting beyond its limit. */ -#include "sysdep.h" +#include #undef ret #define OP_T_THRES 16 diff --git a/libc/string/ia64/memchr.S b/libc/string/ia64/memchr.S index f25e80302..86bfbbfe2 100644 --- a/libc/string/ia64/memchr.S +++ b/libc/string/ia64/memchr.S @@ -40,7 +40,7 @@ All the loops in this function could have had the internal branch removed if br.ctop and br.cloop could be predicated :-(. */ -#include "sysdep.h" +#include #undef ret #define saved_pr r15 diff --git a/libc/string/ia64/memcmp.S b/libc/string/ia64/memcmp.S index adb1a20de..a6465f2cd 100644 --- a/libc/string/ia64/memcmp.S +++ b/libc/string/ia64/memcmp.S @@ -33,7 +33,7 @@ and all the mux1 instructions should be replaced by plain mov's. */ -#include "sysdep.h" +#include #undef ret #define OP_T_THRES 16 diff --git a/libc/string/ia64/memcpy.S b/libc/string/ia64/memcpy.S index 6c48a72d9..ac6d51518 100644 --- a/libc/string/ia64/memcpy.S +++ b/libc/string/ia64/memcpy.S @@ -37,7 +37,7 @@ #define USE_LFETCH #define USE_FLP -#include "sysdep.h" +#include #undef ret #define LFETCH_DIST 500 diff --git a/libc/string/ia64/memmove.S b/libc/string/ia64/memmove.S index beaada6fc..f9dd98f28 100644 --- a/libc/string/ia64/memmove.S +++ b/libc/string/ia64/memmove.S @@ -33,7 +33,7 @@ sh1 must be computed using an extra instruction: sub sh1 = 64, sh1 or the UM.be bit should be cleared at the beginning and set at the end. */ -#include "sysdep.h" +#include #undef ret #define OP_T_THRES 16 diff --git a/libc/string/ia64/memset.S b/libc/string/ia64/memset.S index 45df5838e..3f4b6e15b 100644 --- a/libc/string/ia64/memset.S +++ b/libc/string/ia64/memset.S @@ -33,7 +33,7 @@ Since a stf.spill f0 can store 16B in one go, we use this instruction to get peak speed when value = 0. */ -#include "sysdep.h" +#include #undef ret #define dest in0 diff --git a/libc/string/ia64/strchr.S b/libc/string/ia64/strchr.S index 66703f26d..a446f0e91 100644 --- a/libc/string/ia64/strchr.S +++ b/libc/string/ia64/strchr.S @@ -30,7 +30,7 @@ This implementation assumes little endian mode. For big endian mode, the instruction czx1.r should be replaced by czx1.l. */ -#include "sysdep.h" +#include #undef ret #define saved_lc r18 diff --git a/libc/string/ia64/strcmp.S b/libc/string/ia64/strcmp.S index 4da72fa10..9d9527f33 100644 --- a/libc/string/ia64/strcmp.S +++ b/libc/string/ia64/strcmp.S @@ -27,7 +27,7 @@ Unlike memcmp(), this function is optimized for mismatches within the first few characters. */ -#include "sysdep.h" +#include #undef ret #define s1 in0 diff --git a/libc/string/ia64/strcpy.S b/libc/string/ia64/strcpy.S index 7b002f661..7a1eace0f 100644 --- a/libc/string/ia64/strcpy.S +++ b/libc/string/ia64/strcpy.S @@ -31,7 +31,7 @@ shr.u tmp = r[0], sh2 // tmp = w1 >> sh2 */ -#include "sysdep.h" +#include #undef ret #define saved_lc r15 diff --git a/libc/string/ia64/strlen.S b/libc/string/ia64/strlen.S index edbe84359..47c65ad0b 100644 --- a/libc/string/ia64/strlen.S +++ b/libc/string/ia64/strlen.S @@ -33,7 +33,7 @@ This implementation assumes little endian mode. For big endian mode, the instruction czx1.r should be replaced by czx1.l. */ -#include "sysdep.h" +#include #undef ret #define saved_lc r18 diff --git a/libc/string/ia64/strncmp.S b/libc/string/ia64/strncmp.S index e31f8fbd9..56ea6c5c8 100644 --- a/libc/string/ia64/strncmp.S +++ b/libc/string/ia64/strncmp.S @@ -28,7 +28,7 @@ Unlike memcmp(), this function is optimized for mismatches within the first few characters. */ -#include "sysdep.h" +#include #undef ret #define s1 in0 diff --git a/libc/string/ia64/strncpy.S b/libc/string/ia64/strncpy.S index 3f29bbd52..aca6bc1e7 100644 --- a/libc/string/ia64/strncpy.S +++ b/libc/string/ia64/strncpy.S @@ -29,7 +29,7 @@ In this form, it assumes little endian mode. */ -#include "sysdep.h" +#include #undef ret #define saved_lc r15 diff --git a/libc/string/ia64/sysdep.h b/libc/string/ia64/sysdep.h deleted file mode 100644 index d10020ac1..000000000 --- a/libc/string/ia64/sysdep.h +++ /dev/null @@ -1,168 +0,0 @@ -/* Copyright (C) 1999, 2000, 2002, 2003, 2004 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Jes Sorensen, , April 1999. - Based on code originally written by David Mosberger-Tang - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -#ifndef _LINUX_IA64_SYSDEP_H -#define _LINUX_IA64_SYSDEP_H 1 - -#include -#include - -#ifdef __ASSEMBLER__ - -/* Macros to help writing .prologue directives in assembly code. */ -#define ASM_UNW_PRLG_RP 0x8 -#define ASM_UNW_PRLG_PFS 0x4 -#define ASM_UNW_PRLG_PSP 0x2 -#define ASM_UNW_PRLG_PR 0x1 -#define ASM_UNW_PRLG_GRSAVE(ninputs) (32+(ninputs)) - -#ifdef __STDC__ -#define C_LABEL(name) name : -#else -#define C_LABEL(name) name/**/: -#endif - -#define CALL_MCOUNT - -#define ENTRY(name) \ - .text; \ - .align 32; \ - .proc C_SYMBOL_NAME(name); \ - .global C_SYMBOL_NAME(name); \ - C_LABEL(name) \ - CALL_MCOUNT - -#define LEAF(name) \ - .text; \ - .align 32; \ - .proc C_SYMBOL_NAME(name); \ - .global name; \ - C_LABEL(name) - -/* Mark the end of function SYM. */ -#undef END -#define END(sym) .endp C_SYMBOL_NAME(sym) - -/* For Linux we can use the system call table in the header file - /usr/include/asm/unistd.h - of the kernel. But these symbols do not follow the SYS_* syntax - so we have to redefine the `SYS_ify' macro here. */ -#undef SYS_ify -#ifdef __STDC__ -# define SYS_ify(syscall_name) __NR_##syscall_name -#else -# define SYS_ify(syscall_name) __NR_/**/syscall_name -#endif - -/* Linux uses a negative return value to indicate syscall errors, unlike - most Unices, which use the condition codes' carry flag. - - Since version 2.1 the return value of a system call might be negative - even if the call succeeded. E.g., the `lseek' system call might return - a large offset. Therefore we must not anymore test for < 0, but test - for a real error by making sure the value in %d0 is a real error - number. Linus said he will make sure the no syscall returns a value - in -1 .. -4095 as a valid result so we can savely test with -4095. */ - -/* We don't want the label for the error handler to be visible in the symbol - table when we define it here. */ -#define SYSCALL_ERROR_LABEL __syscall_error - -#undef PSEUDO -#define PSEUDO(name, syscall_name, args) \ - ENTRY(name) \ - DO_CALL (SYS_ify(syscall_name)); \ - cmp.eq p6,p0=-1,r10; \ -(p6) br.cond.spnt.few __syscall_error; - -#define DO_CALL_VIA_BREAK(num) \ - mov r15=num; \ - break __BREAK_SYSCALL - -#ifdef IA64_USE_NEW_STUB -# ifdef SHARED -# define DO_CALL(num) \ - .prologue; \ - adds r2 = SYSINFO_OFFSET, r13;; \ - ld8 r2 = [r2]; \ - .save ar.pfs, r11; \ - mov r11 = ar.pfs;; \ - .body; \ - mov r15 = num; \ - mov b7 = r2; \ - br.call.sptk.many b6 = b7;; \ - .restore sp; \ - mov ar.pfs = r11; \ - .prologue; \ - .body -# else /* !SHARED */ -# define DO_CALL(num) \ - .prologue; \ - mov r15 = num; \ - movl r2 = _dl_sysinfo;; \ - ld8 r2 = [r2]; \ - .save ar.pfs, r11; \ - mov r11 = ar.pfs;; \ - .body; \ - mov b7 = r2; \ - br.call.sptk.many b6 = b7;; \ - .restore sp; \ - mov ar.pfs = r11; \ - .prologue; \ - .body -# endif -#else -# define DO_CALL(num) DO_CALL_VIA_BREAK(num) -#endif - -#undef PSEUDO_END -#define PSEUDO_END(name) .endp C_SYMBOL_NAME(name); - -#undef PSEUDO_NOERRNO -#define PSEUDO_NOERRNO(name, syscall_name, args) \ - ENTRY(name) \ - DO_CALL (SYS_ify(syscall_name)); - -#undef PSEUDO_END_NOERRNO -#define PSEUDO_END_NOERRNO(name) .endp C_SYMBOL_NAME(name); - -#undef PSEUDO_ERRVAL -#define PSEUDO_ERRVAL(name, syscall_name, args) \ - ENTRY(name) \ - DO_CALL (SYS_ify(syscall_name)); \ - cmp.eq p6,p0=-1,r10; \ -(p6) mov r10=r8; - - -#undef PSEUDO_END_ERRVAL -#define PSEUDO_END_ERRVAL(name) .endp C_SYMBOL_NAME(name); - -#undef END -#define END(name) \ - .size C_SYMBOL_NAME(name), . - C_SYMBOL_NAME(name) ; \ - .endp C_SYMBOL_NAME(name) - -#define ret br.ret.sptk.few b0 -#define ret_NOERRNO ret -#define ret_ERRVAL ret - -#endif /* not __ASSEMBLER__ */ - -#endif /* linux/ia64/sysdep.h */ diff --git a/libc/string/mips/memcpy.S b/libc/string/mips/memcpy.S index 9b05ee6da..0addc0fa3 100644 --- a/libc/string/mips/memcpy.S +++ b/libc/string/mips/memcpy.S @@ -18,9 +18,8 @@ 02111-1307 USA. */ #include -/*#include */ +#include #include -#include "sysdep.h" /* void *memcpy(void *s1, const void *s2, size_t n); */ diff --git a/libc/string/mips/memset.S b/libc/string/mips/memset.S index ff0554ff9..7d4d362b8 100644 --- a/libc/string/mips/memset.S +++ b/libc/string/mips/memset.S @@ -18,9 +18,8 @@ 02111-1307 USA. */ #include -/*#include */ +#include #include -#include "sysdep.h" /* void *memset(void *s, int c, size_t n). */ diff --git a/libc/string/mips/sysdep.h b/libc/string/mips/sysdep.h deleted file mode 100644 index 5dad8342e..000000000 --- a/libc/string/mips/sysdep.h +++ /dev/null @@ -1,45 +0,0 @@ -/* Adapted from glibc's sysdeps/unix/mips/sysdep.h */ - -/* Copyright (C) 1992, 1995, 1997, 1999, 2000, 2002, 2003 - Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Brendan Kehoe (brendan@zen.org). - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -#ifdef __ASSEMBLER__ - -#include -#include - -#define ENTRY(name) \ - .globl name; \ - .align 2; \ - .ent name,0; \ - name/* use a comment rather than ## to workaround bug in gcc-3.4.x */: - -#undef END -#define END(function) \ - .end function; \ - .size function,.-function - -#if _MIPS_SIM == _MIPS_SIM_ABI32 || _MIPS_SIM == _MIPS_SIM_ABIO64 -# define L(label) $L ## label -#else -# define L(label) .L ## label -#endif - -#endif diff --git a/libc/string/xtensa/memcpy.S b/libc/string/xtensa/memcpy.S index fc04c023e..bf384b461 100644 --- a/libc/string/xtensa/memcpy.S +++ b/libc/string/xtensa/memcpy.S @@ -17,7 +17,7 @@ Software Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "../../sysdeps/linux/xtensa/sysdep.h" +#include #include .macro src_b r, w0, w1 diff --git a/libc/string/xtensa/memset.S b/libc/string/xtensa/memset.S index 076b8f001..6669c568c 100644 --- a/libc/string/xtensa/memset.S +++ b/libc/string/xtensa/memset.S @@ -17,7 +17,7 @@ Software Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "../../sysdeps/linux/xtensa/sysdep.h" +#include #include /* Do not use .literal_position in the ENTRY macro. */ diff --git a/libc/string/xtensa/strcmp.S b/libc/string/xtensa/strcmp.S index ac058a2bf..86ad80df8 100644 --- a/libc/string/xtensa/strcmp.S +++ b/libc/string/xtensa/strcmp.S @@ -17,7 +17,7 @@ Software Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "../../sysdeps/linux/xtensa/sysdep.h" +#include #include #include diff --git a/libc/string/xtensa/strcpy.S b/libc/string/xtensa/strcpy.S index dc0a15175..c3a21a691 100644 --- a/libc/string/xtensa/strcpy.S +++ b/libc/string/xtensa/strcpy.S @@ -17,7 +17,7 @@ Software Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "../../sysdeps/linux/xtensa/sysdep.h" +#include #include #ifdef __XTENSA_EB__ diff --git a/libc/string/xtensa/strlen.S b/libc/string/xtensa/strlen.S index 9ee4995f4..23c68f2d5 100644 --- a/libc/string/xtensa/strlen.S +++ b/libc/string/xtensa/strlen.S @@ -17,7 +17,7 @@ Software Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "../../sysdeps/linux/xtensa/sysdep.h" +#include #include #ifdef __XTENSA_EB__ diff --git a/libc/string/xtensa/strncpy.S b/libc/string/xtensa/strncpy.S index fe3ec894c..a048d432e 100644 --- a/libc/string/xtensa/strncpy.S +++ b/libc/string/xtensa/strncpy.S @@ -17,7 +17,7 @@ Software Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "../../sysdeps/linux/xtensa/sysdep.h" +#include #include #ifdef __XTENSA_EB__ -- cgit v1.2.3