[PATCH] D34769: [X86] X86::CMOV to Branch heuristic based optimization

Anna Thomas via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 26 13:58:58 PDT 2017


anna added a comment.

Hi @aaboud,

We are seeing couple of regressions with this optimization on our internal benchmarks on skylake hardware. 
This is fixed when we turn off the optimization using -x86-cmov-converter=false

Could it be something in the heuristic that depends on the cmov to branch conversion on the gain being greater than 25% of branch misprediction penalty? I analyzed the assembly on the internal benchmark and can definitely see higher number of branches in a MBB when earlier it was all in one block with a cmov.

I have filed a bug for this (with a reduced IR): https://bugs.llvm.org/show_bug.cgi?id=33954

Could you please disable this optimization while debugging the problem offline?

Also, I was wondering if you ran this optimization on any LLVM performance suite? Couldn't find the numbers in the review.

Thanks,
Anna


Repository:
  rL LLVM

https://reviews.llvm.org/D34769





More information about the llvm-commits mailing list