svn commit: branches/uClibc-nptl: ldso/ldso/arm ldso/ldso/cris ldso/ldso/m etc...
sjhill at uclibc.org
sjhill at uclibc.org
Fri Aug 18 03:29:54 UTC 2006
Author: sjhill
Date: 2006-08-17 20:29:53 -0700 (Thu, 17 Aug 2006)
New Revision: 15819
Log:
Merge from trunk.
Modified:
branches/uClibc-nptl/ldso/ldso/arm/dl-sysdep.h
branches/uClibc-nptl/ldso/ldso/arm/elfinterp.c
branches/uClibc-nptl/ldso/ldso/cris/elfinterp.c
branches/uClibc-nptl/ldso/ldso/m68k/elfinterp.c
branches/uClibc-nptl/ldso/ldso/powerpc/elfinterp.c
branches/uClibc-nptl/ldso/ldso/sh/elfinterp.c
branches/uClibc-nptl/ldso/ldso/x86_64/elfinterp.c
branches/uClibc-nptl/libc/string/arm/bcopy.S
branches/uClibc-nptl/libc/string/arm/bzero.S
branches/uClibc-nptl/libc/string/arm/memcmp.S
branches/uClibc-nptl/libc/string/arm/strncmp.S
branches/uClibc-nptl/libc/string/bfin/memchr.S
branches/uClibc-nptl/libc/string/i386/strchr.c
branches/uClibc-nptl/libc/string/i386/strncmp.c
branches/uClibc-nptl/libc/string/i386/strnlen.c
branches/uClibc-nptl/libc/string/i386/strrchr.c
branches/uClibc-nptl/libc/string/ia64/bcopy.S
branches/uClibc-nptl/libc/string/ia64/bzero.S
branches/uClibc-nptl/libc/string/ia64/memcmp.S
branches/uClibc-nptl/libc/string/ia64/strchr.S
branches/uClibc-nptl/libc/string/ia64/strncmp.S
branches/uClibc-nptl/libc/string/sparc/sparc32/memcpy.S
branches/uClibc-nptl/libc/string/sparc/sparc32/memset.S
branches/uClibc-nptl/libc/string/sparc/sparc32/strchr.S
branches/uClibc-nptl/libc/string/sparc/sparc64/memcpy.S
branches/uClibc-nptl/libc/string/sparc/sparc64/memset.S
branches/uClibc-nptl/libc/string/sparc/sparc64/sparcv9b/memcpy.S
branches/uClibc-nptl/libc/string/sparc/sparc64/strchr.S
branches/uClibc-nptl/libc/string/x86_64/bzero.S
branches/uClibc-nptl/libc/string/x86_64/strchr.S
Changeset:
Modified: branches/uClibc-nptl/ldso/ldso/arm/dl-sysdep.h
===================================================================
--- branches/uClibc-nptl/ldso/ldso/arm/dl-sysdep.h 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/ldso/ldso/arm/dl-sysdep.h 2006-08-18 03:29:53 UTC (rev 15819)
@@ -19,30 +19,31 @@
{
unsigned long i,t,inc;
i=p; t=0;
- while(!(i&(1<<31))) {
+ while (!(i&(1<<31))) {
i<<=1;
t++;
}
t--;
- for(inc=t;inc>2;inc--) {
+ for (inc=t;inc>2;inc--) {
i=p<<inc;
- if(i&(1<<31))
+ if (i&(1<<31))
break;
- while(m>=i) {
+ while (m>=i) {
m-=i;
i<<=1;
- if(i&(1<<31))
+ if (i&(1<<31))
break;
- if(i<p)
+ if (i<p)
break;
}
}
- while(m>=p) {
+ while (m>=p) {
m-=p;
}
return m;
}
#define do_rem(result, n, base) ((result) = arm_modulus(n, base))
+#define do_div_10(result, remain) ((result) = (((result) - (remain)) / 2) * -(-1ul / 5ul))
/* Here we define the magic numbers that this dynamic loader should accept */
#define MAGIC1 EM_ARM
Modified: branches/uClibc-nptl/ldso/ldso/arm/elfinterp.c
===================================================================
--- branches/uClibc-nptl/ldso/ldso/arm/elfinterp.c 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/ldso/ldso/arm/elfinterp.c 2006-08-18 03:29:53 UTC (rev 15819)
@@ -69,7 +69,7 @@
_dl_dprintf(2, "%s: Incorrect relocation type in jump relocations\n",
_dl_progname);
_dl_exit(1);
- };
+ }
/* Address of jump instruction to fix up */
instr_addr = ((unsigned long) this_reloc->r_offset +
@@ -83,14 +83,14 @@
_dl_dprintf(2, "%s: can't resolve symbol '%s'\n",
_dl_progname, symname);
_dl_exit(1);
- };
+ }
#if defined (__SUPPORT_LD_DEBUG__)
if ((unsigned long) got_addr < 0x40000000)
{
if (_dl_debug_bindings)
{
_dl_dprintf(_dl_debug_file, "\nresolve function: %s", symname);
- if(_dl_debug_detail) _dl_dprintf(_dl_debug_file,
+ if (_dl_debug_detail) _dl_dprintf(_dl_debug_file,
"\tpatch %x ==> %x @ %x", *got_addr, new_addr, got_addr);
}
}
@@ -275,7 +275,7 @@
return -1; /*call _dl_exit(1) */
}
#if defined (__SUPPORT_LD_DEBUG__)
- if(_dl_debug_reloc && _dl_debug_detail)
+ if (_dl_debug_reloc && _dl_debug_detail)
_dl_dprintf(_dl_debug_file, "\tpatch: %x ==> %x @ %x", old_val, *reloc_addr, reloc_addr);
}
@@ -308,7 +308,7 @@
return -1; /*call _dl_exit(1) */
}
#if defined (__SUPPORT_LD_DEBUG__)
- if(_dl_debug_reloc && _dl_debug_detail)
+ if (_dl_debug_reloc && _dl_debug_detail)
_dl_dprintf(_dl_debug_file, "\tpatch: %x ==> %x @ %x", old_val, *reloc_addr, reloc_addr);
}
Modified: branches/uClibc-nptl/ldso/ldso/cris/elfinterp.c
===================================================================
--- branches/uClibc-nptl/ldso/ldso/cris/elfinterp.c 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/ldso/ldso/cris/elfinterp.c 2006-08-18 03:29:53 UTC (rev 15819)
@@ -188,7 +188,7 @@
if (unlikely(!symbol_addr && ELF32_ST_BIND(symtab[symtab_index].st_info) != STB_WEAK)) {
_dl_dprintf(2, "%s: can't resolve symbol '%s'\n", _dl_progname, symname);
_dl_exit(1);
- };
+ }
symbol_addr += rpnt->r_addend;
}
Modified: branches/uClibc-nptl/ldso/ldso/m68k/elfinterp.c
===================================================================
--- branches/uClibc-nptl/ldso/ldso/m68k/elfinterp.c 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/ldso/ldso/m68k/elfinterp.c 2006-08-18 03:29:53 UTC (rev 15819)
@@ -190,7 +190,7 @@
if (unlikely(!symbol_addr && ELF_ST_BIND(sym->st_info) != STB_WEAK)) {
_dl_dprintf(2, "%s: can't resolve symbol '%s'\n", _dl_progname, symname);
_dl_exit(1);
- };
+ }
}
#if defined (__SUPPORT_LD_DEBUG__)
Modified: branches/uClibc-nptl/ldso/ldso/powerpc/elfinterp.c
===================================================================
--- branches/uClibc-nptl/ldso/ldso/powerpc/elfinterp.c 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/ldso/ldso/powerpc/elfinterp.c 2006-08-18 03:29:53 UTC (rev 15819)
@@ -125,14 +125,14 @@
if (unlikely(ELF32_R_TYPE(this_reloc->r_info) != R_PPC_JMP_SLOT)) {
_dl_dprintf(2, "%s: Incorrect relocation type in jump relocation\n", _dl_progname);
_dl_exit(1);
- };
+ }
#endif
/* Address of dump instruction to fix up */
reloc_addr = (Elf32_Addr *) (tpnt->loadaddr + this_reloc->r_offset);
#if defined (__SUPPORT_LD_DEBUG__)
- if(_dl_debug_reloc && _dl_debug_detail)
+ if (_dl_debug_reloc && _dl_debug_detail)
_dl_dprintf(_dl_debug_file, "\n\tResolving symbol %s %x --> ", symname, (Elf32_Addr)reloc_addr);
#endif
@@ -142,10 +142,10 @@
if (unlikely(!finaladdr)) {
_dl_dprintf(2, "%s: can't resolve symbol '%s' in lib '%s'.\n", _dl_progname, symname, tpnt->libname);
_dl_exit(1);
- };
+ }
finaladdr += this_reloc->r_addend;
#if defined (__SUPPORT_LD_DEBUG__)
- if(_dl_debug_reloc && _dl_debug_detail)
+ if (_dl_debug_reloc && _dl_debug_detail)
_dl_dprintf(_dl_debug_file, "%x\n", finaladdr);
#endif
delta = finaladdr - (Elf32_Word)reloc_addr;
@@ -246,7 +246,7 @@
}
case R_PPC_COPY:
#if defined (__SUPPORT_LD_DEBUG__)
- if(_dl_debug_move)
+ if (_dl_debug_move)
_dl_dprintf(_dl_debug_file,"\n%s move %x bytes from %x to %x",
symname, symtab[symtab_index].st_size,
symbol_addr, reloc_addr);
@@ -264,7 +264,7 @@
#if 0
{
Elf32_Sword delta = finaladdr - (Elf32_Word)reloc_addr;
- if(unlikely(delta<<6>>6 != delta)) {
+ if (unlikely(delta<<6>>6 != delta)) {
_dl_dprintf(2, "%s: symbol '%s' R_PPC_REL24 is out of range.\n\t"
"Compile shared libraries with -fPIC!\n",
_dl_progname, symname);
@@ -287,7 +287,7 @@
if (symtab_index)
_dl_dprintf(2, "'%s'\n", symname);
return -1;
- };
+ }
/* instructions were modified */
PPC_DCBST(reloc_addr);
@@ -296,7 +296,7 @@
PPC_ISYNC;
out_nocode:
#if defined (__SUPPORT_LD_DEBUG__)
- if(_dl_debug_reloc && _dl_debug_detail)
+ if (_dl_debug_reloc && _dl_debug_detail)
_dl_dprintf(_dl_debug_file, "\tpatched: %x ==> %x @ %x", old_val, *reloc_addr, reloc_addr);
#endif
return 0;
Modified: branches/uClibc-nptl/ldso/ldso/sh/elfinterp.c
===================================================================
--- branches/uClibc-nptl/ldso/ldso/sh/elfinterp.c 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/ldso/ldso/sh/elfinterp.c 2006-08-18 03:29:53 UTC (rev 15819)
@@ -87,7 +87,7 @@
if ((unsigned long) got_addr < 0x20000000) {
if (_dl_debug_bindings) {
_dl_dprintf(_dl_debug_file, "\nresolve function: %s", symname);
- if(_dl_debug_detail) _dl_dprintf(_dl_debug_file,
+ if (_dl_debug_detail) _dl_dprintf(_dl_debug_file,
"\n\tpatched %x ==> %x @ %x\n", *got_addr, new_addr, got_addr);
}
}
@@ -198,7 +198,7 @@
case R_SH_COPY:
if (symbol_addr) {
#if defined (__SUPPORT_LD_DEBUG__)
- if(_dl_debug_move)
+ if (_dl_debug_move)
_dl_dprintf(_dl_debug_file,"\n%s move %x bytes from %x to %x",
symname, symtab[symtab_index].st_size,
symbol_addr, reloc_addr);
@@ -222,7 +222,7 @@
return -1; /*call _dl_exit(1) */
}
#if defined (__SUPPORT_LD_DEBUG__)
- if(_dl_debug_reloc && _dl_debug_detail)
+ if (_dl_debug_reloc && _dl_debug_detail)
_dl_dprintf(_dl_debug_file, "\tpatched: %x ==> %x @ %x", old_val, *reloc_addr, reloc_addr);
#endif
@@ -259,7 +259,7 @@
return -1; /*call _dl_exit(1) */
}
#if defined (__SUPPORT_LD_DEBUG__)
- if(_dl_debug_reloc && _dl_debug_detail)
+ if (_dl_debug_reloc && _dl_debug_detail)
_dl_dprintf(_dl_debug_file, "\tpatched: %x ==> %x @ %x", old_val, *reloc_addr, reloc_addr);
#endif
return 0;
Modified: branches/uClibc-nptl/ldso/ldso/x86_64/elfinterp.c
===================================================================
--- branches/uClibc-nptl/ldso/ldso/x86_64/elfinterp.c 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/ldso/ldso/x86_64/elfinterp.c 2006-08-18 03:29:53 UTC (rev 15819)
@@ -190,7 +190,7 @@
if (unlikely(!symbol_addr && ELF_ST_BIND(sym->st_info) != STB_WEAK)) {
_dl_dprintf(2, "%s: can't resolve symbol '%s'\n", _dl_progname, symname);
_dl_exit(1);
- };
+ }
}
#if defined (__SUPPORT_LD_DEBUG__)
Modified: branches/uClibc-nptl/libc/string/arm/bcopy.S
===================================================================
--- branches/uClibc-nptl/libc/string/arm/bcopy.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/arm/bcopy.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -41,6 +41,8 @@
#include <features.h>
+#ifdef __UCLIBC_SUSV3_LEGACY__
+
.text
.global bcopy
.type bcopy,%function
@@ -54,3 +56,5 @@
b _memcpy /* (PLT) */
.size bcopy,.-bcopy
+
+#endif
Modified: branches/uClibc-nptl/libc/string/arm/bzero.S
===================================================================
--- branches/uClibc-nptl/libc/string/arm/bzero.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/arm/bzero.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -39,6 +39,8 @@
#include <features.h>
+#ifdef __UCLIBC_SUSV3_LEGACY__
+
.text
.global bzero
.type bzero,%function
@@ -50,3 +52,5 @@
b HIDDEN_JUMPTARGET(memset)
.size bzero,.-bzero
+
+#endif
Modified: branches/uClibc-nptl/libc/string/arm/memcmp.S
===================================================================
--- branches/uClibc-nptl/libc/string/arm/memcmp.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/arm/memcmp.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -63,4 +63,6 @@
.size memcmp,.-memcmp
libc_hidden_def(memcmp)
+#ifdef __UCLIBC_SUSV3_LEGACY__
strong_alias(memcmp,bcmp)
+#endif
Modified: branches/uClibc-nptl/libc/string/arm/strncmp.S
===================================================================
--- branches/uClibc-nptl/libc/string/arm/strncmp.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/arm/strncmp.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -65,4 +65,4 @@
.size strncmp,.-strncmp
-libc_hidden_def(strncmp)
+libc_hidden_weak(strncmp)
Modified: branches/uClibc-nptl/libc/string/bfin/memchr.S
===================================================================
--- branches/uClibc-nptl/libc/string/bfin/memchr.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/bfin/memchr.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -37,8 +37,8 @@
R3 = B[P0++](Z);
CC = R3 == R1;
IF CC JUMP found;
+byte_loop_e:
NOP;
-byte_loop_e:
failed:
R0=0;
Modified: branches/uClibc-nptl/libc/string/i386/strchr.c
===================================================================
--- branches/uClibc-nptl/libc/string/i386/strchr.c 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/i386/strchr.c 2006-08-18 03:29:53 UTC (rev 15819)
@@ -51,4 +51,6 @@
return __res;
}
libc_hidden_def(strchr)
+#ifdef __UCLIBC_SUSV3_LEGACY__
strong_alias(strchr,index)
+#endif
Modified: branches/uClibc-nptl/libc/string/i386/strncmp.c
===================================================================
--- branches/uClibc-nptl/libc/string/i386/strncmp.c 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/i386/strncmp.c 2006-08-18 03:29:53 UTC (rev 15819)
@@ -55,4 +55,4 @@
:"1" (cs),"2" (ct),"3" (count));
return __res;
}
-libc_hidden_def(strncmp)
+libc_hidden_weak(strncmp)
Modified: branches/uClibc-nptl/libc/string/i386/strnlen.c
===================================================================
--- branches/uClibc-nptl/libc/string/i386/strnlen.c 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/i386/strnlen.c 2006-08-18 03:29:53 UTC (rev 15819)
@@ -32,6 +32,7 @@
#include <string.h>
+#ifdef __USE_GNU
libc_hidden_proto(strnlen)
size_t strnlen(const char *s, size_t count)
{
@@ -52,3 +53,4 @@
return __res;
}
libc_hidden_def(strnlen)
+#endif
Modified: branches/uClibc-nptl/libc/string/i386/strrchr.c
===================================================================
--- branches/uClibc-nptl/libc/string/i386/strrchr.c 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/i386/strrchr.c 2006-08-18 03:29:53 UTC (rev 15819)
@@ -49,4 +49,6 @@
return __res;
}
libc_hidden_def(strrchr)
+#ifdef __UCLIBC_SUSV3_LEGACY__
strong_alias(strrchr,rindex)
+#endif
Modified: branches/uClibc-nptl/libc/string/ia64/bcopy.S
===================================================================
--- branches/uClibc-nptl/libc/string/ia64/bcopy.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/ia64/bcopy.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -1,5 +1,7 @@
#include "sysdep.h"
+#ifdef __UCLIBC_SUSV3_LEGACY__
+
ENTRY(bcopy)
.regstk 3, 0, 0, 0
mov r8 = in0
@@ -8,3 +10,5 @@
mov in1 = r8
br.cond.sptk.many HIDDEN_JUMPTARGET(memmove)
END(bcopy)
+
+#endif
Modified: branches/uClibc-nptl/libc/string/ia64/bzero.S
===================================================================
--- branches/uClibc-nptl/libc/string/ia64/bzero.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/ia64/bzero.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -33,6 +33,9 @@
to get peak speed. */
#include "sysdep.h"
+
+#ifdef __UCLIBC_SUSV3_LEGACY__
+
#undef ret
#define dest in0
@@ -313,3 +316,5 @@
br.ret.sptk.many rp
;; }
END(bzero)
+
+#endif
Modified: branches/uClibc-nptl/libc/string/ia64/memcmp.S
===================================================================
--- branches/uClibc-nptl/libc/string/ia64/memcmp.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/ia64/memcmp.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -160,6 +160,7 @@
mov ar.lc = saved_lc // restore the loop counter
br.ret.sptk.many b0
END(memcmp)
-
-weak_alias (memcmp, bcmp)
libc_hidden_def (memcmp)
+#ifdef __UCLIBC_SUSV3_LEGACY__
+strong_alias (memcmp, bcmp)
+#endif
Modified: branches/uClibc-nptl/libc/string/ia64/strchr.S
===================================================================
--- branches/uClibc-nptl/libc/string/ia64/strchr.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/ia64/strchr.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -107,6 +107,7 @@
ld8 val2 = [ret0], 8 // bomb out here
br.cond.sptk .back
END(strchr)
-
-weak_alias (strchr, index)
libc_hidden_def (strchr)
+#ifdef __UCLIBC_SUSV3_LEGACY__
+strong_alias (strchr, index)
+#endif
Modified: branches/uClibc-nptl/libc/string/ia64/strncmp.S
===================================================================
--- branches/uClibc-nptl/libc/string/ia64/strncmp.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/ia64/strncmp.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -59,4 +59,4 @@
.restore_and_exit:
br.ret.sptk.many b0
END(strncmp)
-libc_hidden_def (strncmp)
+libc_hidden_weak (strncmp)
Modified: branches/uClibc-nptl/libc/string/sparc/sparc32/memcpy.S
===================================================================
--- branches/uClibc-nptl/libc/string/sparc/sparc32/memcpy.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/sparc/sparc32/memcpy.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -21,6 +21,8 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <features.h>
+
/* Both these macros have to start with exactly the same insn */
#define MOVE_BIGCHUNK(src, dst, offset, t0, t1, t2, t3, t4, t5, t6, t7) \
ldd [%src + offset + 0x00], %t0; \
@@ -161,11 +163,13 @@
b 3f
sub %o0, 2, %o0
+#ifdef __UCLIBC_SUSV3_LEGACY__
ENTRY(bcopy)
mov %o0, %o3
mov %o1, %o0
mov %o3, %o1
END(bcopy)
+#endif
ENTRY(memmove)
cmp %o0, %o1
Modified: branches/uClibc-nptl/libc/string/sparc/sparc32/memset.S
===================================================================
--- branches/uClibc-nptl/libc/string/sparc/sparc32/memset.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/sparc/sparc32/memset.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -20,6 +20,8 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <features.h>
+
/* Store 64 bytes at (BASE + OFFSET) using value SOURCE. */
#define ZERO_BIG_BLOCK(base, offset, source) \
std source, [base + offset + 0x00]; \
@@ -43,9 +45,11 @@
.text
.align 4
+#ifdef __UCLIBC_SUSV3_LEGACY__
ENTRY(bzero)
b 1f
mov %g0, %g3
+#endif
3: cmp %o2, 3
be 2f
@@ -60,7 +64,9 @@
add %o1, %o2, %o1
b 4f
sub %o0, %o2, %o0
+#ifdef __UCLIBC_SUSV3_LEGACY__
END(bzero)
+#endif
ENTRY(memset)
and %o1, 0xff, %g3
Modified: branches/uClibc-nptl/libc/string/sparc/sparc32/strchr.S
===================================================================
--- branches/uClibc-nptl/libc/string/sparc/sparc32/strchr.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/sparc/sparc32/strchr.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -35,6 +35,8 @@
in these days for an average user.
*/
+#include <features.h>
+
.text
.align 4
10: ldub [%o0], %g4
@@ -217,7 +219,9 @@
ld [%o0], %g4
END(strchr)
libc_hidden_def(strchr)
+#ifdef __UCLIBC_SUSV3_LEGACY__
strong_alias(strchr,index)
+#endif
ENTRY(strrchr)
andcc %o1, 0xff, %o1
@@ -278,4 +282,6 @@
mov %o5, %o0
END(strrchr)
libc_hidden_def(strrchr)
+#ifdef __UCLIBC_SUSV3_LEGACY__
strong_alias(strrchr,rindex)
+#endif
Modified: branches/uClibc-nptl/libc/string/sparc/sparc64/memcpy.S
===================================================================
--- branches/uClibc-nptl/libc/string/sparc/sparc64/memcpy.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/sparc/sparc64/memcpy.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -20,6 +20,7 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <features.h>
#include <asm/asi.h>
#ifndef XCC
#define USE_BPR
@@ -191,6 +192,7 @@
.text
.align 32
+#ifdef __UCLIBC_SUSV3_LEGACY__
ENTRY(bcopy)
sub %o1, %o0, %o4 /* IEU0 Group */
mov %o0, %g3 /* IEU1 */
@@ -206,6 +208,7 @@
retl
nop
END(bcopy)
+#endif
.align 32
200: be,pt %xcc, 201f /* CTI */
Modified: branches/uClibc-nptl/libc/string/sparc/sparc64/memset.S
===================================================================
--- branches/uClibc-nptl/libc/string/sparc/sparc64/memset.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/sparc/sparc64/memset.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -20,6 +20,7 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <features.h>
#include <asm/asi.h>
#ifndef XCC
#define XCC xcc
@@ -191,11 +192,13 @@
.text
.align 32
+#ifdef __UCLIBC_SUSV3_LEGACY__
ENTRY(bzero)
#ifndef USE_BPR
srl %o1, 0, %o1
#endif
mov %o0, %o5
+#endif
50: cmp %o1, 7
bleu,pn %xcc, 17f
andcc %o0, 3, %o2
@@ -309,4 +312,6 @@
stb %g0, [%o0 - 1]
0: retl
mov %o5, %o0
+#ifdef __UCLIBC_SUSV3_LEGACY__
END(bzero)
+#endif
Modified: branches/uClibc-nptl/libc/string/sparc/sparc64/sparcv9b/memcpy.S
===================================================================
--- branches/uClibc-nptl/libc/string/sparc/sparc64/sparcv9b/memcpy.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/sparc/sparc64/sparcv9b/memcpy.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -19,6 +19,8 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <features.h>
+
#define ASI_BLK_P 0xf0
#define FPRS_FEF 0x04
#define VISEntryHalf rd %fprs, %o5; wr %g0, FPRS_FEF, %fprs
@@ -36,6 +38,7 @@
.text
.align 32
+#ifdef __UCLIBC_SUSV3_LEGACY__
ENTRY(bcopy)
sub %o1, %o0, %o4
mov %o0, %g4
@@ -51,6 +54,7 @@
retl
nop
END(bcopy)
+#endif
/* Special/non-trivial issues of this code:
*
Modified: branches/uClibc-nptl/libc/string/sparc/sparc64/strchr.S
===================================================================
--- branches/uClibc-nptl/libc/string/sparc/sparc64/strchr.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/sparc/sparc64/strchr.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -20,6 +20,7 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <features.h>
#include <asm/asi.h>
#ifndef XCC
#define XCC xcc
@@ -329,7 +330,9 @@
add %o0, -1, %o0 /* IEU0 */
END(strchr)
libc_hidden_def(strchr)
+#ifdef __UCLIBC_SUSV3_LEGACY__
strong_alias(strchr,index)
+#endif
.align 32
ENTRY(strrchr)
@@ -478,4 +481,6 @@
ldx [%o0], %o3 /* Load */
END(strrchr)
libc_hidden_def(strrchr)
+#ifdef __UCLIBC_SUSV3_LEGACY__
strong_alias(strrchr,rindex)
+#endif
Modified: branches/uClibc-nptl/libc/string/x86_64/bzero.S
===================================================================
--- branches/uClibc-nptl/libc/string/x86_64/bzero.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/x86_64/bzero.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -1,2 +1,5 @@
-#define memset bzero
-#include "memset.S"
+#include <features.h>
+#ifdef __UCLIBC_SUSV3_LEGACY__
+# define memset bzero
+# include "memset.S"
+#endif
Modified: branches/uClibc-nptl/libc/string/x86_64/strchr.S
===================================================================
--- branches/uClibc-nptl/libc/string/x86_64/strchr.S 2006-08-18 03:27:08 UTC (rev 15818)
+++ branches/uClibc-nptl/libc/string/x86_64/strchr.S 2006-08-18 03:29:53 UTC (rev 15819)
@@ -285,4 +285,6 @@
END (BP_SYM (strchr))
libc_hidden_def(strchr)
+#ifdef __UCLIBC_SUSV3_LEGACY__
strong_alias (BP_SYM (strchr), BP_SYM (index))
+#endif
More information about the uClibc-cvs
mailing list