[llvm] [InstCombine] Canonicalize reassoc contract fmuladd to fmul + fadd (PR #90434)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Mon May 6 01:23:31 PDT 2024
arsenm wrote:
> hi @andykaylor, do you mean the `@llvm.fmuladd.f32` should not be associated with a separate `contract` flag or even it should not be associated with `fast` flag ? Does it because the `@llvm.fmuladd.f32` itself imply the `contract` flag, and that is duplicated to have a `contract` flag ?
fmuladd implies contract inside of itself, but not with its neighbors. It's kind of like arithmetic.fence(fadd contract (fmul contract)). The contract on the fmuladd itself implies contract with the neighbors, so it's not quite the same
https://github.com/llvm/llvm-project/pull/90434
More information about the llvm-commits
mailing list