| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
The malloc() code checks the incoming size to make sure the header
adjustment doesn't cause overflow in the size storage. Add the same
check to realloc() to catch stupid stuff like realloc(..., -1).
Reported-by: James Coleman <james.coleman@ubicom.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
|
|
|
|
| |
We don't really need to know the exact symbol that caused a failure as
long as we know where to start looking. So unify the duplicate code
between all funcs and between the sparc variants. This gives us a nice
code shrink of ~95%.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
| |
Thanks to Jason Woodward <jason.woodward@timesys.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
|
|
|
| |
Align sh clone implementation with glibc one that incorporated
time ago a patch provided by me slightly modified.
The glibc code indeed avoids to load the r3 register if the 2nd
function argument is NULL (r5). No functional change.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
| |
|
|
|
|
|
| |
Remove forward declaration for service routine.
Reorder code and keep hidden_def right after the respective function.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
| |
|
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This optimization is based on prefetching and 64bit data transfer via FPU
(only for the little endianess)
Tests shows that:
----------------------------------------
Memory bandwidth | Gain
| sh4-300 | sh4-200
----------------------------------------
512 bytes to 16KiB | ~20% | ~25%
from 32KiB to 16MiB | ~190% | ~5%
----------------------------------------
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds the strcpy and strncpy assembly routines.
Benchmarks showed the following gains:
~7% for strcpy
~30% for strncpy
Note: uClibc string tests pass without any failures.
These functions have been only tested on SH4, for this reason
I've voluntarily added them within the sh4 sub-folder.
If somebody would like to test them on other SH CPUs, these can be moved
on sh common folder.
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
| |
|
|
|
|
|
|
| |
Faster assembly implementation of strlen taken from Linux kernel.
Adapted to uClibc.
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
| |
|
|
|
|
|
|
| |
Faster assembly implementation of memchr taken from Linux kernel.
Adapted to uClibc.
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds the memmove fuction for SH4.
By default, it used the generic implementation.
This new code uses the memcpy for BWD copies and implements FWD copy
when required (see comment within the code itself).
The idea behind is to get advantage of using the optimised memcpy for SH4
and use the FPU for FWD copies (for big sizes) as well.
LMBench bw_mem test showed a significant improvement on uClibc because bcopy
invokes memmove, directly.
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
This patch adds the SH memset assembly implementation currenlty included
into the Kernel.
It also adds, only for little endian mode, the 64bit data transfer via FPU
(using single paired precision mode).
Tests shows that on SH4-300 we gain ~100% for size greater than 1KiB.
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
| |
|
|
|
| |
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
| |
|
|
|
|
| |
This seemingly harmless warning fix causes mutex use in libc to crash...
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
|
| |
use socketcall for sparc32 since it does not have
the individual socket syscalls
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
| |
also cleanup errno.c to match master tls patch
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
| |
Got it compiling thus far, still working on getting it to run
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Signed-off-by: Stephan Raue <mailinglists@openelec.tv>
|
| |
|
|
|
|
| |
add a no threads version of not-cancel.h to fallback on
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
|
|
|
| |
sigwait is not called from any uclibc function, so "hidden symbol"
trick is not needed on it. __sigwait also is never used,
and it's not clear why it even existed.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
| |
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
|
|
| |
It is not used by anybody, otherwise users of dynamically linked uclibc
would notice - it is not exported from libuClibc-x.x.x.so
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
|
|
| |
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: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This patch makes sufficient modifications to the SH sys/user.h to be
able to build and run gdbserver with Linux kernel 2.6.30.
The problem is that both the kernel and library headers define the same
symbols, thus making it impossible in include both headers. The patch
undefines the kernel symbols in favour of the library symbols.
Signed-off-by: Andrew Stubbs <ams@codesourcery.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Make sure we declare the error properly in case a port uses it, and fix the
invocation of exit(). Since clone() will be returning a pid, assume that
the value will not have the MSB set (negative) to simplify the error test a
bit more. If gcc supports it, force this function to always be heavily
optimized in a bid to avoid stack usage as much as possible.
Signed-off-by: James Coleman <james.coleman@ubicom.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
|
| |
no code is actually changed
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
|
|
|
|
| |
text data bss dec hex filename
- 1109 8 76 1193 4a9 libc/misc/time/tzset.o
+ 1095 8 76 1179 49b libc/misc/time/tzset.o
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
| |
|
|
|
| |
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|