aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/InlineFunction.cpp
diff options
context:
space:
mode:
authorNikita Popov <npopov@redhat.com>2022-06-07 15:09:04 +0200
committerNikita Popov <npopov@redhat.com>2022-06-20 10:29:33 +0200
commit2b089e9ae0df0fa44831cc74253b55ea6d43cd41 (patch)
tree4d899bd7542a50a8f05ae94ebbe5d78fff1493c4 /llvm/lib/Transforms/Utils/InlineFunction.cpp
parent809999aabbf5cb62b99f98023dcf0f4835f66eec (diff)
downloadllvm-2b089e9ae0df0fa44831cc74253b55ea6d43cd41.zip
llvm-2b089e9ae0df0fa44831cc74253b55ea6d43cd41.tar.gz
llvm-2b089e9ae0df0fa44831cc74253b55ea6d43cd41.tar.bz2
[SimplifyCFG] Try to merge edge block when threading (PR55765)
When threading, we always create a new block for the threaded edge (even if the edge is not critical), which will later get folded back into the predecessor if possible. Depending on precise processing order, this separate block may break the detection of trivial cycles in the threading code, which normally avoids infinite threading of loops. Explicitly merge the created edge block into the predecessor to avoid this. Fixes https://github.com/llvm/llvm-project/issues/55765. Differential Revision: https://reviews.llvm.org/D127216
Diffstat (limited to 'llvm/lib/Transforms/Utils/InlineFunction.cpp')
0 files changed, 0 insertions, 0 deletions