[PATCH] D26855: New unsafe-fp-math implementation for X86 target

Guy Blank via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Feb 5 08:23:16 PST 2017


guyblank added a comment.

As for AVX512, I am ok with excluding it specifically in DAGCombiner.

But I'm also concerned about other cpus for which we don't have an accurate scheduler model (broadwell, skylake), should these be excluded as well?



================
Comment at: lib/Target/X86/X86InstrInfo.cpp:9686
+  case MachineCombinerPattern::Div2RecipEst:
+    switch (Root.getOpcode()) {
+    default:
----------------
currently in Haswell and newer cpus, the generated sequence is using fma instructions.
this should be taken into account here in the patterns, right?


================
Comment at: test/CodeGen/X86/recip-fastmath.ll:3
 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefix=CHECK --check-prefix=SSE
 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx  | FileCheck %s --check-prefix=CHECK --check-prefix=AVX
 
----------------
please add RUN commands for specific cpus (as in the other test + AVX512 target)
also commit the test changes and rebase your patch on them so we can see the output changes in these new runs.


https://reviews.llvm.org/D26855





More information about the llvm-commits mailing list