* lib/target.exp (default_target_compile): Prepend multilib_flags,
authorH.J. Lu <hjl.tools@gmail.com>
Thu, 26 Feb 2015 06:53:48 +0000 (17:53 +1100)
committerBen Elliston <bje@gnu.org>
Thu, 26 Feb 2015 06:53:48 +0000 (17:53 +1100)
instead of appending it.

Some GCC testcases need explicit GCC options to properly run. For
example gcc.target/i386/pr32219-1.c has -fpie specified explicitly:

/* { dg-options "-O2 -fpie" } */

But with multlib, eg:
make check-gcc RUNTESTFLAGS="--target_board='unix{-fpic}'"

-fpic is appended to the command line options, which overrides the command
line options specified by dg-options.  multlib flags should be placed at
the beginning of the command line options, not at the end.  This patch
updates default_target_compile to prepend multilib_flags, instead of
appending it.

Signed-off-by: Ben Elliston <bje@gnu.org>
ChangeLog
lib/target.exp

index 2c2cd3e..b91c825 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-02-26  H.J. Lu  <hjl.tools@gmail.com>
+
+       * lib/target.exp (default_target_compile): Prepend multilib_flags,
+       instead of appending it.
+
 2015-02-18  Ben Elliston  <bje@gnu.org>
 
        * lib/framework.exp (log_and_exit): Set tool to "testrun" if
index 71a78c7..30e4585 100644 (file)
@@ -577,7 +577,7 @@ proc default_target_compile {source destfile type options} {
     }
 
     if {[board_info $dest exists multilib_flags]} {
-       append add_flags " [board_info $dest multilib_flags]"
+       set add_flags "[board_info $dest multilib_flags] $add_flags"
     }
 
     verbose "doing compile"