100f4747bSDan Gohman; RUN: llvm-as < %s | llvm-dis > %t0 200f4747bSDan Gohman; RUN: opt -S < %s > %t1 300f4747bSDan Gohman; RUN: diff %t0 %t1 4*c8eccd11SDuncan P. N. Exon Smith; RUN: verify-uselistorder < %s 500f4747bSDan Gohman; PR6140 600f4747bSDan Gohman 700f4747bSDan Gohman; Make sure the flags are serialized/deserialized properly for both 800f4747bSDan Gohman; forward and backward references. 900f4747bSDan Gohman 1000f4747bSDan Gohmandefine void @foo() nounwind { 1100f4747bSDan Gohmanentry: 1200f4747bSDan Gohman br label %first 1300f4747bSDan Gohman 1400f4747bSDan Gohmansecond: ; preds = %first 1500f4747bSDan Gohman %u = add nuw i32 %a, 0 ; <i32> [#uses=0] 1600f4747bSDan Gohman %s = add nsw i32 %a, 0 ; <i32> [#uses=0] 1700f4747bSDan Gohman %us = add nuw nsw i32 %a, 0 ; <i32> [#uses=0] 1800f4747bSDan Gohman %z = add i32 %a, 0 ; <i32> [#uses=0] 1900f4747bSDan Gohman unreachable 2000f4747bSDan Gohman 2100f4747bSDan Gohmanfirst: ; preds = %entry 2200f4747bSDan Gohman %a = bitcast i32 0 to i32 ; <i32> [#uses=8] 2300f4747bSDan Gohman %uu = add nuw i32 %a, 0 ; <i32> [#uses=0] 2400f4747bSDan Gohman %ss = add nsw i32 %a, 0 ; <i32> [#uses=0] 2500f4747bSDan Gohman %uuss = add nuw nsw i32 %a, 0 ; <i32> [#uses=0] 2600f4747bSDan Gohman %zz = add i32 %a, 0 ; <i32> [#uses=0] 2700f4747bSDan Gohman br label %second 2800f4747bSDan Gohman} 29