[PATCH] D17864: [PGO] Promote indirect calls to conditional direct calls with value-profile

Rong Xu via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 6 14:40:37 PDT 2016


xur updated this revision to Diff 52852.
xur added a comment.

Medhi, here is the patch that uses a static function. Does it look OK?

As for your question about the two-step promotion: Yes, this produces the same result if we only do the promotion in LTO optimization. The intra-module promotion will stop at the first target that it cannot promote and write the remaining VP targets to the metadata. The cross-module promotion will pick it up and do the rest.

Thanks!
-Rong


http://reviews.llvm.org/D17864

Files:
  include/llvm/IR/InstrTypes.h
  include/llvm/InitializePasses.h
  include/llvm/LinkAllPasses.h
  include/llvm/Transforms/Instrumentation.h
  lib/IR/Instructions.cpp
  lib/Transforms/IPO/PassManagerBuilder.cpp
  lib/Transforms/Instrumentation/CMakeLists.txt
  lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
  lib/Transforms/Instrumentation/Instrumentation.cpp
  test/Transforms/PGOProfile/icp_covariant_return.ll
  test/Transforms/PGOProfile/icp_invoke.ll
  test/Transforms/PGOProfile/icp_mismatch_msg.ll
  test/Transforms/PGOProfile/icp_vararg.ll
  test/Transforms/PGOProfile/indirect_call_promotion.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17864.52852.patch
Type: text/x-patch
Size: 42929 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160406/ea920b07/attachment.bin>


More information about the llvm-commits mailing list