summaryrefslogtreecommitdiffstats
path: root/newlib/libc/machine/rx/strcmp.S
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2009-10-26 10:05:23 +0000
committerNick Clifton <nickc@redhat.com>2009-10-26 10:05:23 +0000
commitfd6942ab427a295ac359717e9027f5d18451faf3 (patch)
tree72f149db67c42ec819332da8eb5dcc5cd04eb534 /newlib/libc/machine/rx/strcmp.S
parentf7e0cae24b71452eaf452d3799b6c3436d7301f2 (diff)
downloadcygnal-fd6942ab427a295ac359717e9027f5d18451faf3.tar.gz
cygnal-fd6942ab427a295ac359717e9027f5d18451faf3.tar.bz2
cygnal-fd6942ab427a295ac359717e9027f5d18451faf3.zip
newlib:
* configure.host: Add support for RX architecture. * libc/include/machine/ieeefp.h: Likewise. * libc/include/machine/setjmp.h: Likewise. * libc/include/machine/configure.in: Likewise. * libc/include/machine/configure: Regenerate. * libc/machine/rx: New directory. * libc/machine/rx/*: New files to support RX architecture. libgloss: * configure.in: Add support for RX sub-directory. * configure: Regenerate. * rx: New directory. * rx/*: New files to support RX architecture.
Diffstat (limited to 'newlib/libc/machine/rx/strcmp.S')
-rw-r--r--newlib/libc/machine/rx/strcmp.S15
1 files changed, 15 insertions, 0 deletions
diff --git a/newlib/libc/machine/rx/strcmp.S b/newlib/libc/machine/rx/strcmp.S
new file mode 100644
index 000000000..397415bb4
--- /dev/null
+++ b/newlib/libc/machine/rx/strcmp.S
@@ -0,0 +1,15 @@
+ .file "strcmp.S"
+
+ .section .text
+
+ .global _strcmp
+ .type _strcmp,@function
+_strcmp:
+ mov #-1, r3 ; Strictly speaking this is incorrect, but I doubt if anyone will ever know.
+ scmpu ; Perform the string comparison
+ bnc 1f ; If Carry is not set skip over
+ scne.L r1 ; Set result based on Z flag
+ rts ;
+1: ;
+ mov #-1,r1 ; Carry not set, result should be negative
+ rts ;