Follow up to d0858bffa11, add missing REQUIRES x86
[llvm-project.git] / llvm / test / Transforms / IndVarSimplify / indirectbr.ll
blob9bb029651cb36d91999107f0b33eb90fb6aadfcc
1 ; RUN: opt < %s -passes=indvars -S -disable-output
3 ; PR5758
4 define zeroext i1 @foo() nounwind {
5 entry:
6   indirectbr ptr undef, [label %"202", label %"133"]
8 "132":                                            ; preds = %"133"
9   %0 = add i32 %1, 1                              ; <i32> [#uses=1]
10   br label %"133"
12 "133":                                            ; preds = %"132", %entry
13   %1 = phi i32 [ %0, %"132" ], [ 0, %entry ]      ; <i32> [#uses=2]
14   %2 = icmp eq i32 %1, 4                          ; <i1> [#uses=1]
15   br i1 %2, label %"134", label %"132"
17 "134":                                            ; preds = %"133"
18   ret i1 true
20 "202":                                            ; preds = %entry
21   ret i1 false
24 ; PR7333
25 define void @__atomvec_module__put_vrml_bonds() nounwind {
26 bb7.preheader:                                    ; preds = %entry
27   indirectbr ptr undef, [label %bb14, label %bb16]
29 bb14:                                             ; preds = %bb14, %bb7.preheader
30   br label %bb16
32 bb16:                                             ; preds = %bb16, %bb14, %bb7.preheader
33   %S.31.0 = phi i64 [ %3, %bb16 ], [ 1, %bb7.preheader ], [ 1, %bb14 ] ; <i64> [#uses=2]
34   %0 = add nsw i64 %S.31.0, -1                    ; <i64> [#uses=1]
35   %1 = getelementptr inbounds [3 x double], ptr undef, i64 0, i64 %0 ; <ptr> [#uses=1]
36   %2 = load double, ptr %1, align 8                   ; <double> [#uses=0]
37   %3 = add nsw i64 %S.31.0, 1                     ; <i64> [#uses=1]
38   br label %bb16