https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94269
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2020-03-23 Status|UNCONFIRMED |NEW Ever confirmed|0 |1 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Or even simpler like FMA detection which restricts ops to be defined in the same basic-block: /* For now restrict this operations to single basic blocks. In theory we would want to support sinking the multiplication in m = a*b; if () ma = m + c; else d = m; to form a fma in the then block and sink the multiplication to the else block. */ if (gimple_bb (use_stmt) != gimple_bb (mul_stmt)) return false;