Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | [MBP] Avoid tail duplication if it can't bring benefit | Guozhi Wei | 2019-12-06 | 1 | -3/+3 |
| | | | | | | | | | | | | | Current tail duplication integrated in bb layout is designed to increase the fallthrough from a BB's predecessor to its successor, but we have observed cases that duplication doesn't increase fallthrough, or it brings too much size overhead. To overcome these two issues in function canTailDuplicateUnplacedPreds I add two checks: make sure there is at least one duplication in current work set. the number of duplication should not exceed the number of successors. The modification in hasBetterLayoutPredecessor fixes a bug that potential predecessor must be at the bottom of a chain. Differential Revision: https://reviews.llvm.org/D64376 | ||||
* | Remove assert from MachineLoop::getLoopPredecessor() | Stanislav Mekhanoshin | 2019-09-20 | 1 | -0/+92 |
According to the documentation method returns predecessor if the given loop's header has exactly one unique predecessor outside the loop. Otherwise return null. In reality it asserts if there is no predecessor outside of the loop. The testcase has the loop where predecessors outside of the loop were not identified as analyzeBranch() was unable to process the mask branch and returned true. That is also not correct to assert for the truly dead loops. Differential Revision: https://reviews.llvm.org/D67634 llvm-svn: 372405 |