Cleanups/optimizations.

This commit is contained in:
Rene Gollent
2012-07-02 19:42:20 -04:00
parent dc5a16bb70
commit 29291c8c92
+4 -11
View File
@@ -278,8 +278,7 @@ FUNCTION(arch_cpu_user_strlcpy):
/* If count is now 0, skip straight to null terminating
as our loop will otherwise overflow */
cmp $0,%ecx
jne .L_user_strlcpy_copy_begin
jnz .L_user_strlcpy_copy_begin
movb $0,(%edi)
jmp .L_user_strlcpy_source_count
@@ -289,15 +288,9 @@ FUNCTION(arch_cpu_user_strlcpy):
/* move data by bytes */
movsb
cmpb $0,-1(%esi)
je .L_user_strlcpy_copy_loop_done
je .L_user_strlcpy_source_done
loop .L_user_strlcpy_copy_loop
.L_user_strlcpy_copy_loop_done:
/* check if we copied the entire source string */
cmp $0,%ecx
jne .L_user_strlcpy_source_done
.L_user_strlcpy_zero_terminate:
/* null terminate string */
movb $0,(%edi)
dec %esi
@@ -305,14 +298,14 @@ FUNCTION(arch_cpu_user_strlcpy):
/* count remaining bytes in src */
.L_user_strlcpy_source_count:
not %ecx
movb $0,%al
xor %al,%al
repnz
scasb
.L_user_strlcpy_source_done:
movl %esi,%eax
subl 20(%esp),%eax
subl $1,%eax
dec %eax
/* restore the old fault handler */
movl %ebx,(%edx)