diff options
author | Andrei Elovikov <andrei.elovikov@intel.com> | 2018-03-15 09:59:15 +0000 |
---|---|---|
committer | Andrei Elovikov <andrei.elovikov@intel.com> | 2018-03-15 09:59:15 +0000 |
commit | f9b8035f3c9b60763bfddf317123101a652d9e5f (patch) | |
tree | a1ae4e8d6ece90b80d159845a3f142fbace2d2d9 /lldb/packages/Python/lldbsuite/support/fs.py | |
parent | 211e94d6666d5e1bb5c4e622d6054270927b0ebe (diff) | |
download | bcm5719-llvm-f9b8035f3c9b60763bfddf317123101a652d9e5f.tar.gz bcm5719-llvm-f9b8035f3c9b60763bfddf317123101a652d9e5f.zip |
[LoopUnroll] Ignore ephemeral values when checking full unroll profitability.
Summary:
Before this patch call graph is like this in the LoopUnrollPass:
tryToUnrollLoop
ApproximateLoopSize
collectEphemeralValues
/* Use collected ephemeral values */
computeUnrollCount
analyzeLoopUnrollCost
/* Bail out from the analysis if loop contains CallInst */
This patch moves collection of the ephemeral values to the tryToUnrollLoop
function and passes the collected values into both ApproximateLoopsize (as
before) and additionally starts using them in analyzeLoopUnrollCost:
tryToUnrollLoop
collectEphemeralValues
ApproximateLoopSize(EphValues)
/* Use EphValues */
computeUnrollCount(EphValues)
analyzeLoopUnrollCost(EphValues)
/* Ignore ephemeral values - they don't contribute to the final cost */
/* Bail out from the analysis if loop contains CallInst */
Reviewers: mzolotukhin, evstupac, sanjoy
Reviewed By: evstupac
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D43931
llvm-svn: 327617
Diffstat (limited to 'lldb/packages/Python/lldbsuite/support/fs.py')
0 files changed, 0 insertions, 0 deletions