1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -loop-unswitch -disable-output 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker %struct.BLEND_MAP = type { i16, i16, i16, i32, %struct.BLEND_MAP_ENTRY* } 4*9880d681SAndroid Build Coastguard Worker %struct.BLEND_MAP_ENTRY = type { float, i8, { [5 x float], [4 x i8] } } 5*9880d681SAndroid Build Coastguard Worker %struct.TPATTERN = type { i16, i16, i16, i32, float, float, float, %struct.WARP*, %struct.TPATTERN*, %struct.BLEND_MAP*, { %struct.anon, [4 x i8] } } 6*9880d681SAndroid Build Coastguard Worker %struct.TURB = type { i16, %struct.WARP*, [3 x double], i32, float, float } 7*9880d681SAndroid Build Coastguard Worker %struct.WARP = type { i16, %struct.WARP* } 8*9880d681SAndroid Build Coastguard Worker %struct.anon = type { float, [3 x double] } 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Workerdefine void @Parse_Pattern() { 11*9880d681SAndroid Build Coastguard Workerentry: 12*9880d681SAndroid Build Coastguard Worker br label %bb1096.outer20 13*9880d681SAndroid Build Coastguard Workerbb671: ; preds = %cond_true1099 14*9880d681SAndroid Build Coastguard Worker br label %bb1096.outer23 15*9880d681SAndroid Build Coastguard Workerbb1096.outer20.loopexit: ; preds = %cond_true1099 16*9880d681SAndroid Build Coastguard Worker %Local_Turb.0.ph24.lcssa = phi %struct.TURB* [ %Local_Turb.0.ph24, %cond_true1099 ] ; <%struct.TURB*> [#uses=1] 17*9880d681SAndroid Build Coastguard Worker br label %bb1096.outer20 18*9880d681SAndroid Build Coastguard Workerbb1096.outer20: ; preds = %bb1096.outer20.loopexit, %entry 19*9880d681SAndroid Build Coastguard Worker %Local_Turb.0.ph22 = phi %struct.TURB* [ undef, %entry ], [ %Local_Turb.0.ph24.lcssa, %bb1096.outer20.loopexit ] ; <%struct.TURB*> [#uses=1] 20*9880d681SAndroid Build Coastguard Worker %tmp1098 = icmp eq i32 0, 0 ; <i1> [#uses=1] 21*9880d681SAndroid Build Coastguard Worker br label %bb1096.outer23 22*9880d681SAndroid Build Coastguard Workerbb1096.outer23: ; preds = %bb1096.outer20, %bb671 23*9880d681SAndroid Build Coastguard Worker %Local_Turb.0.ph24 = phi %struct.TURB* [ %Local_Turb.0.ph22, %bb1096.outer20 ], [ null, %bb671 ] ; <%struct.TURB*> [#uses=2] 24*9880d681SAndroid Build Coastguard Worker br label %bb1096 25*9880d681SAndroid Build Coastguard Workerbb1096: ; preds = %cond_true1099, %bb1096.outer23 26*9880d681SAndroid Build Coastguard Worker br i1 %tmp1098, label %cond_true1099, label %bb1102 27*9880d681SAndroid Build Coastguard Workercond_true1099: ; preds = %bb1096 28*9880d681SAndroid Build Coastguard Worker switch i32 0, label %bb1096.outer20.loopexit [ 29*9880d681SAndroid Build Coastguard Worker i32 161, label %bb671 30*9880d681SAndroid Build Coastguard Worker i32 359, label %bb1096 31*9880d681SAndroid Build Coastguard Worker ] 32*9880d681SAndroid Build Coastguard Workerbb1102: ; preds = %bb1096 33*9880d681SAndroid Build Coastguard Worker %Local_Turb.0.ph24.lcssa1 = phi %struct.TURB* [ %Local_Turb.0.ph24, %bb1096 ] ; <%struct.TURB*> [#uses=0] 34*9880d681SAndroid Build Coastguard Worker ret void 35*9880d681SAndroid Build Coastguard Worker} 36