[PATCH] D67315: [SimplifyCFG] mergeConditionalStoreToAddress(): consider cost, not instruction count

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Sep 7 03:57:24 PDT 2019


lebedev.ri created this revision.
lebedev.ri added reviewers: efriedma, craig.topper, dmgreen.
lebedev.ri added a project: LLVM.
Herald added a subscriber: hiraditya.

As it can be see in the changed test, while `div` is really costly,
we were speculating it. This does not seem correct.

Also, the old code would run for every single insturuction in BB,
instead of eagerly bailing out as soon as there are too many instructions.

This function still has a problem that `PHINodeFoldingThreshold` is
per-basic-block, while it should be for all the basic blocks.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D67315

Files:
  llvm/lib/Transforms/Utils/SimplifyCFG.cpp
  llvm/test/Transforms/SimplifyCFG/X86/merge-cond-stores-cost.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D67315.219230.patch
Type: text/x-patch
Size: 8520 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190907/34377ebb/attachment.bin>


More information about the llvm-commits mailing list