public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
       [not found] <6129bc8a-18f3-3c25-22c0-f26e4358c5b3@linux.ibm.com>
@ 2019-12-04 19:16 ` Segher Boessenkool
  2019-12-04 19:57   ` Peter Bergner
  0 siblings, 1 reply; 19+ messages in thread
From: Segher Boessenkool @ 2019-12-04 19:16 UTC (permalink / raw)
  To: Peter Bergner; +Cc: GCC Patches, David Edelsohn

Hi!

[ This email was refused by the ML, too big, but I'll keep all non-
mechanical parts of the patch in this reply, for the archives. ]

On Wed, Dec 04, 2019 at 10:01:05AM -0600, Peter Bergner wrote:
> The following patch fixes the last bug in PR92661, which is an ICE while
> defining a builtin that overloads another builtin which doesn't exist
> (because it was disabled, etc.).  The fix here is to check that the builtin
> we are overloading has been defined before we allow another builtin to
> overload it.

> I have also
> included a small patch to disable running the powerpc/dfp/ tests even for
> powerpc*-linux when --disable-decimal-float is used.

What is the reason for that?

> I also renamed dfp.exp
> to powerpc-dfp.exp as we discussed offline to make it easier for us to run.

Yup.  The problem was that there were two dfp.exp for check-gcc-c for us.

> gcc/
> 	PR bootstrap/92661
> 	* config/rs6000/rs6000-c.c (struct altivec_builtin_types): Move to
> 	rs6000.h.
> 	(altivec_overloaded_builtins): Move to rs6000-call.c.
> 	* config/rs6000/rs6000.h (struct altivec_builtin_types): Moved from
> 	rs6000-c.c.
> 	* config/rs6000/rs6000-call.c (rs6000_builtin_info): Make static.
> 	(altivec_overloaded_builtins): Moved from rs6000-c.c.
> 	(rs6000_common_init_builtins): Do no define builtins that overload
> 	builtins that have been disabled.
> 
> gcc/testsuite/
> 	PR bootstrap/92661
> 	* gcc.target/powerpc/dfp/dfp.exp: Rename from this...
> 	* gcc.target/powerpc/dfp/powerpc-dfp.exp: ...to this.
> 	Use check_effective_target_dfp.

For future patches: it is much easier to review if you make the big,
mechanical move a separate (earlier) patch.

> --- gcc/config/rs6000/rs6000-call.c	(revision 278946)
> +++ gcc/config/rs6000/rs6000-call.c	(working copy)
> @@ -276,7 +276,7 @@ struct rs6000_builtin_info_type {
>    const unsigned attr;
>  };
>  
> -const struct rs6000_builtin_info_type rs6000_builtin_info[] =
> +static const struct rs6000_builtin_info_type rs6000_builtin_info[] =
>  {
>  #include "rs6000-builtin.def"
>  };

