1; RUN: opt %loadNPMPolly '-passes=print<polly-function-scops>' -disable-output < %s 2 3; Bug description: Alias Analysis thinks IntToPtrInst aliases with alloca instructions created by IndependentBlocks Pass. 4; This will trigger the assertion when we are verifying the SCoP after IndependentBlocks. 5 6target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" 7 8%struct.precisionType = type { i16, i16, i16, i8, [1 x i16] } 9 10define void @main() nounwind { 11entry: 12 br label %bb1.i198.i 13 14bb1.i198.i: ; preds = %bb.i197.i, %psetq.exit196.i 15 %tmp51.i = inttoptr i64 0 to ptr 16 br i1 undef, label %bb1.i210.i, label %bb.i209.i 17 18bb.i209.i: ; preds = %bb1.i198.i 19 br label %bb1.i210.i 20 21bb1.i210.i: ; preds = %bb.i209.i, %bb1.i198.i 22 %0 = icmp eq i64 0, 0 23 br i1 %0, label %bb1.i216.i, label %bb.i215.i 24 25bb.i215.i: ; preds = %bb1.i210.i 26 store i16 undef, ptr %tmp51.i, align 2 27 br label %bb1.i216.i 28 29bb1.i216.i: ; preds = %bb.i215.i, %bb1.i210.i 30 br i1 undef, label %psetq.exit220.i, label %bb2.i217.i 31 32bb2.i217.i: ; preds = %bb1.i216.i 33 br i1 undef, label %bb3.i218.i, label %psetq.exit220.i 34 35bb3.i218.i: ; preds = %bb2.i217.i 36 br label %psetq.exit220.i 37 38psetq.exit220.i: ; preds = %bb3.i218.i, %bb2.i217.i, %bb1.i216.i 39 br i1 undef, label %bb14.i76, label %bb15.i77 40 41bb14.i76: ; preds = %psetq.exit220.i 42 unreachable 43 44bb15.i77: ; preds = %psetq.exit220.i 45 br i1 %0, label %psetq.exit238.i, label %bb2.i235.i 46 47bb2.i235.i: ; preds = %bb15.i77 48 br i1 undef, label %bb3.i236.i, label %psetq.exit238.i 49 50bb3.i236.i: ; preds = %bb2.i235.i 51 unreachable 52 53psetq.exit238.i: ; preds = %bb2.i235.i, %bb15.i77 54 unreachable 55 56bb56.i.loopexit: ; preds = %psetq.exit172.i 57 unreachable 58} 59