[PATCH] D67434: [InstCombine] Limit FMul constant folding for fma simplifications.
Roman Lebedev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 11 09:07:51 PDT 2019
lebedev.ri added inline comments.
================
Comment at: llvm/test/Transforms/InstCombine/fma.ll:502-511
+define <2 x double> @fmuladd_const_fmul(<2 x double> %b) {
+; CHECK-LABEL: @fmuladd_const_fmul(
+; CHECK-NEXT: entry:
+; CHECK-NEXT: [[RES:%.*]] = fadd nnan nsz <2 x double> [[B:%.*]], <double 0x3F8DB6C076AD949B, double 0x3FB75A405B6E6D69>
+; CHECK-NEXT: ret <2 x double> [[RES]]
+;
+entry:
----------------
reames wrote:
> lebedev.ri wrote:
> > I don't think this restriction should apply to `@llvm.fmuladd`, as per https://llvm.org/docs/LangRef.html#llvm-fmuladd-intrinsic
> I don't see why not? The rounding is specified exactly as described.
I think my comment got garbled. I'm saying the current patch is correct in the sense that
if we are simplifying `fmuladd`, we don't have any rounding concerns:
As per LangRef, `fmuladd` can be arbitrarily expanded to `fmul`+`fadd`, unlike `fma`.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D67434/new/
https://reviews.llvm.org/D67434
More information about the llvm-commits
mailing list