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