[PATCH] D23313: X86: FMA intrinsic + FNEG - sequence optimization

Elena Demikhovsky via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 9 05:30:36 PDT 2016


delena created this revision.
delena added reviewers: igorb, RKSimon, andreadb.
delena added a subscriber: llvm-commits.
delena set the repository for this revision to rL LLVM.

Optimized FMA intrinsic + FNEG , like
   -(a*b+c)
and  FNEG + FMA, like
   a*b-c or (-a)*b+c

Legalization of ISD::FNEG is delayed to give a chance to combine it with X86ISD::FMADD/MSUB/NMADD/NMSUB.

7 out of 8 test cases are optimized. The last test case requires additional investigation and, probably, changes in the clang header.

Fixed https://llvm.org/bugs/show_bug.cgi?id=28892.

Repository:
  rL LLVM

https://reviews.llvm.org/D23313

Files:
  ../lib/Target/X86/X86ISelLowering.cpp
  ../test/CodeGen/X86/fma-fneg-combine.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D23313.67319.patch
Type: text/x-patch
Size: 8816 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160809/b781691a/attachment.bin>


More information about the llvm-commits mailing list