https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100556
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|ICE: in gimplify_expr with |ICE: in gimplify_expr with
|__transaction_atomic and |__transaction_atomic and
|unsafe function call |comparisons (and boolean
| |and/ors)
Keywords|ice-on-invalid-code |ice-on-valid-code
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
So the issue is not `unsafe function call` here but rather it is the
comparison.
Also ICEs with boolean operators too (||, &&).
Reduced testcase:
```
int f(int a) { return __transaction_atomic (a == 1); }
```