diff options
| author | John Brawn <john.brawn@arm.com> | 2019-01-04 17:12:09 +0000 |
|---|---|---|
| committer | John Brawn <john.brawn@arm.com> | 2019-01-04 17:12:09 +0000 |
| commit | 39ac159c24b5c0ae37506d1588321bebf429c973 (patch) | |
| tree | 8988081ca6579f7eb5993fb8b5f2c8d52ec00cc6 /clang/lib | |
| parent | 2b506d9fe92bebe34f4954e737d63fcad0f46794 (diff) | |
| download | bcm5719-llvm-39ac159c24b5c0ae37506d1588321bebf429c973.tar.gz bcm5719-llvm-39ac159c24b5c0ae37506d1588321bebf429c973.zip | |
[LICM] Adjust how moving the re-hoist point works
In some cases the order that we hoist instructions in means that when rehoisting
(which uses the same order as hoisting) we can rehoist to a block A, then a
block B, then block A again. This currently causes an assertion failure as it
expects that when changing the hoist point it only ever moves to a block that
dominates the hoist point being moved from.
Fix this by moving the re-hoist point when it doesn't dominate the dominator of
hoisted instruction, or in other words when it wouldn't dominate the uses of
the instruction being rehoisted.
Differential Revision: https://reviews.llvm.org/D55266
llvm-svn: 350408
Diffstat (limited to 'clang/lib')
0 files changed, 0 insertions, 0 deletions

