- User Since
- Mar 5 2014, 4:23 PM (317 w, 5 d)
Tue, Mar 31
Tue, Mar 24
An interesting case to explore: https://bugs.llvm.org/show_bug.cgi?id=27360
LLVM does not peel/unroll loops with multiple exits. With this loop rotation this should be possible.
Mon, Mar 23
Sun, Mar 22
Sat, Mar 21
This is only for preliminary assignment for the student to get some idea of the project. We'll most likely restart with previous suggestions from the original patch and the mailing list. Please ignore this patch for now. Sorry for introducing noise.
Mar 1 2020
Feb 10 2020
Jan 17 2020
The test case is in another patch so LGTM.
Jan 7 2020
Thanks for refactoring LGTM.
Nov 8 2019
Oct 31 2019
Rebase against master.
Thanks for rebasing the patch.
Oct 30 2019
Oct 29 2019
Oct 28 2019
Add testcase for sinking
Remove unused variable and use function for updating local stats.
Make MaxSinkChainLength a flag.
Remove VNs already handled to reduce redundant lookups.
Oct 27 2019
Rebase against master and use profitability to reduce liveness
Oct 25 2019
Oct 24 2019
Add check for both hot and cold prefixes.
btw, I had this patch in mind:
It is happening without my changes with -codegenprepare. So just keeping the testcase.
Because my goal is to improve outlining without PGO (with static analysis), I'm wondering what would be the best place to put this other than HotColdSplitting.
Oct 21 2019
Will add test case soon.
Oct 18 2019
rebase against latest changes
Oct 15 2019
Oct 13 2019
Good point, there's something about updating the users that copying maybe required. make_early_inc_range didn't work, I searched for uses cases of replaceUsesOfWith and I couldn't find any instance where we use 'users'.
Tried the following, I get test failures and crashes.
Oct 12 2019
Oct 7 2019
LGTM as the comments have been addressed.
Oct 4 2019
Reviewed and committed: https://reviews.llvm.org/D67941
Reviewed here: https://reviews.llvm.org/D67941
Closed in: https://reviews.llvm.org/rL373807
Oct 2 2019
remove XFAIL now that fix had landed
Splitting the verifier into a separate diff: https://reviews.llvm.org/D68345
It depends on the verifier function (CodeExtractor::verifyAssumptionCache) from D67941 to fail with the test case in: llvm/test/Transforms/HotColdSplit/assumption-cache-invalidation.ll
Relevant test case: llvm/test/Transforms/HotColdSplit/assumption-cache-invalidation.ll is already in trunk.
passed ninja check-all
ninja check passed