| ; RUN: llvm-as < %s | llvm-dis | FileCheck %s | |
| ; Valid "llvm.loop.align" metadata round-trips through the assembler. | |
| define void @pow2() { | |
| br label %body | |
| body: | |
| br i1 0, label %body, label %exit, !llvm.loop !0 | |
| exit: | |
| ret void | |
| } | |
| !0 = distinct !{!0, !1} | |
| !1 = !{!"llvm.loop.align", i32 64} | |
| define void @one() { | |
| br label %body | |
| body: | |
| br i1 0, label %body, label %exit, !llvm.loop !2 | |
| exit: | |
| ret void | |
| } | |
| !2 = distinct !{!2, !3} | |
| !3 = !{!"llvm.loop.align", i32 1} | |
| ; CHECK: [[LOOP0:![0-9]+]] = distinct !{[[LOOP0]], [[ALIGN0:![0-9]+]]} | |
| ; CHECK: [[ALIGN0]] = !{!"llvm.loop.align", i32 64} | |
| ; CHECK: [[LOOP2:![0-9]+]] = distinct !{[[LOOP2]], [[ALIGN2:![0-9]+]]} | |
| ; CHECK: [[ALIGN2]] = !{!"llvm.loop.align", i32 1} |