diff options
author | Eygene Ryabinkin <rea-fbsd@codelabs.ru> | 2008-08-31 22:05:50 +0400 |
---|---|---|
committer | Michael Brown <mcb30@etherboot.org> | 2008-09-04 11:27:20 +0100 |
commit | 99251f5b326487ef1cd15fb448b20d1c3b534db8 (patch) | |
tree | feaff02fabb4d379ad9577b8b360b069d9a3b19a | |
parent | e8b22f203ffe4ae11b654f758270790a2e5e11f1 (diff) | |
download | ipxe-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.S | 2 |
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 |