add a workaround for binutils-2.9.1.0.x into stage1.S.

This commit is contained in:
okuji 2000-08-30 19:06:30 +00:00
parent 454e26626c
commit 7f6d84c46f
2 changed files with 13 additions and 2 deletions

View file

@ -1,3 +1,11 @@
2000-08-31 OKUJI Yoshinori <okuji@gnu.org>
* stage1/stage1.S (MOV_MEM_TO_AL): New macro.
(real_start): Use the macro MOV_MEM_TO_AL instead of using movb
directly, because binutils-2.9.1.0.x doesn't produce a short
opcode for it automatically. Reported by Alessandro Rubini
<rubini@gnu.org>.
2000-08-30 OKUJI Yoshinori <okuji@gnu.org>
* configure.in (CPPFLAGS): Remove -Wundef by default. Add the

View file

@ -33,6 +33,9 @@
/* Print message string */
#define MSG(x) movw $ABS(x), %si; call message
/* XXX: binutils-2.9.1.0.x doesn't produce a short opcode for this. */
#define MOV_MEM_TO_AL(x) .byte 0xa0; .word x
.file "stage1.S"
.text
@ -126,7 +129,7 @@ real_start:
/*
* Check if we have a forced disk reference here
*/
movb ABS(boot_drive), %al
MOV_MEM_TO_AL(ABS(boot_drive)) /* movb ABS(boot_drive), %al */
cmpb $0xff, %al
je 1f
movb %al, %dl
@ -152,7 +155,7 @@ real_start:
jne chs_mode
/* check if AH=0x42 is supported if FORCE_LBA is zero */
movb ABS(force_lba), %al
MOV_MEM_TO_AL(ABS(force_lba)) /* movb ABS(force_lba), %al */
testb %al, %al
jnz skip_lba_bitmap_check
andw $1, %cx