154401Storek/* 2*61174Sbostic * Copyright (c) 1992, 1993 3*61174Sbostic * The Regents of the University of California. All rights reserved. 454401Storek * 554401Storek * This software was developed by the Computer Systems Engineering group 654401Storek * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and 754401Storek * contributed to Berkeley. 854401Storek * 954401Storek * %sccs.include.redist.c% 1054401Storek * 1154401Storek * from: $Header: strlen.s,v 1.1 92/06/25 12:52:47 torek Exp $ 1254401Storek */ 1354401Storek 1454401Storek#if defined(LIBC_SCCS) && !defined(lint) 15*61174Sbostic .asciz "@(#)strlen.s 8.1 (Berkeley) 06/04/93" 1654401Storek#endif /* LIBC_SCCS and not lint */ 1754401Storek 1854401Storek#include "DEFS.h" 1954401Storek 2054401StorekENTRY(strlen) 2154401Storek add %o0, 1, %o1 ! save starting point + 1 2254401Storek1: 2354401Storek ldsb [%o0], %o2 ! fetch byte 2454401Storek tst %o2 ! null? 2554401Storek bne 1b ! no, keep going 2654401Storek inc %o0 ! always increment pointer 2754401Storek retl 2854401Storek sub %o0, %o1, %o0 ! return length (ptr - (origptr+1)) 29