http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46307
Summary: [4.6 Regression] ICE with FMA_EXPR in DEBUG stmts Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: debug AssignedTo: ja...@gcc.gnu.org ReportedBy: ja...@gcc.gnu.org /* { dg-do compile } */ /* { dg-options "-O2 -g" } */ double foo (double x, double y, double z) { double a = x * y + z; double b = __builtin_fma (x, y, z); double c = fma (x, y, z); return x / y / z; } ICEs on targets where fma/__builtin_fma is transformed into FMA_EXPR. The first problem is that FMA_EXPR is not handled in tree-ssa-operands.c, the second issue is that it is not handled in expand_debug_expr.