History log of /freebsd-10.1-release/lib/libc/arm/string/
Revision Date Author Comments
272461 03-Oct-2014 gjb

Copy stable/10@r272459 to releng/10.1 as part of
the 10.1-RELEASE process.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


271337 09-Sep-2014 ian

MFC r270882, r270930:

In ARM asm code, ensure that every ENTRY(foo) has a matching END(foo).
The EABI unwind info requires a .fnend for every .fnstart, and newer
binutils will complain about seeing two .fnstart in a row. This change
allows newer tools to compile our code.

Do not generate unwind info in asm functions if _STANDALONE is defined.
The .fnend op causes the assembler to emit RELOC references to unwind
support functions that don't exist in libstand.

Approved by: re(gjb)


256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


229368 03-Jan-2012 ed

Merge index() and strchr() together.

As I looked through the C library, I noticed the FreeBSD MIPS port has a
hand-written version of index(). This is nice, if it weren't for the
fact that most applications call strchr() instead.

Also, on the other architectures index() and strchr() are identical,
meaning we have two identical pieces of code in the C library and
statically linked applications.

Solve this by naming the actual file strchr.[cS] and let it use
__strong_reference()/STRONG_ALIAS() to provide the index() routine. Do
the same for rindex()/strrchr().

This seems to make the C libraries and static binaries slightly smaller,
but this reduction in size seems negligible.


204607 02-Mar-2010 joel

The NetBSD Foundation has granted permission to remove clause 3 and 4 from
their software.

Obtained from: NetBSD


194585 21-Jun-2009 stas

- Eliminate extra subcs instruction. I have not noticed before that we
always perform substraction now, so no instruction could be rordered
to eliminate the conditional substraction.


194583 21-Jun-2009 stas

- Fix strncmp on arm. Return 0 as result without performing the
main cycle only if the len passed is equal to 0. If end address
overflows use last possible address as the end address.

Based on: discussion on arm@
MFC after: 1 month


191836 06-May-2009 sam

revert r191633; this breaks at91 & xscale (likely all arm)


191633 28-Apr-2009 cognet

Change the test at the beginning of strncmp(), from being if (len - 1) < 0
to if (len == 0).
The length is supposed to be unsigned, so len - 1 < 0 won't happen except
if len == 0 anyway, and it would return 0 when it shouldn't, if len was
> INT_MAX.

Spotted out by: Channa <channa kad gmail com>


172616 13-Oct-2007 cognet

MFKernel: do not use __XSCALE__ to detect if clz/pld/ldrd/strd are
available, use _ARM_ARCH_5/_ARM_ARCH_5E instead.

MFC After: 3 days


150877 03-Oct-2005 cognet

Fix a long line in copyright notice.

Pointed out by: Gavin Atkinson gavin.atkinson ury york ac uk


150875 03-Oct-2005 cognet

Add an asm version of strlen() for arm (how useful).


137464 09-Nov-2004 cognet

Use the RET macro.
For setjmp() and longjmp(), put the signal mask where it's supposed to be,
instead of in the space reserved for fp regs.


137343 07-Nov-2004 cognet

MFKernel: Implement ffs with clz on Xscale.


135683 23-Sep-2004 cognet

Always use bx for returning on Xscale.

Obtained from: NetBSD


135682 23-Sep-2004 cognet

Fix the align-to-32-bits code.

Obtained from: NetBSD


129202 14-May-2004 cognet

Import the FreeBSD/arm libc bits.

Obtained from: NetBSD