X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Fm32r%2Flib%2Fmemset.S;h=6e26df120acb0d3aede214cec29c161d208d2636;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=7fe94b6c6c884933b43a8f3a744fe769983dd1d3;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/arch/m32r/lib/memset.S b/arch/m32r/lib/memset.S index 7fe94b6c6..6e26df120 100644 --- a/arch/m32r/lib/memset.S +++ b/arch/m32r/lib/memset.S @@ -70,16 +70,18 @@ qword_set_loop: st r1, @+r4 bnc qword_set_loop || cmpz r2 jc r14 -word_set_wrap: +set_remainder: cmpui r2, #4 - bc byte_set + bc byte_set_wrap1 addi r2, #-4 bra word_set_loop byte_set_wrap: addi r2, #4 - addi r4, #4 || cmpz r2 + cmpz r2 jc r14 +byte_set_wrap1: + addi r4, #4 #if defined(CONFIG_ISA_M32R2) byte_set: addi r2, #-1 || stb r1, @r4+ @@ -153,18 +155,19 @@ qword_set_loop: st r1, @+r4 st r1, @+r4 bnc qword_set_loop - bnez r2, word_set_wrap + bnez r2, set_remainder jmp r14 -word_set_wrap: +set_remainder: cmpui r2, #4 - bc byte_set + bc byte_set_wrap1 addi r2, #-4 bra word_set_loop byte_set_wrap: addi r2, #4 - addi r4, #4 beqz r2, end_memset +byte_set_wrap1: + addi r4, #4 byte_set: addi r2, #-1 stb r1, @r4