OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [newlib-1.10.0/] [newlib/] [libc/] [machine/] [i386/] [memchr.S] - Rev 1773

Go to most recent revision | Compare with Previous | Blame | View Log

/*
 * ====================================================
 * Copyright (C) 1998 by Cygnus Solutions. All rights reserved.
 *
 * Permission to use, copy, modify, and distribute this
 * software is freely granted, provided that this notice
 * is preserved.
 * ====================================================
 */

        #include "i386mach.h"
        
        .global SYM (memchr)
       SOTYPE_FUNCTION(memchr)

SYM (memchr):
        pushl   ebp
        movl    esp,ebp
        pushl   edi
        movl    12(ebp),eax
        movl    16(ebp),ecx
        movl    8(ebp),edi

        xorl    edx,edx
        testl   ecx,ecx
        jz      L1

        cld
        repnz
        scasb

        setnz   dl
        decl    edi
        decl    edx
        andl    edi,edx
L1:
        movl    edx,eax

        leal    -4(ebp),esp
        popl    edi
        leave
        ret

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.