summaryrefslogtreecommitdiffstats
path: root/libc/sysdeps/linux/arm
Commit message (Collapse)AuthorAgeFilesLines
* unwind.h: Move to libc/sysdeps from nptl sysdepsKhem Raj2011-05-131-0/+279
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* */crtn.S: Remove .size directive for _init and _finiBernhard Reutner-Fischer2011-05-101-2/+0
| | | | | | | | | These are split across objects so setting size does not (and never did) work since the expression cannot be computed at assembly time. This avoids errors from recent (> 2.21) gas. Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* Revert "*/crt?.S: remove .size directives"Bernhard Reutner-Fischer2011-05-052-0/+3
| | | | | | Removing them generally was not a good idea This reverts commit 233c504cd940d9802226b6a3a092368b86978f5e.
* */crt?.S: remove .size directivesBernhard Reutner-Fischer2011-05-042-3/+0
| | | | | | sed -i -e '/\.size[[:space:]]/d' $(grep -l "\.size" libc/sysdeps/linux/*/crt*.[sSc]) Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* arm/bits/atomic.h: Include common/bit/atomic.h for thumb1Khem Raj2011-03-141-0/+5
| | | | | | | This restores the behavior for thumb1 builds and yet uses the new atomic.h for arm and thumb2 modes. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* regcomp.c, aeabi_mb_cur_max.c: use unconditionally MB_CUR_MAX from stdlib.hPeter S. Mazinger2011-03-091-4/+0
| | | | Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
* bits/kernel_stat.h: no need for _LIBC guard, the file is not installed on targetPeter S. Mazinger2011-03-091-4/+0
| | | | Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
* unify stub logicMike Frysinger2011-02-242-2/+2
| | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* arm: use CAS gcc builtin if SI-mode pattern is availableBernhard Reutner-Fischer2011-02-111-8/+17
| | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* arm: mv nptl specific atomic impl to common placeBernhard Reutner-Fischer2011-02-091-0/+122
| | | | | | Thanks to Nitin Garg for notincing! Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* arm/crt1.S: Avoid dependency on PC+4 or PC+8Khem Raj2010-07-211-8/+3
| | | | | | | * fix a problem with Thumb PIE binaries, where the GOT was located incorrectly because of an offset 8 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* arm: Macros in sysdeps/linux/arm also needed to be changed to accept _a1 to ↵Khem Raj2010-07-151-9/+9
| | | | | | __a1 renaming. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* silence shadow warningsBernhard Reutner-Fischer2010-07-141-21/+21
| | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* arm: Silence warning about shadow declarationsKhem Raj2010-07-072-26/+26
| | | | | | | | | libc/inet/socketcalls.c: In function ‘__libc_recvfrom’: libc/inet/socketcalls.c:229:1: warning: declaration of ‘_sys_result’ shadows a previous local libc/inet/socketcalls.c:229:1: warning: shadowed declaration is here Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nptl: fix buildsysBernhard Reutner-Fischer2010-07-061-3/+2
| | | | | | | | | Now automatically picks the correct (arch and subarch specific) impls in favour of generic impls. make O=/tmp/objs PREFIX=/my/sysroot -j works now as expected (both out-of-tree as well as parallel-safe). Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* libc: silence warnings about undefined cpp tokensBernhard Reutner-Fischer2010-06-241-1/+1
| | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* Assorted fixed to get nptl compiling on ARMKhem Raj2010-02-171-0/+5
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* arm/sysdep: Unify arm sysdep.hKhem Raj2010-02-111-7/+278
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nptl: sysdep headers re-factoringCarmelo Amoroso2010-02-091-0/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch will re-factor and simplify sysdep headers handling for nptl branch. The reason is to use some useful macros in asm code (i.e. ENTRY()) that are available only into nptl branch because are defined in sysdep.h header under the nptl folder even if they are not related to NPTL at all (this was likely due to a bad choice done at the early stage of NPTL porting). This is a required steps for integrating into master branch some asm code available in nptl branch for sh4. The main changes are described below: nptl/sysdeps/generic/sysdep.h (moved) ---> libc/sysdeps/linux/common/sysdep.h nptl/sysdeps/arm/sysdep.h (moved) ---> libc/sysdeps/linux/arm/sysdep.h nptl/sysdeps/sh/sysdep.h ---------------------| nptl/sysdeps/unix/sh/sysdep.h ----------------| nptl/sysdeps/unix/sysv/linux/sh/sysdep.h -----| nptl/sysdeps/unix/sysv/linux/sh/sh4/sysdep.h -| |(merged) ---> libc/sysdeps/linux/sh nptl/sysdeps/unix/sysdep.h (deleted) Similarly the mips and arm sysdep.h should be merged and updated as for sh arch. Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* Merge remote branch 'origin/master' into nptlAustin Foxley2009-11-281-103/+0
|\ | | | | | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
| * bits/mmap.h: unify ala linux asm-generic effortsMike Frysinger2009-11-231-103/+0
| | | | | | | | | | | | | | | | | | | | Most ports have the same exact mman bit defines, so let's unify things like the linux kernel has with the asm-generic efforts. A few ports are left behind as they are non-trivial to merge -- the arch maintainers can tackle it if they care. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | arm specific bits needed for nptlAustin Foxley2009-10-175-8/+46
|/ | | | | | | * SAVE_PID, RESTORE_PID in vfork.S * clone.S tweaks to allow for the pid to be reset Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* Fix building arm EABIBernhard Reutner-Fischer2009-10-081-0/+1
| | | | | | | | | | | | | | The syscall() impl on aeabi comes from syscall-eabi.S thus we do not need the generic syscall() impl. Fixes: AS libc/sysdeps/linux/arm/syscall-eabi.os CC libc/sysdeps/linux/common/syscall.os libc/libc_so.a(syscall.os): In function `syscall': syscall.c:(.text+0x0): multiple definition of `syscall' libc/libc_so.a(syscall-eabi.os):(.text+0x0): first defined here Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* clean up O_CLOEXEC handlingMike Frysinger2009-10-071-2/+0
| | | | | | | Drop the "#ifndef O_CLOEXEC" cruft, enable O_CLOEXEC in most fcntl.h headers, and import __ASSUME_O_CLOEXEC from glibc. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* convert // comments to /**/; remove empty #if/#endif pairs. no code changesDenys Vlasenko2009-09-181-3/+0
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* trim Experimentally off and uncommented hiddenBernhard Reutner-Fischer2009-09-1810-22/+1
| | | | | | | | sed -i -e '/Experimentally off - /d' $(grep -rl "Experimentally off - " *) sed -i -e '/^\/\*[[:space:]]*libc_hidden_proto(/d' $(grep -rl "libc_hidden_proto" *) should be a nop Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* Revert "syscall.c: Use common syscall.c for ARM"Khem Raj2009-09-063-0/+129
| | | | | | | | This reverts commit b1913a876059949e6c309bafade55e9425ef33fb. OABI is still a requirement. So we override the common syscall implementation specifically for arm port. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* honour NO_LONG_DOUBLE_MATHBernhard Reutner-Fischer2009-08-301-0/+8
| | | | | | | | This fixes compilation errors on hosts that turn off long double support for C99 like powerpc32. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* Build posix_fadvice{64} only when UCLIBC_HAS_ADVANCED_REALTIME is set.Khem Raj2009-08-301-2/+5
| | | | | | | | | Right now for ARM, MIPS, Xtensa and powerpc posix_fadvise routines are included conditionally. They should only be enabled when UCLIBC_HAS_ADVANCED_REALTIME is set. Also fix code style in powerpc/posix_fadvise64.c Signed-off-by: Khem Raj <raj.khem@gmail.com>
* syscall.c: Use common syscall.c for ARMKhem Raj2009-08-013-129/+0
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* build: Include Makefile.commonarch from common Makefile.inCarmelo Amoroso2009-07-291-2/+0
| | | | | | | | Avoid including akefile.commonarch in each Makefile.arch. Include it instead from Makefile.in just after the arch specific Makefile.arch Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* enable nanosecond stat support for everyoneMike Frysinger2009-07-261-14/+6
| | | | | | | | | | | | | Fill out the stat structure so that the nanosecond resolution support is always available. There is a small code size increase for a few ports (three additional assignments in xstatconv), but otherwise everything should remain the same. While we're here, punt __old_kernel_stat from the few headers that still define it as it is unused in uClibc and causes compile errors after these nanosecond changes. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Fix ARM syscall argument loading.Joseph Myers2009-07-141-14/+21
| | | | | | | | | | | This patch is a uClibc equivalent of <http://sourceware.org/ml/libc-ports/2008-11/msg00006.html>, to compute all syscall arguments on ARM in temporary variables before loading them into register variables. The principle is as for that glibc patch; the problem I actually observed was a GCC internal compiler error building ld.so for Thumb-2. Signed-off-by: Joseph Myers <joseph@codesourcery.com>
* syscall: unify part 2: NCS varietyMike Frysinger2009-07-091-8/+8
| | | | | | | Declare common NCS (non-constant syscall) variants and convert the existing ports over to this. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* syscall: unify common syscall definesMike Frysinger2009-07-081-71/+0
| | | | | | | | | Unify all the common syscall defines in syscalls-common.h and scrub all the duplicated code from relevant ports. This should also make converting existing ports to INLINE_SYSCALL() much easier as they don't have to get lost in all the unrelated noise, as well as creating new ports. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Avoid warnings about shifting more bits than we haveRon2009-07-051-2/+4
| | | | | | | | | The test here is a constant expression and will compile out. For platforms that don't need the shift the code gets slightly smaller and simpler, for those that do the result is unchanged. Signed-off-by: Ron Lee <ron@debian.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Provide token prototypes for functions that are external but have no headerRon2009-07-0510-28/+24
| | | | | | | This cuts down on a lot of noise from gcc-4.4 Signed-off-by: Ron Lee <ron@debian.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* uClibc_arch_features: sync defines between portsMike Frysinger2009-07-031-0/+9
| | | | | | | Make sure each arch has the same complete list to make comparing between them easier. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Fix Thumb-2 setjmp.Joseph Myers2009-06-301-1/+1
| | | | | | | | Many Thumb-2 instructions cannot use sp or pc as operands, and the assembler now diagnoses these. setjmp had one such instruction, movs; this patch changes it to mov. Signed-off-by: Joseph Myers <joseph@codesourcery.com>
* Add missing CLIBABI variables __aeabi_stdin, __aeabi_stdout, __aeabi_stderr.Joseph Myers2009-06-281-0/+15
| | | | | | | | | | | The ARM EABI has a document CLIBABI specifying various __aeabi_* functions and variables to be provided for the use of portable objects that can be linked with different EABI-conforming C libraries. __aeabi_stdin, __aeabi_stdout and __aeabi_stderr were missing in uClibc; this patch (originally from Nathan Froyd and for glibc) adds them. Signed-off-by: Joseph Myers <joseph@codesourcery.com>
* mknod: widen the parameters to match kernelDenis Vlasenko2009-03-031-1/+1
| | | | | | | | | ustat: same, + remove superfluous "conversion" which does nothing at best, loses high dev bits at worst i386/bits/kernel_stat.h: update to reflect reality (wider dev_t) h8300/bits/kernel_stat.h: same arm/bits/kernel_stat.h: cosmetics to match kernel header to the letter
* Remove __libc_posix_fadvise[64] alias. It existed on i386 and arm only,Denis Vlasenko2008-12-152-6/+30
| | | | | | | | | and google says only uclibc has it, no users at all. text data bss dec hex filename - 229374 1367 11280 242021 3b165 lib/libuClibc-0.9.30-svn.so + 229347 1367 11280 241994 3b14a lib/libuClibc-0.9.30-svn.so
* sigaction overhaul as described in docs/sigaction.txtDenis Vlasenko2008-12-151-61/+29
| | | | | Run tested on i386.
* Remove the rest of "bounded pointers" scaffolding. gcc website says"Denis Vlasenko2008-12-131-4/+4
| | | | | | "Bounds Checking Projects... This project has been abandoned" for four years at least.
* make all "XXXhidden_proto(" consistently not use a space before '('Denis Vlasenko2008-12-131-1/+1
|
* *: remove some __libc_XXX functions:Denis Vlasenko2008-12-101-2/+2
| | | | | | | | | | | | __libc_accept __libc_close __libc_connect __libc_creat __libc_creat64 __libc_fsync __libc_lseek __libc_lseek64 __libc_msync __libc_nanosleep __libc_open __libc_open64 __libc_pause __libc_read __libc_readv __libc_recv __libc_recvfrom __libc_recvmsg __libc_send __libc_sendmsg __libc_sendto __libc_tcdrain __libc_wait __libc_waitpid __libc_write __libc_writev They were removed from glibc 1 May 2004: http://sources.redhat.com/ml/libc-hacker/2004-05/msg00001.html
* fix sigset_t size for mips (it's the only arch with 128 signals).Denis Vlasenko2008-12-011-23/+30
| | | | | | | fix _NSIG for it. better document what's going on in sigaction(). seems to not induce any actual code changes (sans mips).
* - Fix thumb2 PIE (Joseph S. Myers)Bernhard Reutner-Fischer2008-11-251-0/+4
| | | | | | | | | This patch fixes position-independent executables (PIEs) for Thumb-2. In Thumb assembly, instructions reading pc give a value 4 greater than the address of the instruction, rather than 8 greater as in ARM mode, so the offset to the GOT needs to have the right offset. (The Thumb-1 code already gets this right; it's the code shared by ARM and Thumb-2 that needs fixing.)
* fix ioperm build problems caused by libc_hidden_proto removalDenis Vlasenko2008-11-211-0/+1
|
* Last portion of libc_hidden_proto removal.Denis Vlasenko2008-11-205-8/+8
| | | | | Appears to build fine (several .configs tried)