1 ; Make sure we don't crash because we have a stale dominator tree. 2 ; PR33266 3 ; REQUIRES: asserts 4 ; RUN: llc -o /dev/null -verify-dom-info %s 5 6 target triple = "x86_64-unknown-linux-gnu" 7 8 @global = external global [8 x [8 x [4 x i8]]], align 2 9 @global.1 = external global { i8, [3 x i8] }, align 4 10 11 define void @patatino() local_unnamed_addr { 12 bb: 13 br label %bb1 14 15 bb1: 16 br label %bb2 17 18 bb2: 19 br i1 icmp ne (i8* getelementptr inbounds ({ i8, [3 x i8] }, { i8, [3 x i8] }* @global.1, i64 0, i32 0), i8* getelementptr inbounds ([8 x [8 x [4 x i8]]], [8 x [8 x [4 x i8]]]* @global, i64 0, i64 6, i64 6, i64 2)), label %bb4, label %bb3 20 21 bb3: 22 br i1 icmp eq (i64 ashr (i64 shl (i64 zext (i32 srem (i32 7, i32 zext (i1 icmp eq (i8* getelementptr inbounds ({ i8, [3 x i8] }, { i8, [3 x i8] }* @global.1, i64 0, i32 0), i8* getelementptr inbounds ([8 x [8 x [4 x i8]]], [8 x [8 x [4 x i8]]]* @global, i64 0, i64 6, i64 6, i64 2)) to i32)) to i64), i64 56), i64 56), i64 0), label %bb5, label %bb4 23 24 bb4: 25 %tmp = phi i64 [ ashr (i64 shl (i64 zext (i32 srem (i32 7, i32 zext (i1 icmp eq (i8* getelementptr inbounds ({ i8, [3 x i8] }, { i8, [3 x i8] }* @global.1, i64 0, i32 0), i8* getelementptr inbounds ([8 x [8 x [4 x i8]]], [8 x [8 x [4 x i8]]]* @global, i64 0, i64 6, i64 6, i64 2)) to i32)) to i64), i64 56), i64 56), %bb3 ], [ 7, %bb2 ] 26 ret void 27 28 bb5: 29 ret void 30 } 31