https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104427
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|ICE with |ICE with |__builtin_assoc_barrier and |__builtin_assoc_barrier and |float16 types |float types which introduce | |excess precision Target| |aarch64*-* x86_64-*-* --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- It is an interaction between excess_precision_expr and the barrier. Here is another testcase which shows the same issue but on i?86 (-m32 -mno-sse -std=c99): float x, y; int foo() { return __builtin_assoc_barrier(x + y) - y; }