This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


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.
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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]