testsuite: effective_target_march_option: support checking for -march=*
authorHans-Peter Nilsson <hp@axis.com>
Sun, 19 Jan 2020 19:38:06 +0000 (20:38 +0100)
committerHans-Peter Nilsson <hp@axis.com>
Sun, 19 Jan 2020 19:38:06 +0000 (20:38 +0100)
* lib/target-supports.exp (effective_target_march_option): New.

I see no (other) way to, depending on the absence of an option,
add an option for a specific target.

For gcc.dg/torture/pr26515.c and cris-elf, you get an error for
supplying multiple (different) -march=... options (where that
error is desirable), like testing cris-elf with
RUNTESTFLAGS=--target_board=cris-sim/arch=v8, where otherwise
-march=v10 and -march=v8 will both be given, and the test would
fail.

For historians, this was accidentally misordered and committed after
the (first) patch using march_option.  Oops.

gcc/testsuite/ChangeLog
gcc/testsuite/lib/target-supports.exp

index 21d31a5c6b0762d6ad5ffabb204d70c05b5bd615..c5d3ce956ed3f3592e5ba00b2081ac00d77ddad1 100644 (file)
@@ -4,6 +4,7 @@
        -march=v10 option on target ! march_option.
        * gcc.target/cris/asm-v10.S, gcc.target/cris/inasm-v10.c,
        gcc.target/cris/sync-1-v10.c: Similar.
+       * lib/target-supports.exp (effective_target_march_option): New.
 
 2020-01-19  Thomas König  <tkoenig@gcc.gnu.org>
 
index 79166986c77b38b1ec99508a146ffd27d9725248..cdee31e24132b591625168ab588e61a3943919b0 100644 (file)
@@ -2477,6 +2477,10 @@ proc check_effective_target_ti_c64xp { } {
     }]
 }
 
+# Check if a -march=... option is given, as part of (earlier) options.
+proc check_effective_target_march_option { } {
+    return [check-flags [list "" { *-*-* } { "-march=*" } { "" } ]]
+}
 
 proc check_alpha_max_hw_available { } {
     return [check_runtime alpha_max_hw_available {