swsusp.S: meaningfull assembly labels

From: Pavel Machek
Date: Fri Jun 25 2004 - 07:02:49 EST


Hi!

This introduces meaningfull labels instead of .L1234, meaning code is
readable, kills alignment where unneccessary, and kills TLB flush that
was only pure paranoia (and slows it down a lot on emulated
systems). Please apply,

Pavel

--- linux-cvs//arch/i386/power/swsusp.S 2004-05-25 17:41:18.000000000 +0200
+++ linux/arch/i386/power/swsusp.S 2004-06-24 14:39:01.000000000 +0200
@@ -18,7 +18,7 @@
ENTRY(do_magic)
pushl %ebx
cmpl $0,8(%esp)
- jne .L1450
+ jne resume
call do_magic_suspend_1
call save_processor_state

@@ -33,21 +33,21 @@
pushfl ; popl saved_context_eflags

call do_magic_suspend_2
- jmp .L1449
- .p2align 4,,7
-.L1450:
+ popl %ebx
+ ret
+
+resume:
movl $swsusp_pg_dir-__PAGE_OFFSET,%ecx
movl %ecx,%cr3

call do_magic_resume_1
movl $0,loop
cmpl $0,nr_copy_pages
- je .L1453
- .p2align 4,,7
-.L1455:
+ je copy_done
+copy_loop:
movl $0,loop2
.p2align 4,,7
-.L1459:
+copy_one_page:
movl pagedir_nosave,%ecx
movl loop,%eax
movl loop2,%edx
@@ -56,23 +56,21 @@
movl (%ecx,%eax),%eax
movb (%edx,%eax),%al
movb %al,(%edx,%ebx)
- movl %cr3, %eax;
- movl %eax, %cr3; # flush TLB

movl loop2,%eax
leal 1(%eax),%edx
movl %edx,loop2
movl %edx,%eax
cmpl $4095,%eax
- jbe .L1459
+ jbe copy_one_page
movl loop,%eax
leal 1(%eax),%edx
movl %edx,loop
movl %edx,%eax
cmpl nr_copy_pages,%eax
- jb .L1455
- .p2align 4,,7
-.L1453:
+ jb copy_loop
+
+copy_done:
movl $__USER_DS,%eax

movw %ax, %ds
@@ -88,7 +86,6 @@
call restore_processor_state
pushl saved_context_eflags ; popfl
call do_magic_resume_2
-.L1449:
popl %ebx
ret


--
People were complaining that M$ turns users into beta-testers...
...jr ghea gurz vagb qrirybcref, naq gurl frrz gb yvxr vg gung jnl!
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/