[PATCH] D75016: [X86][TwoAddressInstructionPass] Teach tryInstructionCommute to continue checking for commutable FMA operands in more cases.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 26 10:34:42 PST 2020


craig.topper marked an inline comment as done.
craig.topper added inline comments.


================
Comment at: llvm/test/CodeGen/X86/recip-fastmath.ll:819
+; HASWELL-NEXT:    vfnmadd132ps {{.*#+}} ymm1 = -(ymm1 * ymm2) + ymm2
+; HASWELL-NEXT:    vmovaps %ymm1, %ymm0
 ; HASWELL-NEXT:    retq
----------------
RKSimon wrote:
> Any chance that we can avoid this regression (and the other ones above)?
Not without a new heuristic. We would need to see that one of the kills we're choosing for vfmsub is tied to xmm0 and that the user of the vfmsub def, the vfnmadd132ps, has its def tied to xmm0 and that it's commutable into a form that would allow the output from the vfmsub to be tied to that def.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D75016/new/

https://reviews.llvm.org/D75016





More information about the llvm-commits mailing list