1#ifdef LIBC_SCCS 2 .asciz "@(#)strncmp.s 1.1 (Berkeley/CCI) 08/01/86" 3#endif LIBC_SCCS 4 5/* 6 * Compare strings (at most n bytes): s1>s2: >0 s1==s2: 0 s1<s2: <0 7 * 8 * strncmp(s1, s2, n) 9 * register char *s1, *s2; 10 * register n; 11 */ 12#include "DEFS.h" 13 14ENTRY(strncmp, 0) 15 movl 12(fp),r2 16 tstl r2 /* number of bytes to compare */ 17 jgtr n_ok 18 clrl r0 19 ret /* for n <= 0 , s1 == s2 */ 20n_ok: 21 movl 4(fp),r0 22 movl 8(fp),r1 23 cmps3 24 jgtr greater 25 jlss less 26equal: clrl r0 27 ret 28less: movl $-1,r0 29 ret 30greater: movl $1,r0 31 ret 32