1; Tests loop-simplify does not move the loop metadata, because
2; the loopexit block is not the latch of the loop _bb6.
3
4; FIXME(#55416): The metadata should not move.
5
6; RUN: opt < %s -passes=loop-simplify -S | FileCheck %s
7; CHECK-LABEL: loop.header.loopexit:
8; CHECK: br label %loop.header, !llvm.loop !0
9; CHECK-LABEL: loop.latch:
10; CHECK-NOT: br i1 %p, label %loop.latch, label %loop.header.loopexit, !llvm.loop !0
11
12define void @func(i1 %p) {
13entry:
14  br label %loop.header
15
16loop.header:
17  br i1 %p, label %bb1, label %exit
18
19bb1:
20  br i1 %p, label %bb2, label %bb3
21
22bb2:
23  br label %bb3
24
25bb3:
26  br label %loop.latch
27
28loop.latch:
29  br i1 %p, label %loop.latch, label %loop.header, !llvm.loop !0
30
31exit:
32  ret void
33}
34
35!0 = distinct !{!0, !1}
36!1 = !{!"llvm.loop.mustprogress"}
37