Assertion `LICM.getLoopToAliasSetMap().empty() && "Didn't free loop alias sets"' failed.

Hi everyone,
Recently, I made some tests for LLVM/Clang/opt, and I found many test cases that can cause a crash bug for opt with “…-loop-unroll -licm…”.
For the truck version of LLVM, the output is “llvm/lib/Transforms/Scalar/LICM.cpp:222: virtual bool {anonymous}::LegacyLICMPass::doFinalization(): Assertion `LICM.getLoopToAliasSetMap().empty() && “Didn’t free loop alias sets”’ failed.”
For example, when compiling the following source code with the pass sequence “-loop-rotate -gvn -prune-eh -loop-unroll -licm”, the bug can be triggered.

small1.bc (2.7 KB)