> @@ -7844,12 +13048,23 @@ rs6000_common_init_builtins (void)
>  
>        if (rs6000_overloaded_builtin_p (d->code))
>  	{
> -	  if (! (type = opaque_ftype_opaque_opaque))
> -	    type = opaque_ftype_opaque_opaque
> -	      = build_function_type_list (opaque_V4SI_type_node,
> -					  opaque_V4SI_type_node,
> -					  opaque_V4SI_type_node,
> -					  NULL_TREE);
> +	  const struct altivec_builtin_types *desc;
> +
> +	  /* Verify the builtin we are overloading has already been defined.  */
> +	  type = NULL_TREE;
> +	  for (desc = altivec_overloaded_builtins;
> +	       desc->code != RS6000_BUILTIN_NONE; desc++)
> +	    if (desc->code == d->code
> +		&& rs6000_builtin_decls[(int)desc->overloaded_code])
> +	      {
> +		if (! (type = opaque_ftype_opaque_opaque))
> +		  type = opaque_ftype_opaque_opaque
> +		    = build_function_type_list (opaque_V4SI_type_node,
> +						opaque_V4SI_type_node,
> +						opaque_V4SI_type_node,
> +						NULL_TREE);
> +		break;
> +	      }
>  	}
>        else
>  	{

> --- gcc/config/rs6000/rs6000.h	(revision 278946)
> +++ gcc/config/rs6000/rs6000.h	(working copy)
> @@ -2365,6 +2365,18 @@ enum rs6000_builtins
>  #undef RS6000_BUILTIN_P
>  #undef RS6000_BUILTIN_X
>  
> +/* Mappings for overloaded builtins.  */
> +struct altivec_builtin_types
> +{
> +  enum rs6000_builtins code;
> +  enum rs6000_builtins overloaded_code;
> +  signed char ret_type;
> +  signed char op1;
> +  signed char op2;
> +  signed char op3;
> +};
> +extern const struct altivec_builtin_types altivec_overloaded_builtins[];
> +
>  enum rs6000_builtin_type_index
>  {
>    RS6000_BTI_NOT_OPAQUE,

> --- gcc/testsuite/gcc.target/powerpc/dfp/powerpc-dfp.exp	(revision 278946)
> +++ gcc/testsuite/gcc.target/powerpc/dfp/powerpc-dfp.exp	(working copy)
> @@ -16,12 +16,9 @@
>  # along with GCC; see the file COPYING3.  If not see
>  # <http://www.gnu.org/licenses/>.
>  
> -# Exit immediately if this isn't a PowerPC target, also exit if we
> -# are on Darwin which doesn't support decimal float.
> -if { (![istarget powerpc*-*-*] && ![istarget rs6000-*-*])
> -    || [istarget "powerpc*-*-darwin*"]
> -} then {
> -  return
> +# Skip these tests for targets that don't support this extension.
> +if { ![check_effective_target_dfp] } {
> +    return;
>  }
>  
>  global DEFAULT_CFLAGS

This isn't run from powerpc.exp, so it needs to still do that first check.
And it's up to the Darwin maintainers whether they want that second part
(there are many more tests and testsuites that disable *-darwin* while
that isn't really necessary).

Why do you need/want the check_effective_target_dfp test?  If for example
this is to prevent ICEs, that is no good, that is *hiding* problems.

I suspect it is to stop the testsuite from complaining if you configure
with --disable-decimal-float.  What is different there then, compared to
targets that do actually not support decimal float?

Okay for trunk minus the changes to powerpc-dfp.exp (we can iterate on
that).  Thanks!


Segher

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-04 19:16 ` [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins Segher Boessenkool
@ 2019-12-04 19:57   ` Peter Bergner
  2019-12-04 20:47     ` Iain Sandoe
  2019-12-04 20:51     ` Segher Boessenkool
  0 siblings, 2 replies; 19+ messages in thread
From: Peter Bergner @ 2019-12-04 19:57 UTC (permalink / raw)
  To: Segher Boessenkool; +Cc: GCC Patches, David Edelsohn

On 12/4/19 1:16 PM, Segher Boessenkool wrote:
> For future patches: it is much easier to review if you make the big,
> mechanical move a separate (earlier) patch.

Will do.




>> I have also
>> included a small patch to disable running the powerpc/dfp/ tests even for
>> powerpc*-linux when --disable-decimal-float is used.
> 
> What is the reason for that?
[snip]
> This isn't run from powerpc.exp, so it needs to still do that first check.
> And it's up to the Darwin maintainers whether they want that second part
> (there are many more tests and testsuites that disable *-darwin* while
> that isn't really necessary).
> 
> Why do you need/want the check_effective_target_dfp test?  If for example
> this is to prevent ICEs, that is no good, that is *hiding* problems.
> 
> I suspect it is to stop the testsuite from complaining if you configure
> with --disable-decimal-float.  What is different there then, compared to
> targets that do actually not support decimal float?

Well, yes.  I saw those tests being run for my --disable-decimal-float
runs, which resulted in FAILs for all of those tests.  They had ICE's
on unpatched trunk and FAILed gracefully using my patch, but they all
still FAILed, since these are DFP tests and DFP is disabled.
There's no sense in running these tests when DFP is disabled, either
manually due to --disable-decimal-float or implicitly because of the
specific target.

Why isn't just testing check_effective_target_dfp enough to disable the
tests on Darwin, --disable-decimal-float, etc.?  That would seem to imply
that one of those targets we're testing against enables DFP, but somehow
we don't want to run the tests or they all still FAIL for some reason???



> Okay for trunk minus the changes to powerpc-dfp.exp (we can iterate on
> that).  Thanks!

Ok, I committed that part of the patch.  Thanks!

Peter

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-04 19:57   ` Peter Bergner
@ 2019-12-04 20:47     ` Iain Sandoe
  2019-12-04 21:40       ` Peter Bergner
  2019-12-04 22:58       ` Segher Boessenkool
  2019-12-04 20:51     ` Segher Boessenkool
  1 sibling, 2 replies; 19+ messages in thread
From: Iain Sandoe @ 2019-12-04 20:47 UTC (permalink / raw)
  To: Peter Bergner; +Cc: Segher Boessenkool, GCC Patches, David Edelsohn

Peter Bergner <bergner@linux.ibm.com> wrote:

> On 12/4/19 1:16 PM, Segher Boessenkool wrote:

>> This isn't run from powerpc.exp, so it needs to still do that first check.
>> And it's up to the Darwin maintainers whether they want that second part
>> (there are many more tests and testsuites that disable *-darwin* while
>> that isn't really necessary).

As Peter mentions below, it produces a lot of meaningless FAILs if we run
the tests on Darwin, so one way or another, I’d like to skip them  
(unless/until
we have a situation that DFP is supported on some hardware running
Darwin)...

>> Why do you need/want the check_effective_target_dfp test?  If for example
>> this is to prevent ICEs, that is no good, that is *hiding* problems.
>>
>> I suspect it is to stop the testsuite from complaining if you configure
>> with --disable-decimal-float.  What is different there then, compared to
>> targets that do actually not support decimal float?
>
> Well, yes.  I saw those tests being run for my --disable-decimal-float
> runs, which resulted in FAILs for all of those tests.  They had ICE's
> on unpatched trunk and FAILed gracefully using my patch, but they all
> still FAILed, since these are DFP tests and DFP is disabled.
> There's no sense in running these tests when DFP is disabled, either
> manually due to --disable-decimal-float or implicitly because of the
> specific target.
>
> Why isn't just testing check_effective_target_dfp enough to disable the
> tests on Darwin, --disable-decimal-float, etc.?

… It should be a better solution - I will confirm this.

>  That would seem to imply
> that one of those targets we're testing against enables DFP, but somehow
> we don't want to run the tests or they all still FAIL for some reason???

no idea about that (not something I encountered anyway).

Iain

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-04 19:57   ` Peter Bergner
  2019-12-04 20:47     ` Iain Sandoe
@ 2019-12-04 20:51     ` Segher Boessenkool
  2019-12-04 21:53       ` Peter Bergner
  1 sibling, 1 reply; 19+ messages in thread
From: Segher Boessenkool @ 2019-12-04 20:51 UTC (permalink / raw)
  To: Peter Bergner; +Cc: GCC Patches, David Edelsohn

On Wed, Dec 04, 2019 at 01:56:45PM -0600, Peter Bergner wrote:
> On 12/4/19 1:16 PM, Segher Boessenkool wrote:
> > Why do you need/want the check_effective_target_dfp test?  If for example
> > this is to prevent ICEs, that is no good, that is *hiding* problems.
> > 
> > I suspect it is to stop the testsuite from complaining if you configure
> > with --disable-decimal-float.  What is different there then, compared to
> > targets that do actually not support decimal float?
> 
> Well, yes.  I saw those tests being run for my --disable-decimal-float
> runs, which resulted in FAILs for all of those tests.  They had ICE's
> on unpatched trunk and FAILed gracefully using my patch, but they all
> still FAILed, since these are DFP tests and DFP is disabled.
> There's no sense in running these tests when DFP is disabled, either
> manually due to --disable-decimal-float or implicitly because of the
> specific target.

It would be nice to keep *some* dfp test(s) to make sure we don't ICE.
If we disabled all such tests already, like with this patch, we wouldn't
have ICEd or seen this problem.  That can be a separate test of course
(and could be outside gcc.target/powerpc/dfp/).

OTOH, if you add this check, we can lose the

/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */

from all the dtstsfi-* tests, etc.  (Well, no, need to keep the p9 part).

Making such changes to the testsuite needs testing on *all* subtargets :-(

> Why isn't just testing check_effective_target_dfp enough to disable the
> tests on Darwin, --disable-decimal-float, etc.?  That would seem to imply
> that one of those targets we're testing against enables DFP, but somehow
> we don't want to run the tests or they all still FAIL for some reason???

It should be enough.  Currently we just directly skip all tests on OSes
that do not support DFP, but that is not as nice as the effective target.


Segher

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-04 20:47     ` Iain Sandoe
@ 2019-12-04 21:40       ` Peter Bergner
  2019-12-04 22:59         ` Segher Boessenkool
  2019-12-04 22:58       ` Segher Boessenkool
  1 sibling, 1 reply; 19+ messages in thread
From: Peter Bergner @ 2019-12-04 21:40 UTC (permalink / raw)
  To: Iain Sandoe; +Cc: Segher Boessenkool, GCC Patches, David Edelsohn

On 12/4/19 2:47 PM, Iain Sandoe wrote:
> Peter Bergner <bergner@linux.ibm.com> wrote:
>>
>> Why isn't just testing check_effective_target_dfp enough to disable the
>> tests on Darwin, --disable-decimal-float, etc.?
> 
> … It should be a better solution - I will confirm this.

Thanks for checking.  The nice thing about this solution (if it works
for Darwin and the other targets) is that if you eventually add DFP
support, then these tests will just automatically start being run for
you.  Otherwise, you'll have to hunt through the DFP tests looking for
a dg-skip-if darwin test.

Peter


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-04 20:51     ` Segher Boessenkool
@ 2019-12-04 21:53       ` Peter Bergner
  2019-12-04 23:03         ` Segher Boessenkool
  0 siblings, 1 reply; 19+ messages in thread
From: Peter Bergner @ 2019-12-04 21:53 UTC (permalink / raw)
  To: Segher Boessenkool; +Cc: GCC Patches, David Edelsohn, Iain Sandoe

On 12/4/19 2:50 PM, Segher Boessenkool wrote:
> It would be nice to keep *some* dfp test(s) to make sure we don't ICE.
> If we disabled all such tests already, like with this patch, we wouldn't
> have ICEd or seen this problem.  That can be a separate test of course
> (and could be outside gcc.target/powerpc/dfp/).

Sure, I can add a test in gcc.target/powerpc/ that uses both a builtin
and an overloaded builtin to make sure we don't ICE when DFP is disabled.




> OTOH, if you add this check, we can lose the
> 
> /* { dg-require-effective-target powerpc_p9vector_ok } */
> /* { dg-skip-if "" { powerpc*-*-aix* } } */
> 
> from all the dtstsfi-* tests, etc.  (Well, no, need to keep the p9 part).

Agreed on not needing the dg-skip-if tests.  Not only on the powerpc/dfp/
tests, but we should be able to remove them from the DFP tests that are
in gcc.target/powerpc/ too.


> Making such changes to the testsuite needs testing on *all* subtargets :-(

Right.  I'll come up with a patch and hopefully Iain and David can test
on Darwin and AIX and I can test on Linux with --enable-decimal-float
and --disable-decimal-float.  That should cover the major subtargets and
if it works there, I'd expect it to work on the minor subtargets too.



>> Why isn't just testing check_effective_target_dfp enough to disable the
>> tests on Darwin, --disable-decimal-float, etc.?  That would seem to imply
>> that one of those targets we're testing against enables DFP, but somehow
>> we don't want to run the tests or they all still FAIL for some reason???
> 
> It should be enough.  Currently we just directly skip all tests on OSes
> that do not support DFP, but that is not as nice as the effective target.

Right, if using the effective target test, any target that adds DFP support
in the future will automatically get these tests runs for it, which is what
we want.


Peter


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-04 20:47     ` Iain Sandoe
  2019-12-04 21:40       ` Peter Bergner
@ 2019-12-04 22:58       ` Segher Boessenkool
  1 sibling, 0 replies; 19+ messages in thread
From: Segher Boessenkool @ 2019-12-04 22:58 UTC (permalink / raw)
  To: Iain Sandoe; +Cc: Peter Bergner, GCC Patches, David Edelsohn

On Wed, Dec 04, 2019 at 08:47:49PM +0000, Iain Sandoe wrote:
> Peter Bergner <bergner@linux.ibm.com> wrote:
> >On 12/4/19 1:16 PM, Segher Boessenkool wrote:
> >>This isn't run from powerpc.exp, so it needs to still do that first check.
> >>And it's up to the Darwin maintainers whether they want that second part
> >>(there are many more tests and testsuites that disable *-darwin* while
> >>that isn't really necessary).
> 
> As Peter mentions below, it produces a lot of meaningless FAILs if we run
> the tests on Darwin, so one way or another, I’d like to skip them  
> (unless/until
> we have a situation that DFP is supported on some hardware running
> Darwin)...

Sure.  The question is, should separate tests have a
dg-require-effective-target clause, or do we want that in dfp.exp?  Either
way the separate tests can be updated to remove other resstrictions after
this (never running on aix, for example).

> >Well, yes.  I saw those tests being run for my --disable-decimal-float
> >runs, which resulted in FAILs for all of those tests.  They had ICE's
> >on unpatched trunk and FAILed gracefully using my patch, but they all
> >still FAILed, since these are DFP tests and DFP is disabled.
> >There's no sense in running these tests when DFP is disabled, either
> >manually due to --disable-decimal-float or implicitly because of the
> >specific target.
> >
> >Why isn't just testing check_effective_target_dfp enough to disable the
> >tests on Darwin, --disable-decimal-float, etc.?
> 
> … It should be a better solution - I will confirm this.

Yes, this would be ideal.  The fewer tests we disable for specific OSes,
the better.


Segher

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-04 21:40       ` Peter Bergner
@ 2019-12-04 22:59         ` Segher Boessenkool
  0 siblings, 0 replies; 19+ messages in thread
From: Segher Boessenkool @ 2019-12-04 22:59 UTC (permalink / raw)
  To: Peter Bergner; +Cc: Iain Sandoe, GCC Patches, David Edelsohn

On Wed, Dec 04, 2019 at 03:40:25PM -0600, Peter Bergner wrote:
> On 12/4/19 2:47 PM, Iain Sandoe wrote:
> > Peter Bergner <bergner@linux.ibm.com> wrote:
> >>
> >> Why isn't just testing check_effective_target_dfp enough to disable the
> >> tests on Darwin, --disable-decimal-float, etc.?
> > 
> > … It should be a better solution - I will confirm this.
> 
> Thanks for checking.  The nice thing about this solution (if it works
> for Darwin and the other targets) is that if you eventually add DFP
> support, then these tests will just automatically start being run for
> you.  Otherwise, you'll have to hunt through the DFP tests looking for
> a dg-skip-if darwin test.

Yes, and most of those skip-if do not document *why* it is disabled,
either!


Segher

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-04 21:53       ` Peter Bergner
@ 2019-12-04 23:03         ` Segher Boessenkool
  2019-12-05  8:45           ` Iain Sandoe
  2019-12-10 18:27           ` Peter Bergner
  0 siblings, 2 replies; 19+ messages in thread
From: Segher Boessenkool @ 2019-12-04 23:03 UTC (permalink / raw)
  To: Peter Bergner; +Cc: GCC Patches, David Edelsohn, Iain Sandoe

On Wed, Dec 04, 2019 at 03:53:30PM -0600, Peter Bergner wrote:
> On 12/4/19 2:50 PM, Segher Boessenkool wrote:
> > It would be nice to keep *some* dfp test(s) to make sure we don't ICE.
> > If we disabled all such tests already, like with this patch, we wouldn't
> > have ICEd or seen this problem.  That can be a separate test of course
> > (and could be outside gcc.target/powerpc/dfp/).
> 
> Sure, I can add a test in gcc.target/powerpc/ that uses both a builtin
> and an overloaded builtin to make sure we don't ICE when DFP is disabled.

Great, thanks!

> > OTOH, if you add this check, we can lose the
> > 
> > /* { dg-require-effective-target powerpc_p9vector_ok } */
> > /* { dg-skip-if "" { powerpc*-*-aix* } } */
> > 
> > from all the dtstsfi-* tests, etc.  (Well, no, need to keep the p9 part).
> 
> Agreed on not needing the dg-skip-if tests.  Not only on the powerpc/dfp/
> tests, but we should be able to remove them from the DFP tests that are
> in gcc.target/powerpc/ too.

Yup.

> > Making such changes to the testsuite needs testing on *all* subtargets :-(
> 
> Right.  I'll come up with a patch and hopefully Iain and David can test
> on Darwin and AIX and I can test on Linux with --enable-decimal-float
> and --disable-decimal-float.  That should cover the major subtargets and
> if it works there, I'd expect it to work on the minor subtargets too.

Sure, this is just testsuite, that will work fine.  As long as there is
a plan :-)


Segher

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-04 23:03         ` Segher Boessenkool
@ 2019-12-05  8:45           ` Iain Sandoe
  2019-12-05 16:06             ` Peter Bergner
  2019-12-06 23:12             ` Segher Boessenkool
  2019-12-10 18:27           ` Peter Bergner
  1 sibling, 2 replies; 19+ messages in thread
From: Iain Sandoe @ 2019-12-05  8:45 UTC (permalink / raw)
  To: Segher Boessenkool; +Cc: Peter Bergner, GCC Patches, David Edelsohn

Segher Boessenkool <segher@kernel.crashing.org> wrote:

> On Wed, Dec 04, 2019 at 03:53:30PM -0600, Peter Bergner wrote:
>> On 12/4/19 2:50 PM, Segher Boessenkool wrote:
>>> It would be nice to keep *some* dfp test(s) to make sure we don't ICE.
>>> If we disabled all such tests already, like with this patch, we wouldn't
>>> have ICEd or seen this problem.  That can be a separate test of course
>>> (and could be outside gcc.target/powerpc/dfp/).
>> 
>> Sure, I can add a test in gcc.target/powerpc/ that uses both a builtin
>> and an overloaded builtin to make sure we don't ICE when DFP is disabled.
> 
> Great, thanks!

so that would be a/some dg-do compile test(s), then?
(presumably, gated on effective_target_dfp … see below)

>>> Making such changes to the testsuite needs testing on *all* subtargets :-(
>> 
>> Right.  I'll come up with a patch and hopefully Iain and David can test
>> on Darwin and AIX and I can test on Linux with --enable-decimal-float
>> and --disable-decimal-float.  That should cover the major subtargets and
>> if it works there, I'd expect it to work on the minor subtargets too.
> 
> Sure, this is just testsuite, that will work fine.  As long as there is
> a plan :-)

(on r278957, with the system assembler which doesn’t support DFP insns
 and gcc.target dfp.exp not yet renamed)

# Skip these tests for targets that don't support this extension.
if { ![check_effective_target_dfp] } {
    return;
}

Works on Darwin to skip the entire set  (not too much of a  surprise, since
it’s used for the GCC and G++ cases already).

---

It’s possible (even likely) that Darwin can be built with an assembler that
supports DFP instructions, even tho it has no OS support.  Usually, my policy
is that we would do compile tests then, since that excercises more code.

..but then we need to gate run tests on the availability of runtime support.

I see that the GCC and G++ testsuites have also….

# If the decimal float is supported in the compiler but not yet in the
# runtime, treat all tests as compile-only.
global dg-do-what-default
set save-dg-do-what-default ${dg-do-what-default}
if { ![check_effective_target_dfprt] } {
    verbose "dfp.exp: runtime support for decimal float does not exist" 2
    set dg-do-what-default compile
} else {
    verbose "dfp.exp: runtime support for decimal float exists, use it" 2
    set dg-do-what-default run
}
verbose "dfp.exp: dg-do-what-default is ${dg-do-what-default}” 2

Do you think there’s any merit in doing something like that here too?

(I guess a finer-grained alternative is check_effective_target_dfprt in any
 run-tests)

.. or I can just force a false return from effective_target_dfp as we
 do for other cases where assembler support does not imply system 
 support.

cheers
Iain



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-05  8:45           ` Iain Sandoe
@ 2019-12-05 16:06             ` Peter Bergner
  2019-12-06 23:12             ` Segher Boessenkool
  1 sibling, 0 replies; 19+ messages in thread
From: Peter Bergner @ 2019-12-05 16:06 UTC (permalink / raw)
  To: Iain Sandoe, Segher Boessenkool; +Cc: GCC Patches, David Edelsohn

On 12/5/19 2:44 AM, Iain Sandoe wrote:
> Segher Boessenkool <segher@kernel.crashing.org> wrote:
>> On Wed, Dec 04, 2019 at 03:53:30PM -0600, Peter Bergner wrote:
>>> Sure, I can add a test in gcc.target/powerpc/ that uses both a builtin
>>> and an overloaded builtin to make sure we don't ICE when DFP is disabled.
>>
>> Great, thanks!
> 
> so that would be a/some dg-do compile test(s), then?
> (presumably, gated on effective_target_dfp … see below)

Yes, only a dg-do compile test.  For DFP enabled targets, they shouldn't
see any errors at all and for DFP disabled targets, I'd insert some
dg-error checks gated on ![check_effective_target_dfp] looking for the
"error: decimal floating-point not supported for this target" errors.
Any ICE would flag a real test case error.


> (on r278957, with the system assembler which doesn’t support DFP insns
>  and gcc.target dfp.exp not yet renamed)
> 
> # Skip these tests for targets that don't support this extension.
> if { ![check_effective_target_dfp] } {
>     return;
> }
> 
> Works on Darwin to skip the entire set  (not too much of a  surprise, since
> it’s used for the GCC and G++ cases already).

Great, thanks for checking.


> It’s possible (even likely) that Darwin can be built with an assembler that
> supports DFP instructions, even tho it has no OS support.  Usually, my policy
> is that we would do compile tests then, since that excercises more code.

My --disable-decimal-float run also worked and I had an assembler that
supports all of the DFP insns, so I'd expect it to work for you too.
The check_effective_target_dfp tests really is checking for whether the
DFP modes exist in the compiler and that isn't gated on the assembler...
at least fully.




> ..but then we need to gate run tests on the availability of runtime support.

There exists check_effective_target_dfprt for that.



> I see that the GCC and G++ testsuites have also….
> 
> # If the decimal float is supported in the compiler but not yet in the
> # runtime, treat all tests as compile-only.
> global dg-do-what-default
> set save-dg-do-what-default ${dg-do-what-default}
> if { ![check_effective_target_dfprt] } {
>     verbose "dfp.exp: runtime support for decimal float does not exist" 2
>     set dg-do-what-default compile
> } else {
>     verbose "dfp.exp: runtime support for decimal float exists, use it" 2
>     set dg-do-what-default run
> }
> verbose "dfp.exp: dg-do-what-default is ${dg-do-what-default}” 2
> 
> Do you think there’s any merit in doing something like that here too?

Adding this to powerpc/dfp/dfp.exp won't do anything, since all of the
powerpc/dfp/ tests are dg-do compile tests.


> (I guess a finer-grained alternative is check_effective_target_dfprt in any
>  run-tests)
> 
> .. or I can just force a false return from effective_target_dfp as we
>  do for other cases where assembler support does not imply system 
>  support.

I've already verified that if decimal float is disabled, but you do
have an assembler that supports dfp insns, check_effective_target_dfp
still works correctly.


Peter

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-05  8:45           ` Iain Sandoe
  2019-12-05 16:06             ` Peter Bergner
@ 2019-12-06 23:12             ` Segher Boessenkool
  2019-12-09 20:16               ` Peter Bergner
  1 sibling, 1 reply; 19+ messages in thread
From: Segher Boessenkool @ 2019-12-06 23:12 UTC (permalink / raw)
  To: Iain Sandoe; +Cc: Peter Bergner, GCC Patches, David Edelsohn

On Thu, Dec 05, 2019 at 08:44:57AM +0000, Iain Sandoe wrote:
> .. or I can just force a false return from effective_target_dfp as we
>  do for other cases where assembler support does not imply system 
>  support.

That's what I would do, yes.


Segher

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-06 23:12             ` Segher Boessenkool
@ 2019-12-09 20:16               ` Peter Bergner
  2019-12-12  9:23                 ` Segher Boessenkool
  0 siblings, 1 reply; 19+ messages in thread
From: Peter Bergner @ 2019-12-09 20:16 UTC (permalink / raw)
  To: Segher Boessenkool, Iain Sandoe; +Cc: GCC Patches, David Edelsohn

On 12/6/19 5:12 PM, Segher Boessenkool wrote:
> On Thu, Dec 05, 2019 at 08:44:57AM +0000, Iain Sandoe wrote:
>> .. or I can just force a false return from effective_target_dfp as we
>>  do for other cases where assembler support does not imply system 
>>  support.
> 
> That's what I would do, yes.

I'm not sure that's necessary.  DFP enablement isn't triggered by
assembler support.  Just the gcc/configure fragment (ignoring manually
using --enable-decimal-float):

  case $target in
    powerpc*-*-linux* | i?86*-*-linux* | x86_64*-*-linux* | s390*-*-linux* | \
    i?86*-*-elfiamcu | i?86*-*-gnu* | x86_64*-*-gnu* | \
    i?86*-*-mingw* | x86_64*-*-mingw* | \
    i?86*-*-cygwin* | x86_64*-*-cygwin*)
      enable_decimal_float=yes
      ;;
    *)
      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: decimal float is not supported for this target, ignored" >&5
$as_echo "$as_me: WARNING: decimal float is not supported for this target, ignored" >&2;}
      enable_decimal_float=no
      ;;

So I don't think there is anything to do wrt Darwin here.

Peter


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-04 23:03         ` Segher Boessenkool
  2019-12-05  8:45           ` Iain Sandoe
@ 2019-12-10 18:27           ` Peter Bergner
  2019-12-10 19:12             ` Peter Bergner
  2019-12-18 14:19             ` Segher Boessenkool
  1 sibling, 2 replies; 19+ messages in thread
From: Peter Bergner @ 2019-12-10 18:27 UTC (permalink / raw)
  To: Segher Boessenkool; +Cc: GCC Patches, David Edelsohn, Iain Sandoe

On 12/4/19 5:03 PM, Segher Boessenkool wrote:
> On Wed, Dec 04, 2019 at 03:53:30PM -0600, Peter Bergner wrote:
>> Right.  I'll come up with a patch and hopefully Iain and David can test
>> on Darwin and AIX and I can test on Linux with --enable-decimal-float
>> and --disable-decimal-float.  That should cover the major subtargets and
>> if it works there, I'd expect it to work on the minor subtargets too.

Ok, how about the patch below?  If Iain and David could test this on Darwin
and AIX respectively, that would be great.  I'm currently testing this on
powerpc64le-linux, with and without --disable-decimal-float.

The pr92661.c test case is the DFP test case you wanted added to make sure
we do not ICE, even when DFP is disabled.  The dfp-[dt]d*.c changes are
due to me seeing them being run (and FAILing) on my --disable-decimal-float
runs.  Clearly, they shouldn't be run when DFP is disabled.

All of the powerpc/dfp/* tests had powerpc*-*-* target tests, but that is
covered by the dfp.exp target tests, so I removed them along with the
now unneeded dg-skip-if AIX tests.  If dg-do compile is the default, do
we want to just remove that whole line?

How is this looking?

Peter


	PR bootstrap/92661
	* gcc.target/powerpc/pr92661.c: New test.
	* gcc.target/powerpc/dfp-dd.c: Add dg-require-effective-target dfp_hw.
	Remove unneeded powerpc_fprs test.
	* gcc.target/powerpc/dfp-td.c: Likewise.
	* gcc.target/powerpc/dfp-dd-2.c: Add dg-require-effective-target dfp.
	* gcc.target/powerpc/dfp-td-2.c: Likewise.
	* gcc.target/powerpc/dfp-td-3.c: Likewise.
	* gcc.target/powerpc/dfp/dfp.exp: Remove rs6000-*-* and
	powerpc*-*-darwin* target tests.  Add check_effective_target_dfp test.
	* gcc.target/powerpc/dfp/dtstsfi-0.c: Remove unneeded target test.
	Remove unneeded dg-skip-if.
	* gcc.target/powerpc/dfp/dtstsfi-1.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-10.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-11.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-12.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-13.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-14.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-15.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-16.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-17.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-18.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-19.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-2.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-20.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-21.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-22.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-23.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-24.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-25.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-26.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-27.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-28.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-29.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-3.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-30.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-31.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-32.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-33.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-34.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-35.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-36.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-37.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-38.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-39.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-4.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-40.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-41.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-42.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-43.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-44.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-45.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-46.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-47.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-48.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-49.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-5.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-50.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-51.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-52.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-53.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-54.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-55.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-56.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-57.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-58.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-59.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-6.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-60.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-61.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-62.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-63.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-64.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-65.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-66.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-67.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-68.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-69.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-7.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-70.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-71.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-72.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-73.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-74.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-75.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-76.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-77.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-78.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-79.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-8.c: Likewise.
	* gcc.target/powerpc/dfp/dtstsfi-9.c: Likewise.

Index: gcc/testsuite/gcc.target/powerpc/pr92661.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/pr92661.c	(nonexistent)
+++ gcc/testsuite/gcc.target/powerpc/pr92661.c	(working copy)
@@ -0,0 +1,19 @@
+/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-options "-w -O2 -mdejagnu-cpu=power9" } */
+
+/* PR92661: The following tests should not ICE, regardless of
+   whether the target supports DFP or not.  */
+
+/* Test that a normal builtin function doesn't ICE.  */
+int
+foo (_Decimal64 src) /* { dg-error "decimal floating-point not supported for this target" "not supported" { target { ! dfp } } } */
+{
+  return __builtin_dfp_dtstsfi_lt_dd (5, src);
+}
+
+/* Test that an overloaded builtin function doesn't ICE.  */
+int
+bar (_Decimal64 src) /* { dg-error "decimal floating-point not supported for this target" "not supported" { target { ! dfp } } } */
+{
+  return __builtin_dfp_dtstsfi_lt (5, src);
+}
Index: gcc/testsuite/gcc.target/powerpc/dfp-dd.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp-dd.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp-dd.c	(working copy)
@@ -1,6 +1,7 @@
 /* Test generation of DFP instructions for POWER6.  */
 /* Origin: Janis Johnson <janis187@us.ibm.com> */
-/* { dg-do compile { target { powerpc*-*-linux* && powerpc_fprs } } } */
+/* { dg-do compile { target { powerpc*-*-linux* } } } */
+/* { dg-require-effective-target dfp_hw } */
 /* { dg-options "-std=gnu99 -mdejagnu-cpu=power6" } */
 
 /* { dg-final { scan-assembler "dadd" } } */
Index: gcc/testsuite/gcc.target/powerpc/dfp-td.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp-td.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp-td.c	(working copy)
@@ -1,6 +1,7 @@
 /* Test generation of DFP instructions for POWER6.  */
 /* Origin: Janis Johnson <janis187@us.ibm.com> */
-/* { dg-do compile { target { powerpc*-*-linux* && powerpc_fprs } } } */
+/* { dg-do compile { target { powerpc*-*-linux* } } } */
+/* { dg-require-effective-target dfp_hw } */
 /* { dg-options "-std=gnu99 -mdejagnu-cpu=power6" } */
 
 /* { dg-final { scan-assembler "daddq" } } */
Index: gcc/testsuite/gcc.target/powerpc/dfp-dd-2.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp-dd-2.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp-dd-2.c	(working copy)
@@ -1,5 +1,6 @@
 /* Test generation of DFP instructions for POWER6.  */
 /* { dg-do compile { target { powerpc*-*-linux* && powerpc_fprs } } } */
+/* { dg-require-effective-target dfp } */
 /* { dg-options "-std=gnu99 -O1 -mdejagnu-cpu=power6" } */
 
 /* { dg-final { scan-assembler-times "fneg" 1 } } */
Index: gcc/testsuite/gcc.target/powerpc/dfp-td-2.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp-td-2.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp-td-2.c	(working copy)
@@ -1,5 +1,6 @@
 /* Test generation of DFP instructions for POWER6.  */
 /* { dg-do compile { target { powerpc*-*-linux* && powerpc_fprs } } } */
+/* { dg-require-effective-target dfp } */
 /* { dg-options "-std=gnu99 -O1 -mdejagnu-cpu=power6" } */
 
 /* { dg-final { scan-assembler-times "fneg" 1 } } */
Index: gcc/testsuite/gcc.target/powerpc/dfp-td-3.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp-td-3.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp-td-3.c	(working copy)
@@ -1,5 +1,6 @@
 /* Test generation of DFP instructions for POWER6.  */
 /* { dg-do compile { target { powerpc*-*-linux* && powerpc_fprs } } } */
+/* { dg-require-effective-target dfp } */
 /* { dg-options "-std=gnu99 -O1 -mdejagnu-cpu=power6" } */
 
 /* { dg-final { scan-assembler-times "fneg" 1 } } */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dfp.exp
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dfp.exp	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dfp.exp	(working copy)
@@ -16,11 +16,9 @@
 # along with GCC; see the file COPYING3.  If not see
 # <http://www.gnu.org/licenses/>.
 
-# Exit immediately if this isn't a PowerPC target, also exit if we
-# are on Darwin which doesn't support decimal float.
-if { (![istarget powerpc*-*-*] && ![istarget rs6000-*-*])
-    || [istarget "powerpc*-*-darwin*"]
-} then {
+# Exit immediately if this isn't a PowerPC target, or if the
+# target doesn't support decimal float.
+if { ![istarget powerpc*-*-*] || ![check_effective_target_dfp] } then {
   return
 }
 
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-0.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-0.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-0.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-1.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-1.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-1.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-10.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-10.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-10.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-11.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-11.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-11.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-12.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-12.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-12.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-13.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-13.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-13.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-14.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-14.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-14.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-15.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-15.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-15.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-16.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-16.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-16.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-17.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-17.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-17.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-18.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-18.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-18.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-19.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-19.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-19.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-2.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-2.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-2.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-20.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-20.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-20.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-21.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-21.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-21.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-22.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-22.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-22.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-23.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-23.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-23.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-24.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-24.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-24.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-25.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-25.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-25.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-26.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-26.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-26.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-27.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-27.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-27.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-28.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-28.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-28.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-29.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-29.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-29.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-3.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-3.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-3.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-30.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-30.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-30.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-31.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-31.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-31.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-32.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-32.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-32.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-33.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-33.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-33.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-34.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-34.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-34.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-35.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-35.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-35.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-36.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-36.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-36.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-37.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-37.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-37.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-38.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-38.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-38.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-39.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-39.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-39.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-4.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-4.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-4.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-40.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-40.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-40.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-41.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-41.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-41.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-42.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-42.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-42.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-43.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-43.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-43.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-44.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-44.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-44.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-45.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-45.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-45.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-46.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-46.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-46.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-47.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-47.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-47.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-48.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-48.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-48.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-49.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-49.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-49.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-5.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-5.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-5.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-50.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-50.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-50.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-51.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-51.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-51.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-52.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-52.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-52.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-53.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-53.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-53.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-54.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-54.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-54.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-55.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-55.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-55.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-56.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-56.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-56.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-57.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-57.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-57.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-58.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-58.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-58.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-59.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-59.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-59.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-6.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-6.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-6.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-60.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-60.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-60.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-61.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-61.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-61.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-62.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-62.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-62.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-63.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-63.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-63.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-64.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-64.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-64.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-65.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-65.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-65.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-66.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-66.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-66.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-67.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-67.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-67.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-68.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-68.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-68.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-69.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-69.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-69.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-7.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-7.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-7.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-70.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-70.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-70.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-71.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-71.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-71.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-72.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-72.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-72.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-73.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-73.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-73.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-74.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-74.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-74.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-75.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-75.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-75.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 /* This test should succeed on both 32- and 64-bit configurations.  */
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-76.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-76.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-76.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power8" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-77.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-77.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-77.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-78.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-78.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-78.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-79.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-79.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-79.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-8.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-8.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-8.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>
Index: gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-9.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-9.c	(revision 278980)
+++ gcc/testsuite/gcc.target/powerpc/dfp/dtstsfi-9.c	(working copy)
@@ -1,6 +1,5 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile } */
 /* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-options "-mdejagnu-cpu=power9" } */
 
 #include <altivec.h>

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-10 18:27           ` Peter Bergner
@ 2019-12-10 19:12             ` Peter Bergner
  2019-12-10 19:59               ` Iain Sandoe
  2019-12-18 14:19             ` Segher Boessenkool
  1 sibling, 1 reply; 19+ messages in thread
From: Peter Bergner @ 2019-12-10 19:12 UTC (permalink / raw)
  To: Segher Boessenkool; +Cc: GCC Patches, David Edelsohn, Iain Sandoe

On 12/10/19 12:27 PM, Peter Bergner wrote:
> Ok, how about the patch below?  If Iain and David could test this on Darwin
> and AIX respectively, that would be great.  I'm currently testing this on
> powerpc64le-linux, with and without --disable-decimal-float.

So my --enable-decimal-float builds showed no regressions or differences
in the testsuite results (as expected).  My --disable-decimal-float runs
showed no new regressions.  The only differences in the testsuite results
were due to all of the FAILs on the base compiler build that are fixed
with the patch.

Peter



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-10 19:12             ` Peter Bergner
@ 2019-12-10 19:59               ` Iain Sandoe
  0 siblings, 0 replies; 19+ messages in thread
From: Iain Sandoe @ 2019-12-10 19:59 UTC (permalink / raw)
  To: Peter Bergner; +Cc: Segher Boessenkool, GCC Patches, David Edelsohn

Peter Bergner <bergner@linux.ibm.com> wrote:

> On 12/10/19 12:27 PM, Peter Bergner wrote:
>> Ok, how about the patch below?  If Iain and David could test this on  
>> Darwin
>> and AIX respectively, that would be great.  I'm currently testing this on
>> powerpc64le-linux, with and without --disable-decimal-float.
>
> So my --enable-decimal-float builds showed no regressions or differences
> in the testsuite results (as expected).  My --disable-decimal-float runs
> showed no new regressions.  The only differences in the testsuite results
> were due to all of the FAILs on the base compiler build that are fixed
> with the patch.

make check-gcc-c RUNTESTFLAGS="powerpc.exp dfp.exp”

did not show anything unexpected with a built tree (with the system
assembler). So no prob. from my PoV (if something comes up when/if I
build with a newer assembler, that can be tackled in target-supports as
already mentioned).

thanks
Iain

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-09 20:16               ` Peter Bergner
@ 2019-12-12  9:23                 ` Segher Boessenkool
  0 siblings, 0 replies; 19+ messages in thread
From: Segher Boessenkool @ 2019-12-12  9:23 UTC (permalink / raw)
  To: Peter Bergner; +Cc: Iain Sandoe, GCC Patches, David Edelsohn

On Mon, Dec 09, 2019 at 02:16:51PM -0600, Peter Bergner wrote:
> I'm not sure that's necessary.  DFP enablement isn't triggered by
> assembler support.  Just the gcc/configure fragment (ignoring manually
> using --enable-decimal-float):
> 
>   case $target in
>     powerpc*-*-linux* | i?86*-*-linux* | x86_64*-*-linux* | s390*-*-linux* | \
>     i?86*-*-elfiamcu | i?86*-*-gnu* | x86_64*-*-gnu* | \
>     i?86*-*-mingw* | x86_64*-*-mingw* | \
>     i?86*-*-cygwin* | x86_64*-*-cygwin*)
>       enable_decimal_float=yes

Hmm.  Do we still only support it on Linux?  Is that a bit too
conservative?  The only thing required from the OS is treating the
FPSCR as a 64-bit register (instead of 32-bit), which is required by
the architecture since, what, ISA 2.05?  12 years ago?

OTOH, if there is no demand for this elsewhere, the status quo will
work fine of course, and it's simple as can be.

This configure thing does not gate whether the backend code supports
DFP though?  Or is that handled somewhere?  I.e. can we ever end up
with TARGET_DFP set while enable_decimal_float is not set?


Segher

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-10 18:27           ` Peter Bergner
  2019-12-10 19:12             ` Peter Bergner
@ 2019-12-18 14:19             ` Segher Boessenkool
  2019-12-18 15:31               ` Peter Bergner
  1 sibling, 1 reply; 19+ messages in thread
From: Segher Boessenkool @ 2019-12-18 14:19 UTC (permalink / raw)
  To: Peter Bergner; +Cc: GCC Patches, David Edelsohn, Iain Sandoe

(Whoops, I missed replying t this one.  Sorry.)

On Tue, Dec 10, 2019 at 12:27:11PM -0600, Peter Bergner wrote:
> On 12/4/19 5:03 PM, Segher Boessenkool wrote:
> > On Wed, Dec 04, 2019 at 03:53:30PM -0600, Peter Bergner wrote:
> >> Right.  I'll come up with a patch and hopefully Iain and David can test
> >> on Darwin and AIX and I can test on Linux with --enable-decimal-float
> >> and --disable-decimal-float.  That should cover the major subtargets and
> >> if it works there, I'd expect it to work on the minor subtargets too.
> 
> Ok, how about the patch below?  If Iain and David could test this on Darwin
> and AIX respectively, that would be great.  I'm currently testing this on
> powerpc64le-linux, with and without --disable-decimal-float.
> 
> The pr92661.c test case is the DFP test case you wanted added to make sure
> we do not ICE, even when DFP is disabled.  The dfp-[dt]d*.c changes are
> due to me seeing them being run (and FAILing) on my --disable-decimal-float
> runs.  Clearly, they shouldn't be run when DFP is disabled.
> 
> All of the powerpc/dfp/* tests had powerpc*-*-* target tests, but that is
> covered by the dfp.exp target tests, so I removed them along with the
> now unneeded dg-skip-if AIX tests.  If dg-do compile is the default, do
> we want to just remove that whole line?
> 
> How is this looking?


> --- gcc/testsuite/gcc.target/powerpc/pr92661.c	(nonexistent)
> +++ gcc/testsuite/gcc.target/powerpc/pr92661.c	(working copy)
> @@ -0,0 +1,19 @@
> +/* { dg-do compile { target { powerpc*-*-* } } } */
> +/* { dg-options "-w -O2 -mdejagnu-cpu=power9" } */

You don't need that target clause in gcc.target/powerpc (and dg-do compile
is the default, but having it explicit is also fine of course).

> --- gcc/testsuite/gcc.target/powerpc/dfp-dd.c	(revision 278980)
> +++ gcc/testsuite/gcc.target/powerpc/dfp-dd.c	(working copy)
> @@ -1,6 +1,7 @@
>  /* Test generation of DFP instructions for POWER6.  */
>  /* Origin: Janis Johnson <janis187@us.ibm.com> */
> -/* { dg-do compile { target { powerpc*-*-linux* && powerpc_fprs } } } */
> +/* { dg-do compile { target { powerpc*-*-linux* } } } */
> +/* { dg-require-effective-target dfp_hw } */

You can remove powerpc_fprs now because it became redundant?  Cool.

But dfp_hw is the wrong conditions for a dg-do compile test.


Nice cleanups!  Please fix that dfp_hw thing, and then, okay for trunk,
Thanks!


Segher

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins
  2019-12-18 14:19             ` Segher Boessenkool
@ 2019-12-18 15:31               ` Peter Bergner
  0 siblings, 0 replies; 19+ messages in thread
From: Peter Bergner @ 2019-12-18 15:31 UTC (permalink / raw)
  To: Segher Boessenkool; +Cc: GCC Patches, David Edelsohn, Iain Sandoe

On 12/18/19 8:15 AM, Segher Boessenkool wrote:
>> +/* { dg-do compile { target { powerpc*-*-* } } } */
>> +/* { dg-options "-w -O2 -mdejagnu-cpu=power9" } */
> 
> You don't need that target clause in gcc.target/powerpc (and dg-do compile
> is the default, but having it explicit is also fine of course).

I think leaving the bare dg-do compile (ie, no target) is nice,
for newbies who don't know that dg-do compile is the default.



>> --- gcc/testsuite/gcc.target/powerpc/dfp-dd.c	(revision 278980)
>> +++ gcc/testsuite/gcc.target/powerpc/dfp-dd.c	(working copy)
>> @@ -1,6 +1,7 @@
>>  /* Test generation of DFP instructions for POWER6.  */
>>  /* Origin: Janis Johnson <janis187@us.ibm.com> */
>> -/* { dg-do compile { target { powerpc*-*-linux* && powerpc_fprs } } } */
>> +/* { dg-do compile { target { powerpc*-*-linux* } } } */
>> +/* { dg-require-effective-target dfp_hw } */
> 
> You can remove powerpc_fprs now because it became redundant?  Cool.

Right, hard dfp support requires we have hard float support.


> But dfp_hw is the wrong conditions for a dg-do compile test.

Ok, yes.  Looking closer, that dfp_hw is a runtime test and not
what we want.  I'll change this to using "hard_dfp" which is a
compile time test.



> Nice cleanups!  Please fix that dfp_hw thing, and then, okay for trunk,
> Thanks!

Will do, thanks.  I'll commit this after making these changes and
rerunning the updated test cases.

Peter

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2019-12-18 15:27 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <6129bc8a-18f3-3c25-22c0-f26e4358c5b3@linux.ibm.com>
2019-12-04 19:16 ` [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins Segher Boessenkool
2019-12-04 19:57   ` Peter Bergner
2019-12-04 20:47     ` Iain Sandoe
2019-12-04 21:40       ` Peter Bergner
2019-12-04 22:59         ` Segher Boessenkool
2019-12-04 22:58       ` Segher Boessenkool
2019-12-04 20:51     ` Segher Boessenkool
2019-12-04 21:53       ` Peter Bergner
2019-12-04 23:03         ` Segher Boessenkool
2019-12-05  8:45           ` Iain Sandoe
2019-12-05 16:06             ` Peter Bergner
2019-12-06 23:12             ` Segher Boessenkool
2019-12-09 20:16               ` Peter Bergner
2019-12-12  9:23                 ` Segher Boessenkool
2019-12-10 18:27           ` Peter Bergner
2019-12-10 19:12             ` Peter Bergner
2019-12-10 19:59               ` Iain Sandoe
2019-12-18 14:19             ` Segher Boessenkool
2019-12-18 15:31               ` Peter Bergner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).