This patch extends support in the machine combiner for forming more FNMADD instructions.
I saw a minor, but measurable above noise, improvement in spec2000/eon on Kryo.
PTAL,
Chad
| Paths 
 |  Differential  D33101  
[AArch64][MachineCombine] Fold FNMUL+FSUB -> FNMADD ClosedPublic Authored by mcrosier on May 11 2017, 7:11 AM. 
Details 
Diff Detail Event TimelineHerald added subscribers: javed.absar, rengolin, aemerson.  ·  View Herald TranscriptMay 11 2017, 7:11 AM 
 This revision is now accepted and ready to land.May 11 2017, 12:44 PM 
Revision Contents 
 
Diff 98645 include/llvm/CodeGen/MachineCombinerPattern.h
 lib/Target/AArch64/AArch64InstrInfo.cpp
 test/CodeGen/AArch64/arm64-fml-combines.ll
 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Can you just rename canCombineWithFMUL instead of having two identical copies?