diff mbox

[libstdc++,testsuite,2/2] Mark tests that don't fit into memory as UNSUPPORTED

Message ID 54888B5C.1000803@arm.com
State New
Headers show

Commit Message

Kyrylo Tkachov Dec. 10, 2014, 6:05 p.m. UTC
Hi all,

Here is the second part that includes the new target-utils.exp in the 
libstdc++ testsuite and uses the check_unsupported_p procedure to mark 
tests that are too large for memory as unsupported.

Ok?

Thanks,
Kyrill

2014-12-10  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

     * testsuite/lib/libstdc++.exp: Include target-utils.exp.
     (v3_target_compile): Check if test is unsupported.
     (v3_target_compile_as_c): Likewise.
diff mbox

Patch

commit 13abe3bbb6deab3de44935dea6c5fd9d62509ae7
Author: Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Date:   Wed Dec 3 10:33:44 2014 +0000

    [libstdc++][testsuite] Check for programs not fitting into tiny memory models

diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp b/libstdc++-v3/testsuite/lib/libstdc++.exp
index 3d9913b..56649bb 100644
--- a/libstdc++-v3/testsuite/lib/libstdc++.exp
+++ b/libstdc++-v3/testsuite/lib/libstdc++.exp
@@ -57,6 +57,7 @@  load_gcc_lib target-libpath.exp
 load_gcc_lib timeout.exp
 load_gcc_lib timeout-dg.exp
 load_gcc_lib wrapper.exp
+load_gcc_lib target-utils.exp
 
 # Useful for debugging.  Pass the name of a variable and the verbosity
 # threshold (number of -v's on the command line).
@@ -455,6 +457,7 @@  proc v3_target_compile { source dest type options } {
     global cxxldflags
     global includes
     global STATIC_LIBCXXFLAGS
+    global tool
 
     if { [target_info needs_status_wrapper] != "" && [info exists gluefile] } {
         lappend options "libs=${gluefile}"
@@ -483,7 +486,14 @@  proc v3_target_compile { source dest type options } {
     lappend options "compiler=$cxx_final"
     lappend options "timeout=[timeout_value]"
 
-    return [target_compile $source $dest $type $options]
+    set comp_output [target_compile $source $dest $type $options]
+    set unsupported_message [${tool}_check_unsupported_p $comp_output]
+
+    if { $unsupported_message != "" } {
+      unsupported "$dest: $unsupported_message"
+      return ""
+    }
+    return $comp_output
 }
 
 
@@ -498,6 +508,7 @@  proc v3_target_compile_as_c { source dest type options } {
     global cc
     global cxxflags
     global STATIC_LIBCXXFLAGS
+    global tool
 
     if { [target_info needs_status_wrapper] != "" && [info exists gluefile] } {
         lappend options "libs=${gluefile}"
@@ -551,7 +562,14 @@  proc v3_target_compile_as_c { source dest type options } {
     lappend options "compiler=$cc_final"
     lappend options "timeout=[timeout_value]"
 
-    return [target_compile $source $dest $type $options]
+    set comp_output [target_compile $source $dest $type $options]
+    set unsupported_message [${tool}_check_unsupported_p $comp_output]
+
+    if { $unsupported_message != "" } {
+      unsupported "$dest: $unsupported_message"
+      return ""
+    }
+    return $comp_output
 }
 
 # Build the support objects linked in with the libstdc++ tests.  In