summaryrefslogtreecommitdiff
path: root/newlib/libc/machine/sh/strcmp.S
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-01-03 17:39:24 -0700
committerPikalaxALT <pikalaxalt@gmail.com>2018-01-03 17:39:24 -0700
commita6c1ed4716cf02626ea035beb6dd4a921642ba80 (patch)
treeef582c1b52819e27bdd16097ec03b69799d04ede /newlib/libc/machine/sh/strcmp.S
parentf6c9a624fa8a6878a7fb2b02f55e4990a20feb59 (diff)
Use libc from agbcc instead of standalone newlib\nYou must have AGBCC commit 80d029caec189587f8b9294b6c8a5a489b8f5f88 in order to compile pmd_red.gbalibc
Diffstat (limited to 'newlib/libc/machine/sh/strcmp.S')
-rw-r--r--newlib/libc/machine/sh/strcmp.S66
1 files changed, 0 insertions, 66 deletions
diff --git a/newlib/libc/machine/sh/strcmp.S b/newlib/libc/machine/sh/strcmp.S
deleted file mode 100644
index a112b13..0000000
--- a/newlib/libc/machine/sh/strcmp.S
+++ /dev/null
@@ -1,66 +0,0 @@
-! Entry: r4: destination
-! r5: source
-! Exit: r0: result
-! r1-r2,r4-r5: clobbered
-
-#include "asm.h"
-
-ENTRY(strcmp)
- mov r4,r0
- or r5,r0
- tst #3,r0
- bf L_setup_char_loop
- mov #0,r0
-#ifdef DELAYED_BRANCHES
- mov.l @r4+,r1
- .align 2
-Longword_loop:
- mov.l @r5+,r2
- cmp/str r0,r1
- bt Longword_loop_end
- cmp/eq r1,r2
- bt.s Longword_loop
- mov.l @r4+,r1
- add #-4, r4
-Longword_loop_end:
- add #-4, r4
- add #-4, r5
-L_setup_char_loop:
- mov.b @r4+,r0
- .align 2
-L_char_loop:
- mov.b @r5+,r1
- tst r0,r0
- bt L_return
- cmp/eq r0,r1
- bt.s L_char_loop
- mov.b @r4+,r0
- add #-2,r4
- mov.b @r4,r0
-#else /* ! DELAYED_BRANCHES */
- .align 2
-Longword_loop:
- mov.l @r4+,r1
- mov.l @r5+,r2
- cmp/str r0,r1
- bt Longword_loop_end
- cmp/eq r1,r2
- bt Longword_loop
-Longword_loop_end:
- add #-4, r4
- add #-4, r5
- .align 2
-L_setup_char_loop:
-L_char_loop:
- mov.b @r4+,r0
- mov.b @r5+,r1
- tst r0,r0
- bt L_return
- cmp/eq r0,r1
- bt L_char_loop
-#endif
-L_return:
- extu.b r0,r0
- extu.b r1,r1
- rts
- sub r1,r0