[all-commits] [llvm/llvm-project] 2a08d7: [SCEV] Add additional loop guard and/or tests (NFC)
Nikita Popov via All-commits
all-commits at lists.llvm.org
Sun May 9 12:34:52 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 2a08d7409bf920b0b81708cf2bce0c1179262006
https://github.com/llvm/llvm-project/commit/2a08d7409bf920b0b81708cf2bce0c1179262006
Author: Nikita Popov <nikita.ppv at gmail.com>
Date: 2021-05-09 (Sun, 09 May 2021)
Changed paths:
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
Log Message:
-----------
[SCEV] Add additional loop guard and/or tests (NFC)
Add tests for and/and, and/or, or/or, or/and combinations.
Commit: d26ca78c18ed21713d7d0a44fb75f1989575ab9d
https://github.com/llvm/llvm-project/commit/d26ca78c18ed21713d7d0a44fb75f1989575ab9d
Author: Nikita Popov <nikita.ppv at gmail.com>
Date: 2021-05-09 (Sun, 09 May 2021)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
Log Message:
-----------
[SCEV] Handle and/or in applyLoopGuards()
applyLoopGuards() already combines conditions from multiple nested
guards. However, it cannot use multiple conditions on the same guard,
combined using and/or. Add support for this by recursing into either
`and` or `or`, depending on the direction of the branch.
Differential Revision: https://reviews.llvm.org/D101692
Compare: https://github.com/llvm/llvm-project/compare/675daef58b5e...d26ca78c18ed
More information about the All-commits
mailing list