aboutsummaryrefslogtreecommitdiff
path: root/arch/cris/arch-v32/lib/strcmp.S
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2009-06-23 10:47:01 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2009-06-23 10:47:01 -0700
commita800faec1b21d7133b5f0c8c6dac593b7c4e118d (patch)
treee190372af6ee0a2a64e9ae70690b18b48d66be00 /arch/cris/arch-v32/lib/strcmp.S
parentc488eef8154b36cce905624577183dc1fa8f6da0 (diff)
parent7b994836f09fc3ce7d073ad6f8259a1a84003e02 (diff)
Merge branch 'for-linus' of git://www.jni.nu/cris
* 'for-linus' of git://www.jni.nu/cris: CRISv10: remove redundant tests on unsigned CRISv32: irq.c - Move end brace outside #endif CRISv32: Fix potential null reference in cryptocop driver. CRISv32: Add arch optimized strcmp. CRIS: assignment/is equal confusion
Diffstat (limited to 'arch/cris/arch-v32/lib/strcmp.S')
-rw-r--r--arch/cris/arch-v32/lib/strcmp.S21
1 files changed, 21 insertions, 0 deletions
diff --git a/arch/cris/arch-v32/lib/strcmp.S b/arch/cris/arch-v32/lib/strcmp.S
new file mode 100644
index 00000000000..8f7a1ee6259
--- /dev/null
+++ b/arch/cris/arch-v32/lib/strcmp.S
@@ -0,0 +1,21 @@
+; strcmp.S -- CRISv32 version.
+; Copyright (C) 2008 AXIS Communications AB
+; Written by Edgar E. Iglesias
+;
+; This source code is licensed under the GNU General Public License,
+; Version 2. See the file COPYING for more details.
+
+ .global strcmp
+ .type strcmp,@function
+strcmp:
+1:
+ move.b [$r10+], $r12
+ seq $r13
+ sub.b [$r11+], $r12
+ or.b $r12, $r13
+ beq 1b
+ nop
+
+ ret
+ movs.b $r12, $r10
+ .size strcmp, . - strcmp