* commands/i386/pc/drivemap_int13h.S: Eliminate unconditional
jump. This saves two bytes, so the typical case of 2 swapped
drives would fit 32 bytes.
+2009-05-14 Pavel Roskin <proski@gnu.org>
+
+ * commands/i386/pc/drivemap_int13h.S: Eliminate unconditional
+ jump. This saves two bytes, so the typical case of 2 swapped
+ drives would fit 32 bytes.
+
2009-05-13 Pavel Roskin <proski@gnu.org>
* loader/i386/multiboot.c (grub_multiboot): Cast mmap_addr to
movw %cs:(%bx), %ax
cmpb %ah, %al
jz not_found /* DRV=DST => map end - drive not remapped, keep DL. */
- cmpb %dl, %al
- jz found /* Found - drive remapped, modify DL. */
inc %bx
inc %bx
- jmp more_remaining /* Not found, but more remaining, loop. */
-
-found:
- movb %ah, %dl
+ cmpb %dl, %al
+ jnz more_remaining /* Not found, but more remaining, loop. */
+ movb %ah, %dl /* Found - drive remapped, modify DL. */
not_found:
pop %bx