diff options
| -rw-r--r-- | gcc/testsuite/ChangeLog | 3 | ||||
| -rw-r--r-- | gcc/testsuite/lib/target-supports-dg.exp | 7 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 4627652..6751872 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,8 @@ 2011-06-27 Janis Johnson <janisjo@codesourcery.com> + * lib/target-supports-dg.exp (dg-require-effective-target): Return + early if the test is already being skipped. + * lib/scanasm.exp (dg-scan, scan-assembler-times, scan-assembler-dem, scan-assembler-dem-not): For missing file, report unresolved with same message as for pass/fail, with reason reported in log file. diff --git a/gcc/testsuite/lib/target-supports-dg.exp b/gcc/testsuite/lib/target-supports-dg.exp index 0e0252d..68e250b 100644 --- a/gcc/testsuite/lib/target-supports-dg.exp +++ b/gcc/testsuite/lib/target-supports-dg.exp @@ -172,6 +172,12 @@ proc dg-require-effective-target { args } { if { [llength $args] < 1 || [llength $args] > 2 } { error "syntax error, need a single effective-target keyword with optional selector" } + + # Don't bother if we're already skipping the test. + upvar dg-do-what dg-do-what + if { [lindex ${dg-do-what} 1] == "N" } { + return + } # Evaluate selector if present. if { [llength $args] == 2 } { @@ -182,7 +188,6 @@ proc dg-require-effective-target { args } { } if { ![is-effective-target [lindex $args 0]] } { - upvar dg-do-what dg-do-what set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"] } } |
