From 7f6d84c46ff9d4fd4d43f935204b1da96c9a67e4 Mon Sep 17 00:00:00 2001 From: okuji Date: Wed, 30 Aug 2000 19:06:30 +0000 Subject: [PATCH] add a workaround for binutils-2.9.1.0.x into stage1.S. --- ChangeLog | 8 ++++++++ stage1/stage1.S | 7 +++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index b453a9083..db1479e8a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2000-08-31 OKUJI Yoshinori + + * 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 + . + 2000-08-30 OKUJI Yoshinori * configure.in (CPPFLAGS): Remove -Wundef by default. Add the diff --git a/stage1/stage1.S b/stage1/stage1.S index b64097ead..fa739d33f 100644 --- a/stage1/stage1.S +++ b/stage1/stage1.S @@ -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