Re: [PATCH] rs6000: ICE when using an MMA type as a function param

2020-08-12 Thread Segher Boessenkool
On Wed, Aug 12, 2020 at 02:24:33PM -0500, Peter Bergner wrote: > On 8/11/20 9:00 PM, Segher Boessenkool wrote: > > On Sun, Aug 09, 2020 at 10:03:35PM -0500, Peter Bergner wrote: > >> +/* { dg-options "-mdejagnu-cpu=power10 -O2 -w" } */ > > > > Do you need -w or could a less heavy hammer work as we

Re: [PATCH] rs6000: ICE when using an MMA type as a function param

2020-08-12 Thread Peter Bergner via Gcc-patches
On 8/11/20 9:00 PM, Segher Boessenkool wrote: > On Sun, Aug 09, 2020 at 10:03:35PM -0500, Peter Bergner wrote: >> +/* { dg-options "-mdejagnu-cpu=power10 -O2 -w" } */ > > Do you need -w or could a less heavy hammer work as well? So adding: extern void bar0(); etc. was enough to get rid of the wa

Re: [PATCH] rs6000: ICE when using an MMA type as a function param

2020-08-11 Thread Segher Boessenkool
On Tue, Aug 11, 2020 at 09:07:40PM -0500, Peter Bergner wrote: > >> + static struct function *fn = NULL; > >> + > >> + /* We do not allow MMA types being used as return values. Only report > >> + the invalid return value usage the first time we encounter it. */ > >> + if (for_return > >> +

Re: [PATCH] rs6000: ICE when using an MMA type as a function param

2020-08-11 Thread Peter Bergner via Gcc-patches
On 8/11/20 9:00 PM, Segher Boessenkool wrote: > Not just params, but return values as well. "Error on MMA types in > function prototype"? Yes, it started out as a function param issue and then while working on this, I decided I better look at what happens when they're used as return values. I'll

Re: [PATCH] rs6000: ICE when using an MMA type as a function param

2020-08-11 Thread Segher Boessenkool
Hi! Not just params, but return values as well. "Error on MMA types in function prototype"? On Sun, Aug 09, 2020 at 10:03:35PM -0500, Peter Bergner wrote: > --- a/gcc/config/rs6000/rs6000-call.c > +++ b/gcc/config/rs6000/rs6000-call.c > @@ -6444,8 +6444,23 @@ machine_mode > rs6000_promote_funct

Re: [PATCH] rs6000: ICE when using an MMA type as a function param

2020-08-10 Thread Peter Bergner via Gcc-patches
On 8/9/20 10:03 PM, Peter Bergner wrote: > PR96506 shows a problem where we ICE on illegal usage, namely using MMA > types for function arguments and return values. The solution is to flag > these illegal usages as errors early, before we ICE. > > The patch below is currently bootstrapping and re

Re: [PATCH] rs6000: ICE when using an MMA type as a function param

2020-08-09 Thread Peter Bergner via Gcc-patches
On 8/9/20 10:03 PM, Peter Bergner wrote: > gcc/ > PR target/96506 > * config/rs6000/rs6000-call.c (rs6000_promote_function_mode): > (rs6000_function_arg): Oops, missed the ChangeLog entries: gcc/ PR target/96506 * config/rs6000/rs6000-call.c (rs6000_promote_funct