1 /*
2  * Copyright (c) 1994 William F. Jolitz.
3  * 386BSD Copyright Restrictions Apply. All Other Rights Reserved.
4  *
5  * $Id: strlen.h,v 1.1 94/06/09 18:20:04 bill Exp Locker: bill $
6  * Bell V7 string length.
7  */
8 
9 __INLINE int
strlen(const char * str)10 strlen(const char *str) {
11 	int rv;
12 	const char *strcp = str;
13 	char zb = 0;	/* pattern to scan for */
14 	int len = 0;	/* length of string (all of address space) */
15 
16 	asm volatile ("cld ; repne ; scasb"
17 	    : "=D" (str)
18 	    : "0" (str), "a" (zb), "c" (len));
19 	return (str - strcp - 1);
20 }
21