diff options
Diffstat (limited to 'libkern/strchr-68000.s')
| -rw-r--r-- | libkern/strchr-68000.s | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/libkern/strchr-68000.s b/libkern/strchr-68000.s new file mode 100644 index 00000000..a5d4be2c --- /dev/null +++ b/libkern/strchr-68000.s @@ -0,0 +1,27 @@ + TEXT strchr(SB), $0 + + MOVL s+0(FP), A0 + MOVB c+7(FP), R2 + BEQ null + +l: + MOVB (A0)+, R1 + BEQ out + CMPB R1, R2 + BNE l + + MOVL A0, R0 + ADDL $-1, R0 + RTS + +out: + CLRL R0 + RTS + +null: + TSTB (A0)+ + BNE null + + MOVL A0, R0 + ADDL $-1, R0 + RTS |
