summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaExpr.cpp
diff options
context:
space:
mode:
authorDehao Chen <dehao@google.com>2016-10-27 16:30:08 +0000
committerDehao Chen <dehao@google.com>2016-10-27 16:30:08 +0000
commitb94c09baa058e57b1e931746745050e19785ef30 (patch)
treea2d57bc5d38400fcb744b91d3cb49282db424056 /clang/lib/Sema/SemaExpr.cpp
parent9c9d9cdcf8e996455318bbe334d1d36622338b70 (diff)
downloadbcm5719-llvm-b94c09baa058e57b1e931746745050e19785ef30.tar.gz
bcm5719-llvm-b94c09baa058e57b1e931746745050e19785ef30.zip
Add Loop Sink pass to reverse the LICM based of basic block frequency.
Summary: LICM may hoist instructions to preheader speculatively. Before code generation, we need to sink down the hoisted instructions inside to loop if it's beneficial. This pass is a reverse of LICM: looking at instructions in preheader and sinks the instruction to basic blocks inside the loop body if basic block frequency is smaller than the preheader frequency. Reviewers: hfinkel, davidxl, chandlerc Subscribers: anna, modocache, mgorny, beanz, reames, dberlin, chandlerc, mcrosier, junbuml, sanjoy, mzolotukhin, llvm-commits Differential Revision: https://reviews.llvm.org/D22778 llvm-svn: 285308
Diffstat (limited to 'clang/lib/Sema/SemaExpr.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud