diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2015-04-09 17:15:23 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2015-04-10 00:38:17 -0400 |
commit | 799b20b0db45891845e2d820368a66af538d5664 (patch) | |
tree | 7e731c80347a28629a14df607c95307526ca42c1 /vgasrc/vgaentry.S | |
parent | 3b9b9f2446e69a081c5f10a1755b62a31980c52a (diff) | |
download | seabios-799b20b0db45891845e2d820368a66af538d5664.tar.gz |
vgabios: Add config option for assembler fixups
Add a kconfig build option (CONFIG_VGA_FIXUP_ASM) to allow users to
build the vgabios without the complex assembler fixups that work
around emulator bugs.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'vgasrc/vgaentry.S')
-rw-r--r-- | vgasrc/vgaentry.S | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/vgasrc/vgaentry.S b/vgasrc/vgaentry.S index e0ab9547..7ca550de 100644 --- a/vgasrc/vgaentry.S +++ b/vgasrc/vgaentry.S @@ -64,6 +64,7 @@ x86emu_fault: // This macro implements a call while avoiding instructions // that old versions of x86emu have problems with. .macro VGA_CALLL cfunc +#if CONFIG_VGA_FIXUP_ASM // Make sure leal instruction works. movl $0x8000, %ecx leal (%ecx, %ecx, 1), %ecx @@ -72,6 +73,9 @@ x86emu_fault: // Use callw instead of calll push %ax callw \cfunc +#else + calll \cfunc +#endif .endm // This macro is the same as ENTRY_ARG except VGA_CALLL is used. |