aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEygene Ryabinkin <rea-fbsd@codelabs.ru>2008-08-31 22:05:50 +0400
committerMichael Brown <mcb30@etherboot.org>2008-09-04 11:27:20 +0100
commit99251f5b326487ef1cd15fb448b20d1c3b534db8 (patch)
treefeaff02fabb4d379ad9577b8b360b069d9a3b19a
parente8b22f203ffe4ae11b654f758270790a2e5e11f1 (diff)
downloadipxe-99251f5b326487ef1cd15fb448b20d1c3b534db8.tar.gz
[libprefix] Add addr32 prefix required by older assemblers
Explicitly state that we are using 32-bit addressing in 16-bit code. GNU as 2.15 (FreeBSD/amd64 7-STABLE) got confused that 32-bit registers are used in the code that was declared as 16-bit. Add explicit modifier 'addr32' to make assembler happy. Signed-off-by: Eygene Ryabinkin <rea-fbsd@codelabs.ru>
-rw-r--r--src/arch/i386/prefix/libprefix.S2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/arch/i386/prefix/libprefix.S b/src/arch/i386/prefix/libprefix.S
index cb0911120..ae2a491f9 100644
--- a/src/arch/i386/prefix/libprefix.S
+++ b/src/arch/i386/prefix/libprefix.S
@@ -294,7 +294,7 @@ pm_call:
movw %ss, %ax
shll $4, %eax
movzwl %bp, %edi
- leal PM_CALL_VAR(gdt)(%eax, %edi), %eax
+ addr32 leal PM_CALL_VAR(gdt)(%eax, %edi), %eax
movl %eax, PM_CALL_VAR(gdt_base)(%bp)
movw %cs, %ax
movw $PM_CALL_VAR(pm_cs), %di