]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
* configure.ac: Add -no-integrated-as on mips(el) to TARGET_CCASFLAGS
authorVladimir Serbinenko <phcoder@gmail.com>
Fri, 22 Nov 2013 11:48:32 +0000 (12:48 +0100)
committerVladimir Serbinenko <phcoder@gmail.com>
Fri, 22 Nov 2013 11:48:32 +0000 (12:48 +0100)
when compiling with clang.

ChangeLog
configure.ac

index 37a4cec039240a0b2cea80c7f9c6d5980db50dfa..8b21400fe3661f7e0cf6a843faa08d0bc79c30b4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
+
+       * configure.ac: Add -no-integrated-as on mips(el) to TARGET_CCASFLAGS
+       when compiling with clang.
+
 2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
 
        clang emits calls to abort () under some unknown conditions.
index 9f8fb8a35b18472ff93caa13b7287401c38e201e..1df1e7ef43ad7e5b44dd958731512519923ea0a8 100644 (file)
@@ -486,7 +486,11 @@ AC_CACHE_CHECK([if compiling with clang], [grub_cv_cc_target_clang]
 
 # on x86 clang doesn't support .code16
 # on arm clang doesn't support .arch directive
-if test "x$grub_cv_cc_target_clang" = xyes && ( test "x$target_cpu" = xi386 || test "x$target_cpu" = xx86_64 || test "x$target_cpu" = xarm ); then
+# on mips clang doesn't support privilegied instructions, doubleword store/load
+# and crashes with hand-written assembly
+if test "x$grub_cv_cc_target_clang" = xyes && ( test "x$target_cpu" = xi386 \
+   || test "x$target_cpu" = xx86_64 || test "x$target_cpu" = xarm \
+   || test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ); then
    TARGET_CCASFLAGS="$TARGET_CCASFLAGS -no-integrated-as"
 fi