91 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 22; RUN: opt -S -passes=jump-threading < %s | FileCheck %s3 4; Make sure we don't crash while trying to calculate the object size of an5; empty phi node.6 7define void @test(i16 %arg) {8; CHECK-LABEL: define void @test9; CHECK-SAME: (i16 [[ARG:%.*]]) {10; CHECK-NEXT: start:11; CHECK-NEXT: br label [[BB8THREAD_PRE_SPLIT1:%.*]]12; CHECK: bb8thread-pre-split1:13; CHECK-NEXT: [[LOAD_PR_PR:%.*]] = load i16, ptr null, align 214; CHECK-NEXT: br label [[BB8:%.*]]15; CHECK: bb8:16; CHECK-NEXT: [[LOAD_PR:%.*]] = phi i16 [ [[LOAD_PR_PR]], [[BB8THREAD_PRE_SPLIT1]] ], [ [[LOAD_PR]], [[BB8]] ]17; CHECK-NEXT: [[I:%.*]] = icmp eq i16 [[LOAD_PR]], 018; CHECK-NEXT: br i1 [[I]], label [[BB10:%.*]], label [[BB8]]19; CHECK: bb10:20; CHECK-NEXT: [[I1:%.*]] = getelementptr { i128, i8 }, ptr null, i64 0, i32 121; CHECK-NEXT: store i8 0, ptr [[I1]], align 822; CHECK-NEXT: [[I2:%.*]] = load i128, ptr null, align 823; CHECK-NEXT: [[I3:%.*]] = icmp eq i128 [[I2]], 024; CHECK-NEXT: br i1 [[I3]], label [[BB8THREAD_PRE_SPLIT1]], label [[BB8THREAD_PRE_SPLIT1]]25;26start:27 br label %bb528 29bb20: ; preds = %bb19, %bb17, %bb17, %bb14, %bb1330 ret void31 32bb5: ; preds = %bb16, %bb10, %bb10, %bb8, %start33 %_11.0 = phi ptr [ %_11.5, %bb16 ], [ null, %bb10 ], [ null, %bb8 ], [ null, %bb10 ], [ null, %start ]34 br label %bb835 36bb8: ; preds = %bb15, %bb9, %bb537 %load = load i16, ptr null, align 238 %i = icmp eq i16 %load, 039 br i1 %i, label %bb9, label %bb540 41bb9: ; preds = %bb842 switch i16 %load, label %bb8 [43 i16 1, label %bb1044 i16 0, label %bb1345 ]46 47bb10: ; preds = %bb14, %bb13, %bb948 %_2.7 = phi ptr [ %_11.0, %bb14 ], [ %_11.0, %bb13 ], [ null, %bb9 ]49 %i1 = getelementptr { i128, i8 }, ptr %_11.0, i64 0, i32 150 store i8 0, ptr %i1, align 851 %i2 = load i128, ptr %_2.7, align 852 %i3 = icmp eq i128 %i2, 053 br i1 %i3, label %bb5, label %bb554 55bb13: ; preds = %bb14, %bb956 switch i128 0, label %bb20 [57 i128 0, label %bb1058 i128 1, label %bb1459 ]60 61bb14: ; preds = %bb19, %bb1362 switch i16 %arg, label %bb20 [63 i16 0, label %bb1364 i16 2, label %bb1065 i16 1, label %bb1566 ]67 68bb15: ; preds = %bb1469 switch i16 %arg, label %bb16 [70 i16 1, label %bb871 i16 0, label %bb1772 ]73 74bb16: ; preds = %bb19, %bb1575 %_11.5 = phi ptr [ null, %bb15 ], [ null, %bb19 ]76 br label %bb577 78bb17: ; preds = %bb19, %bb1579 switch i16 %arg, label %bb20 [80 i16 0, label %bb2081 i16 1, label %bb1982 ]83 84bb19: ; preds = %bb1785 switch i16 %arg, label %bb16 [86 i16 0, label %bb1487 i16 1, label %bb2088 i16 6570, label %bb1789 ]90}91