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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |NEW
   Last reconfirmed|                            |2026-01-17
         Resolution|INVALID                     |---
     Ever confirmed|0                           |1

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
But doing this:
```
[[gnu::noinline]]
uint64_t backsmith_pure_7(BS_VEC(int32_t, 8) BS_ARG_3)
{
    BS_VEC(uint16_t, 32) BS_VAR_2[6];
    __builtin_memset(BS_VAR_2,1,sizeof(BS_VAR_2));
    if (BS_ARG_3[7]) return 4083;
    return BS_VAR_2[0][7];
}
```

causes it to be valid.
`a < 1 ? __builtin_bswap64(a) : 0` should be always 0 but is turning into just
__builtin_bswap64(a).

Reply via email to