[VPlan] Introduce VPlan-based dominator analysis.
authorDiego Caballero <diego.caballero@intel.com>
Mon, 30 Jul 2018 21:33:31 +0000 (21:33 +0000)
committerDiego Caballero <diego.caballero@intel.com>
Mon, 30 Jul 2018 21:33:31 +0000 (21:33 +0000)
commit2a34ac86d3ea99f6ae8ec94935436ed0b26ddc14
treec7d0a946a83dec77a91115f700aeb75080174869
parent47ad09b339f3d58e37e4f011a01b7d4dcbb3c6c3
[VPlan] Introduce VPlan-based dominator analysis.

The patch introduces dominator analysis for VPBlockBases and extend
VPlan's GraphTraits specialization with the required interfaces. Dominator
analysis will be necessary to perform some H-CFG transformations and
to introduce VPLoopInfo (LoopInfo analysis on top of the VPlan representation).

Reviewers: fhahn, rengolin, mkuper, hfinkel, mssimpso

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D48815

llvm-svn: 338310
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/lib/Transforms/Vectorize/VPlan.cpp
llvm/lib/Transforms/Vectorize/VPlan.h
llvm/lib/Transforms/Vectorize/VPlanDominatorTree.h [new file with mode: 0644]
llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp
llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.h
llvm/unittests/Transforms/Vectorize/CMakeLists.txt
llvm/unittests/Transforms/Vectorize/VPlanDominatorTreeTest.cpp [new file with mode: 0644]
llvm/unittests/Transforms/Vectorize/VPlanTestBase.h