Newer
Older
ubixos-kernel / lib / strlen.S
@reddawg reddawg on 13 Feb 2009 571 bytes UbixOS Kernel Sources
.globl strlen
strlen:
        pushl   %edi
        movl    8(%esp),%edi            /* string address */
        cld                             /* set search forward */
        xorl    %eax,%eax               /* set search for null terminator */
        movl    $-1,%ecx                /* set search for lots of characters */
        repne                           /* search! */
        scasb
        notl    %ecx                    /* get length by taking complement */
        leal    -1(%ecx),%eax           /* and subtracting one */
        popl    %edi
        ret