Add src and dst address checking, if they are the same address, just return and don't copy data anymore.
Signed-off-by: Rick Chen <r...@andestech.com> --- Changes in v3 - new patch: separate from [1/2] --- arch/riscv/lib/memcpy.S | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/riscv/lib/memcpy.S b/arch/riscv/lib/memcpy.S index 00672c19ad..9884077c93 100644 --- a/arch/riscv/lib/memcpy.S +++ b/arch/riscv/lib/memcpy.S @@ -9,6 +9,7 @@ /* void *memcpy(void *, const void *, size_t) */ ENTRY(__memcpy) WEAK(memcpy) + beq a0, a1, .copy_end /* Save for return value */ mv t6, a0 @@ -121,6 +122,7 @@ WEAK(memcpy) 2: mv a0, t6 +.copy_end: ret .Lmisaligned_word_copy: -- 2.17.1