[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