[PATCH] D32563: Improve code placement algorithm in Reassociate pass.

Dehao Chen via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 26 14:46:09 PDT 2017


danielcdh created this revision.

In the current reassociate pass, the computation is inserted right before the root of the expression tree. This is inefficient because it introduces too many overlapped life-ranges. Unfortunately we do not have a general live-range shrink-wrapper in llvm. This patch use dominator tree to find the instruction insertion/move location to minimize overall life-ranges.


https://reviews.llvm.org/D32563

Files:
  include/llvm/Transforms/Scalar/Reassociate.h
  lib/Transforms/Scalar/Reassociate.cpp
  test/Transforms/Reassociate/hoist.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D32563.96828.patch
Type: text/x-patch
Size: 21369 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170426/4946d0e6/attachment.bin>


More information about the llvm-commits mailing list