aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/Support/CommandLineTest.cpp
diff options
context:
space:
mode:
authorSidharth Baveja <sidharthbav@gmail.com>2020-07-21 15:59:14 +0000
committerSidharth Baveja <sidharthbav@gmail.com>2020-07-21 15:59:14 +0000
commitbb8850d34d601d4edd75fd30c07821c05a726c42 (patch)
tree22d8f2096042ce03ad219d6580718fc005639466 /llvm/unittests/Support/CommandLineTest.cpp
parenta16129c138390f81c33ecb16f2042eca342e04b0 (diff)
downloadllvm-bb8850d34d601d4edd75fd30c07821c05a726c42.zip
llvm-bb8850d34d601d4edd75fd30c07821c05a726c42.tar.gz
llvm-bb8850d34d601d4edd75fd30c07821c05a726c42.tar.bz2
[Loop Fusion] Integrate Loop Peeling into Loop Fusion
Summary: This patch adds the ability to peel off iterations of the first loop in loop fusion. This can allow for both loops to have the same trip count, making it legal for them to be fused together. Here is a simple scenario peeling can be used in loop fusion: for (i = 0; i < 10; ++i) a[i] = a[i] + 3; for (j = 1; j < 10; ++j) b[j] = b[j] + 5; Here is we can make use of peeling, and then fuse the two loops together. We can peel off the 0th iteration of the loop i, and then combine loop i and j for i = 1 to 10. a[0] = a[0] +3; for (i = 1; i < 10; ++i) { a[i] = a[i] + 3; b[i] = b[i] + 5; } Currently peeling with loop fusion is only supported for loops with constant trip counts and a single exit point. Both unguarded and guarded loops are supported. Author: sidbav (Sidharth Baveja) Reviewers: kbarton, Meinersbur, bkramer, Whitney, skatkov, ashlykov, fhahn, bmahjour Reviewed By: bmahjour Subscribers: bmahjour, mgorny, hiraditya, zzheng Tags: LLVM Differential Revision: https://reviews.llvm.org/D82927
Diffstat (limited to 'llvm/unittests/Support/CommandLineTest.cpp')
0 files changed, 0 insertions, 0 deletions