diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ed8cdfc83c7e6b94d6862ed792750a6e5141194b..2f883fcb50d8453b8ee706d58414f7fc07993241 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,24 @@ 2010-03-31 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk> + PR testsuite/35165 + * obj-c++.dg/try-catch-9.mm: Don't XFAIL m32 NeXT runtime. + * obj-c++.dg/try-catch-2.mm: Ditto. + * obj-c++.dg/lookup-2.mm: Ditto. + * obj-c++.dg/encode-8.m: Ditto. + * obj-c++.dg/cxx-ivars-2.mm: Ditto. + * obj-c++.dg/cxx-ivars-3.mm: Skip for GNU, XFail for m64 NeXT. + * obj-c++.dg/const-str-10.mm: Skip for GNU, match .quad for m64 NeXT. + * obj-c++.dg/const-str-11.mm: Ditto. + * obj-c++.dg/const-str-9.mm: Ditto. + * obj-c++.dg/bitfield-3.mm: Skip for GNU runtime. + * obj-c++.dg/bitfield-2.mm: XFAIL run for m64 NeXT runtime. + * obj-c++.dg/except-1.mm: Ditto. + * obj-c++.dg/const-str-7.mm: Ditto. + * obj-c++.dg/cxx-ivars-1.mm: Ditto. + * obj-c++.dg/const-str-3.mm: Ditto. + * obj-c++.dg/const-str-7.mm: Ditto. + * obj-c++.dg/stubify-2.mm: Change dump file name. + PR objc++/23613 * gcc/testsuite/objc-obj-c++-shared/next-mapping.h (CLASSPTRFIELD): New macro. diff --git a/gcc/testsuite/obj-c++.dg/bitfield-2.mm b/gcc/testsuite/obj-c++.dg/bitfield-2.mm index 1bddf540a67d24d55d8efa99ac57a3a66e885bad..f384f24dd5ac15605842e2a7a4343a90e64cd4ab 100644 --- a/gcc/testsuite/obj-c++.dg/bitfield-2.mm +++ b/gcc/testsuite/obj-c++.dg/bitfield-2.mm @@ -2,6 +2,7 @@ being "promoted" to ints). */ /* Contributed by Ziemowit Laski <zlaski@apple.com>. */ /* { dg-do run } */ +/* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } */ #include "../objc-obj-c++-shared/Object1.h" #include <stdlib.h> diff --git a/gcc/testsuite/obj-c++.dg/bitfield-3.mm b/gcc/testsuite/obj-c++.dg/bitfield-3.mm index 32f2d726ddac905953e5a0a1a1ad667e81e6a246..d81976ab6244f8df927fb1497991fdc9f9d7515e 100644 --- a/gcc/testsuite/obj-c++.dg/bitfield-3.mm +++ b/gcc/testsuite/obj-c++.dg/bitfield-3.mm @@ -1,8 +1,9 @@ /* Check if bitfield ivars are correctly @encode'd when the NeXT runtime is used. */ /* Contributed by Ziemowit Laski <zlaski@apple.com>. */ -/* { dg-options "-fsigned-char" } */ /* { dg-do run { target *-*-darwin* } } */ +/* { dg-skip-if "" { *-*-* } { "-fgnu-runtime" } { "" } } */ +/* { dg-options "-fsigned-char" } */ typedef struct objc_object { struct objc_class *class_pointer; } *id; diff --git a/gcc/testsuite/obj-c++.dg/const-str-10.mm b/gcc/testsuite/obj-c++.dg/const-str-10.mm index 8605bdb33413ab4b6f7ff06b3e2c756764a030e9..693b6be6e846c96fbee62cc04897d4abf9ef2c88 100644 --- a/gcc/testsuite/obj-c++.dg/const-str-10.mm +++ b/gcc/testsuite/obj-c++.dg/const-str-10.mm @@ -2,7 +2,7 @@ constant string classes get derived. */ /* Contributed by Ziemowit Laski <zlaski@apple.com> */ -/* { dg-do compile { target *-*-darwin* } } */ +/* { dg-do compile } */ /* { dg-skip-if "" { *-*-* } { "-fgnu-runtime" } { "" } } */ #include "../objc-obj-c++-shared/Object1.h" @@ -29,4 +29,5 @@ extern struct objc_class _NSConstantStringClassReference; const NSConstantString *appKey = @"MyApp"; /* { dg-final { scan-assembler ".section __OBJC, __cstring_object" } } */ -/* { dg-final { scan-assembler ".long\t__NSConstantStringClassReference\n\t.long\t.*\n\t.long\t5\n\t.data" } } */ +/* { dg-final { scan-assembler ".long\t__NSConstantStringClassReference\n\t.long\t.*\n\t.long\t5\n\t.data" { target { *-*-darwin* && { ! lp64 } } } } } */ +/* { dg-final { scan-assembler ".quad\t__NSConstantStringClassReference\n\t.quad\t.*\n\t.long\t5\n\t.space 4\n\t.data" { target { *-*-darwin* && { lp64 } } } } } */ diff --git a/gcc/testsuite/obj-c++.dg/const-str-11.mm b/gcc/testsuite/obj-c++.dg/const-str-11.mm index 22c1f04cf1f960b3cd62a009b19022e107221a44..ea9371091b8cf195541203fe80d19475936a359e 100644 --- a/gcc/testsuite/obj-c++.dg/const-str-11.mm +++ b/gcc/testsuite/obj-c++.dg/const-str-11.mm @@ -2,7 +2,7 @@ constant string classes get derived. */ /* Contributed by Ziemowit Laski <zlaski@apple.com> */ -/* { dg-do compile { target *-*-darwin* } } */ +/* { dg-do compile } */ /* { dg-skip-if "" { *-*-* } { "-fgnu-runtime" } { "" } } */ /* { dg-options "-fconstant-string-class=XStr" } */ @@ -29,4 +29,5 @@ extern Class _XStrClassReference; const XStr *appKey = @"MyApp"; /* { dg-final { scan-assembler ".section __OBJC, __cstring_object" } } */ -/* { dg-final { scan-assembler ".long\t__XStrClassReference\n\t.long\t.*\n\t.long\t5\n\t.data" } } */ +/* { dg-final { scan-assembler ".long\t__XStrClassReference\n\t.long\t.*\n\t.long\t5\n\t.data" { target { *-*-darwin* && { ! lp64 } } } } } */ +/* { dg-final { scan-assembler ".quad\t__XStrClassReference\n\t.quad\t.*\n\t.long\t5\n\t.space 4\n\t.data" { target { *-*-darwin* && { lp64 } } } } } */ diff --git a/gcc/testsuite/obj-c++.dg/const-str-3.mm b/gcc/testsuite/obj-c++.dg/const-str-3.mm index 3e7939adeb176f21a7ebfcf05822668fff9efbf7..5ea8e229fbef84b0b04ba82a8e94fc0cef3d3482 100644 --- a/gcc/testsuite/obj-c++.dg/const-str-3.mm +++ b/gcc/testsuite/obj-c++.dg/const-str-3.mm @@ -4,6 +4,7 @@ /* { dg-options "-fconstant-string-class=Foo" } */ /* { dg-do run { target *-*-darwin* } } */ +/* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } */ #import "../objc-obj-c++-shared/Object1.h" #import "../objc-obj-c++-shared/next-mapping.h" diff --git a/gcc/testsuite/obj-c++.dg/const-str-7.mm b/gcc/testsuite/obj-c++.dg/const-str-7.mm index fe66b2cc2c82c72464166931731d07b1d62fcf4e..755b0452be20a3cefe2678f67191825c91ccef04 100644 --- a/gcc/testsuite/obj-c++.dg/const-str-7.mm +++ b/gcc/testsuite/obj-c++.dg/const-str-7.mm @@ -4,6 +4,7 @@ /* { dg-options "-fconstant-string-class=Foo" } */ /* { dg-do run } */ +/* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } */ #include "../objc-obj-c++-shared/Object1.h" #include "../objc-obj-c++-shared/next-mapping.h" diff --git a/gcc/testsuite/obj-c++.dg/const-str-9.mm b/gcc/testsuite/obj-c++.dg/const-str-9.mm index 28621334a6145a2b2d6340f0dc7e432cf29600be..bca916a1609c1edcc2ac39c2928f6334e2110fd3 100644 --- a/gcc/testsuite/obj-c++.dg/const-str-9.mm +++ b/gcc/testsuite/obj-c++.dg/const-str-9.mm @@ -21,4 +21,5 @@ extern struct objc_class _NSConstantStringClassReference; const NSConstantString *appKey = @"MyApp"; /* { dg-final { scan-assembler ".section __OBJC, __cstring_object" } } */ -/* { dg-final { scan-assembler ".long\t__NSConstantStringClassReference\n\t.long\t.*\n\t.long\t5\n\t.data" } } */ +/* { dg-final { scan-assembler ".long\t__NSConstantStringClassReference\n\t.long\t.*\n\t.long\t5\n\t.data" { target { *-*-darwin* && { ! lp64 } } }} } */ +/* { dg-final { scan-assembler ".quad\t__NSConstantStringClassReference\n\t.quad\t.*\n\t.long\t5\n\t.space 4\n\t.data" { target { *-*-darwin* && { lp64 } } } } } */ diff --git a/gcc/testsuite/obj-c++.dg/cxx-ivars-1.mm b/gcc/testsuite/obj-c++.dg/cxx-ivars-1.mm index d89258aa6b75aef7eda4ccf4f2d5afd1e750fbdb..6e0c3fded4b0349e3114a242321843cee57583d5 100644 --- a/gcc/testsuite/obj-c++.dg/cxx-ivars-1.mm +++ b/gcc/testsuite/obj-c++.dg/cxx-ivars-1.mm @@ -1,7 +1,7 @@ // Check if ivars may be accessed via the C++ dot notation. - // { dg-do run } // { dg-options "-fno-objc-call-cxx-cdtors" } +// { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } #include "../objc-obj-c++-shared/Object1.h" #include <stdlib.h> diff --git a/gcc/testsuite/obj-c++.dg/cxx-ivars-2.mm b/gcc/testsuite/obj-c++.dg/cxx-ivars-2.mm index e07437187a4e5f65c01d5ef76b27dcded870a03f..a85f4e5b00cf6132cef9becd2222f563d695e9f3 100644 --- a/gcc/testsuite/obj-c++.dg/cxx-ivars-2.mm +++ b/gcc/testsuite/obj-c++.dg/cxx-ivars-2.mm @@ -1,7 +1,8 @@ // Check if the '- .cxx_construct' and '-.cxx_destruct' methods get called // and if they perform their desired function. -// { dg-do run { xfail { "*-*-*" } } } PR27247/PR23681 +// { dg-xfail-run-if "PR27247/PR23681" { *-*-* } { "-fgnu-runtime" } { "" } } +// { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } // { dg-options "-fobjc-call-cxx-cdtors" } #include "../objc-obj-c++-shared/Object1.h" diff --git a/gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm b/gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm index 898ce6aed903cdcf8703ac428a0c2f164a828aeb..a3c4b0c492a8cbcf35cdf0ea6d36376862782e69 100644 --- a/gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm +++ b/gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm @@ -1,9 +1,10 @@ // Check if ObjC classes with non-POD C++ ivars are specially marked in the metadata. // { dg-do run { target *-*-darwin* } } -// { dg-options "-fobjc-call-cxx-cdtors" } // { dg-skip-if "" { *-*-* } { "-fgnu-runtime" } { "" } } -/* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } */ +// { dg-options "-fobjc-call-cxx-cdtors" } +// { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } + #include "../objc-obj-c++-shared/Object1.h" #include "../objc-obj-c++-shared/next-mapping.h" diff --git a/gcc/testsuite/obj-c++.dg/encode-8.mm b/gcc/testsuite/obj-c++.dg/encode-8.mm index de800d08d9480db0b743694e3f02bbe97d2050d2..2d5734ebee18350fe67506615d12d1764bfea38a 100644 --- a/gcc/testsuite/obj-c++.dg/encode-8.mm +++ b/gcc/testsuite/obj-c++.dg/encode-8.mm @@ -2,7 +2,8 @@ 'BOOL *' (which should be encoded as '^c') and 'char *' (which should be encoded as '*'). */ /* Contributed by Ziemowit Laski <zlaski@apple.com>. */ -/* { dg-do run { xfail { "*-*-*" } } } PR27249 */ +/* { dg-xfail-run-if "PR27249" { *-*-* } { "-fgnu-runtime" } { "" } } */ +/* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } */ #include <string.h> #include <stdlib.h> diff --git a/gcc/testsuite/obj-c++.dg/except-1.mm b/gcc/testsuite/obj-c++.dg/except-1.mm index ccd5bad5f2b43b0191287c6d2c6208e093b5c533..b835dc73ee0bd494833358bc66a93f56d29d6af8 100644 --- a/gcc/testsuite/obj-c++.dg/except-1.mm +++ b/gcc/testsuite/obj-c++.dg/except-1.mm @@ -1,4 +1,5 @@ /* { dg-do run } */ +/* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } */ /* This tests that exceptions work. It used to fail because objc_msgSend was marked with DECL_NOTHROW. diff --git a/gcc/testsuite/obj-c++.dg/lookup-2.mm b/gcc/testsuite/obj-c++.dg/lookup-2.mm index 5dffb017d4d2d872b346a3769b23efa70ca78c7b..4d56cf25c14cc4bcd68af753161ffb90f7005108 100644 --- a/gcc/testsuite/obj-c++.dg/lookup-2.mm +++ b/gcc/testsuite/obj-c++.dg/lookup-2.mm @@ -1,5 +1,5 @@ /* { dg-do run } */ -/* { dg-xfail-if "PR23614" { "*-*-*" } { "*" } { "" } } */ +/* { dg-xfail-if "PR23614" { "*-*-*" } { "*" } { "-fnext-runtime" } } */ /* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } */ #include "../objc-obj-c++-shared/Object1.h" #include <stdlib.h> diff --git a/gcc/testsuite/obj-c++.dg/stubify-2.mm b/gcc/testsuite/obj-c++.dg/stubify-2.mm index a928d3fb7ab9cdce5d4dee7f896c009a1b9a55c5..9db573e8afae8489e77cb4ed3c01fff45dc9a62a 100644 --- a/gcc/testsuite/obj-c++.dg/stubify-2.mm +++ b/gcc/testsuite/obj-c++.dg/stubify-2.mm @@ -28,4 +28,4 @@ extern int bogonic (int, int, int) ; /* Any symbol_ref of an un-stubified objc_msgSend is an error; look for "objc_msgSend" in quotes, without the $stub suffix. */ -/* { dg-final { scan-file-not stubify-2.mm.08.jump "symbol_ref.*\"objc_msgSend\"" } } */ +/* { dg-final { scan-file-not stubify-2.mm.147r.jump "symbol_ref.*\"objc_msgSend\"" } } */ diff --git a/gcc/testsuite/obj-c++.dg/try-catch-2.mm b/gcc/testsuite/obj-c++.dg/try-catch-2.mm index f39c22c878f785da9da0e27b10460b63e57dc96d..d85284b9aaed3519b13c04706ae0df2a834a6cfb 100644 --- a/gcc/testsuite/obj-c++.dg/try-catch-2.mm +++ b/gcc/testsuite/obj-c++.dg/try-catch-2.mm @@ -3,7 +3,8 @@ /* Developed by Ziemowit Laski <zlaski@apple.com>. */ /* { dg-do run } */ -/* { dg-xfail-if "PR23616" { "*-*-*" } { "*" } { "" } } */ +/* { dg-xfail-if "PR23616" { "*-*-*" } { "*" } { "-fnext-runtime" } } */ +/* { dg-xfail-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } /* { dg-options "-fobjc-exceptions" } */ #include "../objc-obj-c++-shared/Object1.h" diff --git a/gcc/testsuite/obj-c++.dg/try-catch-9.mm b/gcc/testsuite/obj-c++.dg/try-catch-9.mm index 306c467a30f5ef568def98db884d9dcb44b1ebd2..21b7dd5476abed85beaabc83e4d25de58d858d54 100644 --- a/gcc/testsuite/obj-c++.dg/try-catch-9.mm +++ b/gcc/testsuite/obj-c++.dg/try-catch-9.mm @@ -3,7 +3,8 @@ /* Developed by Ziemowit Laski <zlaski@apple.com>. */ /* { dg-do run } */ -/* { dg-xfail-if "PR23616" { *-*-* } { "*" } { "" } } */ +/* { dg-xfail-if "PR23616" { *-*-* } { "*" } { "-fnext-runtime" } } */ +/* { dg-xfail-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } /* { dg-prune-output ".*internal compiler error.*" } */ /* { dg-options "-fobjc-exceptions -O2" } */