blob: f289a16f29ebe30fb9a3dde40fbb2b13108bebf4 [file] [log] [blame]
Davide Italianofb4d5c02017-06-05 22:16:41 +00001; Make sure we don't crash because we have a stale dominator tree.
2; PR33266
3; REQUIRES: asserts
Chandler Carruth11134622017-06-06 03:24:22 +00004; RUN: llc -o /dev/null -verify-dom-info %s
Davide Italianofb4d5c02017-06-05 22:16:41 +00005
6target 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
11define void @patatino() local_unnamed_addr {
12bb:
13 br label %bb1
14
15bb1:
16 br label %bb2
17
18bb2:
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
21bb3:
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
24bb4:
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
28bb5:
29 ret void
30}