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

Kyrill Tkachov kyrylo.tkachov@arm.com
Tue Dec 9 11:17:00 GMT 2014


Hi all,

There are a few libstdc++ that don't fit into memory when the 
-mcmodel=tiny option is used.
For example 25_algorithms/random_shuffle/1.cc on aarch64 is a 5.5M 
binary on aarch64 with -mcmodel=small.

In the gcc and g++ testsuite we already catch such cases and mark them 
as UNSUPPORTED. In libstdc++.exp there is no such functionality.
This patch adds that check. I've implemented the v3_check_unsupported_p 
predicate the same way as it's implemented in the gcc testsuite.
I'm not very happy that it had to be copied, but I couldn't find a way 
to include the gcc definition sanely.

With this patch 8 tests that were previously FAILing on 
aarch64-none-elf/-mcmodel=tiny due to relocation truncation errors are 
now marked as UNSUPPORTED.

A test run on x86 didn't show any bad behaviour appearing.

Is this a sane approach to what I'm trying to solve?

Thanks,
Kyrill

2014-12-03  Kyrylo Tkachov  kyrylo.tkachov@arm.com\

      * testsuite/lib/libstdc++.exp (${tool}_check_unsupported_p):
      New procedure.
      (v3_target_compile): Check if test is unsupported.
      (v3_target_compile_as_c): Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: libstdc++-mem.patch
Type: text/x-patch
Size: 2566 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20141209/c63fea0b/attachment.bin>


More information about the Libstdc++ mailing list