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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|compile-time-hog,           |
                   |needs-reduction             |
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2025-11-26

--- Comment #10 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #6)
> Reduced testcase (-O2 -fgimple):
> typedef unsigned long long V __attribute__((vector_size (16)));
> typedef long long W __attribute__((vector_size (16)));
> 
> W __GIMPLE (ssa)
> foo (V x)
> {
>   W _6;
>   long long int _8;
> 
>   __BB(2,guessed_local(1073741824)):
>   _8 = __BIT_FIELD_REF <long long int> (x_3(D), 64ull, 0ull);
>   _6 = _Literal (W) {_8, 0ll};
>   return _6;
> }

here is a non-gimple testcase:
```
typedef int v2ll __attribute__((__vector_size__(2*sizeof(int))));
typedef unsigned int v2ull __attribute__((__vector_size__(2*sizeof(int))));
typedef __attribute__((__vector_size__(2*sizeof(short)))) short v2s;
v2ll f(v2ull e) {
  v2s c = (v2s)e[0];
  return (v2ll){(int)c, 0};
}
```

Note both of these assumes `sizeof(short)*2 == sizeof(int)` so int32 as the
target.

Reply via email to