diff options
-rw-r--r-- | ChangeLog.csl | 5 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.jason/thunk2.C | 1 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.pt/static11.C | 2 | ||||
-rw-r--r-- | gcc/testsuite/lib/target-supports.exp | 10 |
4 files changed, 16 insertions, 2 deletions
diff --git a/ChangeLog.csl b/ChangeLog.csl index 14f948e8865..2d66f10c019 100644 --- a/ChangeLog.csl +++ b/ChangeLog.csl @@ -1,5 +1,10 @@ 2006-10-07 Nathan Sidwell <nathan@codesourcery.com> + gcc/testsuite/ + * g++.old-deja/g++.jason/thunk2.C: Remove dg-bogus for m68k. + * g++.old-deja/g++.pt/static11.C: Replace xfail by target requirement. + * lib/target-supports.exp (check_effective_target_unwrapped): New. + libstdc++-v3/testsuite/ * 23_containers/set/modifiers/16728.cc (iterations): Reduce to 2000. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/thunk2.C b/gcc/testsuite/g++.old-deja/g++.jason/thunk2.C index 9aa1506ed93..18bbec8c88a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/thunk2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/thunk2.C @@ -1,7 +1,6 @@ // { dg-do run { target fpic } } // { dg-options "-fPIC" } // { dg-bogus "\[Uu\]nresolved symbol .(_GLOBAL_OFFSET_TABLE_|\[_.A-Za-z\]\[_.0-9A-Za-z\]*@(PLT|GOT|GOTOFF))|\[Bb\]ad fixup at .DATA.:" "PIC unsupported" { xfail *-*-netware* } 0 } -// { dg-bogus "relocation truncated to fit" "PIC unsuppoted" { xfail m68k-*-elf } 0 } // Test that non-variadic function calls using thunks and PIC work right. struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static11.C b/gcc/testsuite/g++.old-deja/g++.pt/static11.C index 55bb9ff06d4..22594a32e6b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static11.C @@ -2,7 +2,7 @@ // in their dejagnu baseboard description) require that the status is // final when exit is entered (or main returns), and not "overruled" by a // destructor calling _exit. It's not really worth it to handle that. -// { dg-do run { xfail mmix-knuth-mmixware xtensa-*-elf* arm*-*-elf arm*-*-eabi m68k-*-elf } } +// { dg-do run { target unwrapped } } // Bug: g++ was failing to destroy C<int>::a because it was using two // different sentry variables for construction and destruction. diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 8607df3b49e..f28a5ac49d8 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -499,6 +499,16 @@ proc check_effective_target_fpic { } { return 1 } +# Return 1 if the target does not use a status wrapper. + +proc check_effective_target_unwrapped { } { + if { [target_info needs_status_wrapper] != "" \ + && [target_info needs_status_wrapper] != "0" } { + return 0 + } + return 1 +} + # Return true if iconv is supported on the target. In particular IBM1047. proc check_iconv_available { test_what } { |