memcmp.s

来自「基于EP7312的MP3播放器源代码,包括MCU和PC端代码.」· S 代码 · 共 60 行

S
60
字号
//****************************************************************************//// MEMCMP.S - Routine to implement the C library function "memcmp".//// Copyright (c) 1999,2000,2001 Cirrus Logic, Inc.////****************************************************************************#include "../../asmdefs.h"//****************************************************************************//// Read-only code area.////****************************************************************************    _TEXT_//****************************************************************************//// Standard C library function "memcmp".////****************************************************************************    _EXPORT_ memcmpmemcmp _LABEL_    stmdb   r13!, {r3-r4, r14}    cmp     r2, _CONST_ 4    blt     CheckBytes    tst     r0, _CONST_ 3    bne     CheckBytes    tst     r1, _CONST_ 3    bne     CheckBytesCheckWords _LABEL_    ldr     r3, [r0], _CONST_ 4    ldr     r4, [r1], _CONST_ 4    cmp     r3, r4    bne     DoneWords    sub     r2, r2, _CONST_ 4    cmp     r2, _CONST_ 4    bge     CheckWordsDoneWords _LABEL_    cmp     r3, r4    subne   r0, r0, _CONST_ 4    subne   r1, r1, _CONST_ 4CheckBytes _LABEL_    cmp     r2, _CONST_ 0    moveq   r0, _CONST_ 0    ldmeqia r13!, {r3-r4, pc}CheckByte _LABEL_    ldrb    r3, [r0], _CONST_ 1    ldrb    r4, [r1], _CONST_ 1    cmp     r3, r4    bne     DoneBytes    subs    r2, r2, _CONST_ 1    bne     CheckByteDoneBytes _LABEL_    sub     r0, r3, r4    ldmia   r13!, {r3-r4, pc}    _END_

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?