[Bug target/107261] ICE: in classify_argument, at config/i386/i386.cc:2523 on __bf16 vect argument or return value

crazylht at gmail dot com gcc-bugzilla@gcc.gnu.org
Thu Oct 20 03:30:43 GMT 2022


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107261

--- Comment #4 from Hongtao.liu <crazylht at gmail dot com> ---
(In reply to Hongtao.liu from comment #3)
> (In reply to Jakub Jelinek from comment #2)
> > I think:
> > --- gcc/config/i386/i386.cc.jj	2022-10-14 09:35:56.158990825 +0200
> > +++ gcc/config/i386/i386.cc	2022-10-19 19:49:07.883101047 +0200
> > @@ -2507,6 +2507,7 @@ classify_argument (machine_mode mode, co
> >      case E_V2SImode:
> >      case E_V4HImode:
> >      case E_V4HFmode:
> > +    case E_V4BFmode:
> >      case E_V2HFmode:
> >      case E_V8QImode:
> >        classes[0] = X86_64_SSE_CLASS;
> > ought to fix this.
> 
> We haven't support V4BFmode yet, why there's V4BFmode coming in.
> We'll take a look.

It's ok for 32-bit vector bf, but ICE for 64-bit vector.

typedef __bf16 __attribute__((__vector_size__ (4))) V;

V
foo (V v, V a)
{
    return v + a;
}


More information about the Gcc-bugs mailing list