summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/boot/string.S
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2007-10-12 04:36:20 +0200
committerPaul Mackerras <paulus@samba.org>2007-10-12 06:13:44 +0200
commit9b4b8feb962f4b3e74768b7205f1f8f6cce87238 (patch)
tree7d7c95d9024d0d47ebb5f4299efc8d7ef00fa3ec /arch/powerpc/boot/string.S
parent[POWERPC] Implement logging of unhandled signals (diff)
downloadlinux-9b4b8feb962f4b3e74768b7205f1f8f6cce87238.tar.xz
linux-9b4b8feb962f4b3e74768b7205f1f8f6cce87238.zip
[POWERPC] Add memchr() to the bootwrapper
This adds a memchr() implementation to the bootwrapper, which will be needed when libfdt is merged in. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/boot/string.S')
-rw-r--r--arch/powerpc/boot/string.S13
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/powerpc/boot/string.S b/arch/powerpc/boot/string.S
index 2627558bcb71..643e4cb2f11d 100644
--- a/arch/powerpc/boot/string.S
+++ b/arch/powerpc/boot/string.S
@@ -219,6 +219,19 @@ backwards_memcpy:
mtctr r7
b 1b
+ .globl memchr
+memchr:
+ cmpwi 0,r5,0
+ blelr
+ mtctr r5
+ addi r3,r3,-1
+1: lbzu r0,1(r3)
+ cmpw r0,r4
+ beqlr
+ bdnz 1b
+ li r3,0
+ blr
+
.globl memcmp
memcmp:
cmpwi 0,r5,0