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

Subversion Repositories or1k

[/] [or1k/] [trunk/] [newlib/] [newlib/] [libc/] [machine/] [mn10300/] [strchr.S] - Rev 56

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

        .file "strchr.S"

        .section .text
        .global _strchr
        .type    _strchr,@function
_strchr:
        movm [d2,d3,a2,a3],(sp)
        add -12,sp
        mov d0,a1
        movbu d1,(7,sp)
#ifndef __OPTIMIZE_SIZE__
        btst 3,d0
        bne .L20
        clr d0
.L24:
        setlb
        mov sp,a2
        mov d0,d3
        add d3,a2
        mov a2,a0
        add 12,a0
        movbu (7,sp),d3
        movbu d3,(-4,a0)
        inc d0
        cmp 3,d0
        lls
        mov a1,a0
        mov -16843009,a1
        mov (a0),d2
        mov a1,d1
        add d2,d1
        mov d2,d0
        not d0
        and d0,d1
        mov -2139062144,d3
        mov d3,(0,sp)
        btst -2139062144,d1
        bne .L27
        jmp .L38
.L28:
        inc4 a0
        mov (a0),d2
        mov a1,d1
        add d2,d1
        mov d2,d0
        not d0
        and d0,d1
        mov (0,sp),d3
        and d3,d1
        bne .L27
.L38:
        mov (8,sp),d0
        xor d2,d0
        mov a1,d1
        add d0,d1
        not d0
        and d0,d1
        and d3,d1
        beq .L28
.L27:
        mov a0,a1
#endif
.L20:
        movbu (a1),d0
        cmp 0,d0
        beq .L32
        movbu (7,sp),d1
.L35:
        setlb
        cmp d1,d0
        beq .L36
        inc a1
        movbu (a1),d0
        cmp 0,d0
        lne
.L32:
        movbu (7,sp),d0
        movbu (a1),d3
        cmp d0,d3
        beq .L36
        mov 0,a0
        jmp .L37
.L36:
        mov a1,a0
.L37:
        ret [d2,d3,a2,a3],28
.Lfe1:
        .size    _strchr,.Lfe1-_strchr

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.