From 1e57a46299244793beb27e74be171d1540606999 Mon Sep 17 00:00:00 2001 From: oliviermartin Date: Fri, 25 Jan 2013 11:28:06 +0000 Subject: ARM Packages: Fixed line endings This large code change only modifies the line endings to be CRLF to be compliant with the EDK2 coding convention document. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14088 6f19259b-4bc3-4df7-8a09-765794883524 --- ArmPkg/Library/BaseMemoryLibStm/Arm/CopyMem.asm | 122 ++++++++++++------------ 1 file changed, 61 insertions(+), 61 deletions(-) (limited to 'ArmPkg/Library/BaseMemoryLibStm') diff --git a/ArmPkg/Library/BaseMemoryLibStm/Arm/CopyMem.asm b/ArmPkg/Library/BaseMemoryLibStm/Arm/CopyMem.asm index ca8d06a550..d0faa00d1e 100755 --- a/ArmPkg/Library/BaseMemoryLibStm/Arm/CopyMem.asm +++ b/ArmPkg/Library/BaseMemoryLibStm/Arm/CopyMem.asm @@ -38,16 +38,16 @@ InternalMemCopyMem ( ) **/ EXPORT InternalMemCopyMem - - AREA AsmMemStuff, CODE, READONLY + + AREA AsmMemStuff, CODE, READONLY InternalMemCopyMem - stmfd sp!, {r4-r11, lr} - // Save the input parameters in extra registers (r11 = destination, r14 = source, r12 = length) - mov r11, r0 - mov r10, r0 - mov r12, r2 - mov r14, r1 + stmfd sp!, {r4-r11, lr} + // Save the input parameters in extra registers (r11 = destination, r14 = source, r12 = length) + mov r11, r0 + mov r10, r0 + mov r12, r2 + mov r14, r1 memcopy_check_overlapped cmp r11, r1 @@ -70,42 +70,42 @@ memcopy_check_overlapped memcopy_check_optim_default // Check if we can use an optimized path ((length >= 32) && destination word-aligned && source word-aligned) for the memcopy (optimized path if r0 == 1) tst r0, #0xF - movne r0, #0 - bne memcopy_default - tst r1, #0xF - movne r3, #0 - moveq r3, #1 - cmp r2, #31 - movls r0, #0 - andhi r0, r3, #1 - b memcopy_default - -memcopy_check_optim_overlap - // r10 = dest_end, r14 = source_end - add r10, r11, r12 - add r14, r12, r1 - - // Are we in the optimized case ((length >= 32) && dest_end word-aligned && source_end word-aligned) - cmp r2, #31 - movls r0, #0 - movhi r0, #1 - tst r10, #0xF - movne r0, #0 - tst r14, #0xF - movne r0, #0 + movne r0, #0 + bne memcopy_default + tst r1, #0xF + movne r3, #0 + moveq r3, #1 + cmp r2, #31 + movls r0, #0 + andhi r0, r3, #1 + b memcopy_default + +memcopy_check_optim_overlap + // r10 = dest_end, r14 = source_end + add r10, r11, r12 + add r14, r12, r1 + + // Are we in the optimized case ((length >= 32) && dest_end word-aligned && source_end word-aligned) + cmp r2, #31 + movls r0, #0 + movhi r0, #1 + tst r10, #0xF + movne r0, #0 + tst r14, #0xF + movne r0, #0 b memcopy_overlapped - + memcopy_overlapped_non_optim // We read 1 byte from the end of the source buffer - sub r3, r14, #1 - sub r12, r12, #1 - ldrb r3, [r3, #0] - sub r2, r10, #1 - cmp r12, #0 + sub r3, r14, #1 + sub r12, r12, #1 + ldrb r3, [r3, #0] + sub r2, r10, #1 + cmp r12, #0 // We write 1 byte at the end of the dest buffer - sub r10, r10, #1 - sub r14, r14, #1 - strb r3, [r2, #0] + sub r10, r10, #1 + sub r14, r14, #1 + strb r3, [r2, #0] bne memcopy_overlapped_non_optim b memcopy_end @@ -114,16 +114,16 @@ memcopy_overlapped // Are we in the optimized case ? cmp r0, #0 beq memcopy_overlapped_non_optim - + // Optimized Overlapped - Read 32 bytes sub r14, r14, #32 sub r12, r12, #32 cmp r12, #31 ldmia r14, {r2-r9} - + // If length is less than 32 then disable optim movls r0, #0 - + cmp r12, #0 // Optimized Overlapped - Write 32 bytes @@ -136,37 +136,37 @@ memcopy_overlapped memcopy_default_non_optim // Byte copy - ldrb r3, [r14], #1 - sub r12, r12, #1 - strb r3, [r10], #1 - + ldrb r3, [r14], #1 + sub r12, r12, #1 + strb r3, [r10], #1 + memcopy_default - cmp r12, #0 - beq memcopy_end - + cmp r12, #0 + beq memcopy_end + // r10 = dest, r14 = source memcopy_default_loop - cmp r0, #0 + cmp r0, #0 beq memcopy_default_non_optim - + // Optimized memcopy - Read 32 Bytes - sub r12, r12, #32 - cmp r12, #31 - ldmia r14!, {r2-r9} + sub r12, r12, #32 + cmp r12, #31 + ldmia r14!, {r2-r9} // If length is less than 32 then disable optim - movls r0, #0 + movls r0, #0 - cmp r12, #0 + cmp r12, #0 // Optimized memcopy - Write 32 Bytes - stmia r10!, {r2-r9} - + stmia r10!, {r2-r9} + // while (length != 0) bne memcopy_default_loop - + memcopy_end - mov r0, r11 + mov r0, r11 ldmfd sp!, {r4-r11, pc} END -- cgit v1.2.3