Relax requirements on asm for non-BIOS i386 platforms.

These platforms don't have a hard limit on size of resulting code16
code, so we don't care if assembly is bigger than necessarry.
This commit is contained in:
Vladimir Serbinenko committed 2015-02-21 20:18:18 +01:00
1 parent 3c6043245e
commit f16b8c0405
3 files changed
+19 -12

No files matched your search

+10
View File
@@ -0,0 +1,10 @@
/* on x86 old clang doesn't support .code16
newer clang supports it but creates 6-byte jumps instead of 3-byte ones
which makes us go over boot sector size. */
.code16
jmp far
.org 4
.space 300
far:
.byte 0
+2 -8
View File
@@ -1,10 +1,4 @@
/* on x86 old clang doesn't support .code16
newer clang supports it but creates 6-byte jumps instead of 3-byte ones
which makes us go over boot sector size. */
/* on x86 old clang doesn't support .code16 */
.code16
jmp far
.org 4
.space 300
far:
.byte 0
movb %al, %bl
+7 -4
View File
@@ -562,14 +562,17 @@ AC_COMPILE_IFELSE(
AC_CACHE_CHECK([for options to compile assembly], [grub_cv_cc_target_asm_compile], [
test_program=
case "x$target_cpu" in
xmips | xmipsel)
case "x$target_cpu-$platform" in
xmips-* | xmipsel-*)
test_program=mips
;;
xi386 | xx86_64)
xi386-pc)
test_program=i386-pc
;;
xi386-* | xx86_64-*)
test_program=i386
;;
xpowerpc | xsparc64 | xarm)
xpowerpc-* | xsparc64-* | xarm-*)
test_program=$target_cpu
;;
esac