summaryrefslogtreecommitdiff
path: root/libc/sysdeps
AgeCommit message (Collapse)Author
2008-01-17A patch from our Blackfin repository, originally from Jie Zhang. This fixesBernd Schmidt
a problem where the linker was trying to use the wrong symbol name for the init function. Define SYMBOL_PREFIX as _ in Rules.mak for h8300, bfin, i960, microblaze, and v850. Add -D__UCLIBC_UNDERSCORES__ in CFLAGS for targets which define SYMBOL_PREFIX as _. Remove defines and undefs from uClibc_arch_features.h of each target. Add $(SYMBOL_PREFIX) to __uClibc_init when passed by ld option -init.
2008-01-08change NO_UNDERSCORES to just UNDERSCORES so as to be less confusing when ↵Mike Frysinger
doing double negatives
2008-01-08Switch sh64 to use __uClibc_main and the new register layout.Paul Mundt
This was one of the stragglers still bent on __uClibc_start_main utilization, now it's only FR-V.
2008-01-08Bring sh64 support back from the dead.Paul Mundt
2008-01-05this code does not actually rely on INTERNAL_SYSCALLMike Frysinger
2008-01-05if an arch does not provide __NR_mmap, fall back to __NR_mmap2 (this just ↵Mike Frysinger
generalizes what Blackfin was already doing)
2008-01-05Chris Zankel writes:Mike Frysinger
The following patches add support for the Xtensa processor architecture to uClibc. They are based on a recent SVN checkout (12/05/2007). The first patch (attached to this post) adds Xtensa support to various shared configuration and make files. The following patches then include the Xtensa specific files and directories. I welcome any feedback and would appreciate it if you could include the patches into the mainline tree. I am certainly committed to maintain the port. Bob Wilson was kind enough to review the patches. Some notes about the architecture: Xtensa is a configurable and extensible processor architecture developed by Tensilica. For more information, please visit: www.linux-xtensa.org.
2008-01-05whitespace only: touchups from Hans-Christian EgtvedtMike Frysinger
2008-01-05add BOTHER define from termios2Mike Frysinger
2008-01-05implement semtimedop for #927Mike Frysinger
2008-01-05michael_d writes in #1874: Mike Frysinger
On an i386 platform with no rt_sigsuspend syscall (ie: Linux 2.0), compilation will halt on libc/sysdeps/linux/common/sigsuspend.os with a cryptic error message: "Error: non-constant expression in ".if" statement" I've investigated and found that the cause is that a literal '0' is being passed into a block of complex assembler macrology that is only prepared to deal with register names - '%eax', etc. In turn, that seems to be because of a typo in the GCC register constraints. The constraints for 2 and 3-argument syscalls includes a "C" constraint. To gcc, "C" means an SSE floating point constant -- an unlikely element in a syscall. I suspect the author meant to type "S" (%esi).
2008-01-05michael_d in #1849 writes: The getcwd() implementation in the absence of a ↵Mike Frysinger
getcwd syscall has an off-by-one allocation bug. As a result, sometimes the returned string has garbage at the end.
2007-12-07I don't remember exactly why we decided to pick the caller's value ofCarmelo Amoroso
sa_restorer when SA_ONSTACK is set, but it seems to break LTP's sigaltstack testcase. Some users have reported problems with sigaltstack as well; hopefully this will fix it. Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
2007-11-23Blackfin crt1.S fixes for building with -msep-data.Bernd Schmidt
2007-11-23mcontext_t shouldn't have a version argument, and fix REG_B0 definition.Bernd Schmidt
2007-11-23From Jie Zhang:Bernd Schmidt
__bswap_16 could not assume that it's zero extended when an unsigned short int is loaded into the data register.
2007-11-22Ignore entries of "-1" in rofixup; the linker sometimes has no choice but toBernd Schmidt
create these for deleted entries in .eh_frame.
2007-11-22Add Blackfin specific mmap implementation using sys_mmap2.Bernd Schmidt
2007-11-22sys/procfs.h defines a typedef for floating point registers that references anBernd Schmidt
undefined structure. This typedef is used in linuxthreads.old-db, causing a compilation failure. Fixed by defining an empty structure for it - we don't have fp regs anyway.
2007-11-20ARM SHMLBA = (4 * PAGE_SIZE). Currently in uclibc arm used shm.h fromCarmelo Amoroso
common directory where SHMLBA = __getpagesize() This patch fixes the issue. Khem Raj MontaVista Software Inc.
2007-11-16Added AVR32 support to uClibc. Signed-off-by: Hans-Christian Egtvedt ↵Carmelo Amoroso
<hcegtvedt@atmel.com>
2007-10-23Poll with zero timeoutJoakim Tjernlund
Jean-Christian de Rivaz writes: The attached patch solve an issue I faced while using the libdbus-glib waiting for a D-Bus message or the end of a glib timer at the same time. This specific case of use generate a poll call with a zero timeout. On platformes with the glibc a zero timeout poll return immetiately even if there is no file descriptor event. But on platformes with uClibc a zero timeout poll block until a file descriptor event occurs.
2007-09-30- Fix compilation for mips ABI64 with no LFS.Bernhard Reutner-Fischer
2007-09-30- Fix compilation for mips ABI64 with no LFS.Bernhard Reutner-Fischer
This wants a stub_enosys(readahead) line later on, like many, many others need..
2007-09-15from Blue Swirl: fixup sparc a bit moreMike Frysinger
2007-09-15pull from Blackfin repo: optimized byteswap funcs!Mike Frysinger
2007-09-15pull from Blackfin repo: cleanup string funcsMike Frysinger
2007-09-15forgot to add this with previous sparc commit ...Mike Frysinger
2007-09-15use gcc input constraints to avoid often duplicated reloads when making syscallsMike Frysinger
2007-09-15if __NR__newselect and __NR_select are unavailable, fall back to __NR_pselect6Mike Frysinger
2007-09-15Blue Swirl writes:Mike Frysinger
I got the library to compile with the attached patches, though dynamic loader crashes early. In buildroot I changed the architecture name by hand from sparc to sparc64, otherwise the compiler produced 32-bit files with V9 (64-bit) instructions. This configuration is not supported by QEMU, so I aimed for pure 64-bit. I think Sparc64 option needs to be added to buildroot. The _Qp_ ops seem to be required by the ABI. This and setjmp patches are just hacks to get the compilation further. The _Qp_ ops can be found in glibc, would it be OK to use those? V9 assembler requires declarations for global register use. The mem* functions in sparc32 directory did not work. They are actually used only by the hybrid 32-bit + V9 CPU configuration.
2007-09-15Atsushi Nemoto writes:Mike Frysinger
In MIPS syscall(2), .cpload was added to an the error path, but it was not enough for ABIs other then O32. Use SETUP_GP, SETUP_GP64 and RESTORE_GP64 to handle all ABIs. This patch fixes an error path of MIPS pipe(2) too.
2007-07-29Remove stray code alignment (.align 16 and .align 4 directives)Denis Vlasenko
from i386 and x86_64.
2007-07-18include/sys/mman.h says that msync exists only on MMU.Denis Vlasenko
Make msync.c agree on this.
2007-07-18Enable all of the remaining baud rates. All of the other architectures have ↵"Steven J. Hill"
them enabled, so let's go all the way. There was a quick discussion on IRC about making the max baud rate configurable. That requires a bunch of #ifdef salting throughout all of the 'termios.h' files for the pre-processor to chew on. I'm going to pass on that for now.
2007-07-12Fix broken syscall() function since the original patch did not work."Steven J. Hill"
2007-06-24- make sure to define _LIBC in libc-symbols.h before including anythingBernhard Reutner-Fischer
else. - internal_function is only used inside libc, so do not define it in uClibc_arch_features.h on i386 if we are outside of libc.
2007-06-13Carmelo AMOROSO <carmelo.amoroso@st.com> writes:Joakim Tjernlund
Hi All, this patch fixes a mismatch in ucontext struct between uClibc and kernel. In this way a signal handler installed by sigaction can access to the whole machine state correctly. This can be applied both to trunk and nptl branch
2007-05-31Atsushi Nemoto writes:Mike Frysinger
Current MIPS readahead(), posix_fadvise(), posix_fadvise64() do not match with kernel on all ABIs. On O32 ABI, a padding is needed before a long long argument. On N32/N64, a long long argument should be passed via a single register.
2007-05-31Atsushi Nemoto writes:Mike Frysinger
http://www.opengroup.org/onlinepubs/009695399/functions/posix_fadvise.html states it returns error code instead of setting errno.
2007-05-25Jean-Christian de Rivaz writes:Mike Frysinger
I actually suspect this code into the file uClibc/libc/sysdeps/linux/common/poll.c: tval.tv_nsec = (timeout % 1000) *1000; <==== make only usec! From milisecond this really needs a * 1000000 to make nanosecond. Without this a 1100 milisecond timeout is converted into a 1 seconde and 100 microsecond timeout! This can explain the weird result of the test code.
2007-05-25Remove the arch specific mmap impl. for Powerpc. The common one will do.Joakim Tjernlund
2007-05-24Fix MIPS syscall() and pipe functions to set errno correctly as reported by ↵"Steven J. Hill"
Daniel Jacobowitz on the mailing list. More information available at <http://www.uclibc.org/lists/uclibc/2007-May/017968.html> .
2007-05-24Fix ARM EABI signal unwinding to accomodate signal frame layout between ↵"Steven J. Hill"
Linux kernel versions as reported by Joseph S. Myers on the mailing list. More information available at <http://www.uclibc.org/lists/uclibc/2007-May/017971.html> .
2007-05-15Restored indentation.Peter Kjellerstedt
2007-05-15Made it compile again.Peter Kjellerstedt
2007-05-15Fix arm mmap when using mmap2 syscall. Fixes bug #1303Khem Raj
2007-04-30Carmelo AMOROSO writes:Mike Frysinger
running LTP test suite on uClibc-nptl for sh4 I found a bug into pread and pwrite functions. When the offset is negative it is not correctly handled due to a missing shift operation, so it is passed to the syscall as the highest unsigned positive value.
2007-04-02fixes from Carmelo AMOROSO to depend less on kernel headersMike Frysinger
2007-03-31Update comment regarding passing dl_fini.Joakim Tjernlund