52 lines · plain
1; RUN: llc -mtriple=s390x-linux-gnu -mcpu=z13 -misched-cutoff=1 -o /dev/null < %s2; REQUIRES: asserts3; -misched=shuffle isn't available in NDEBUG builds!4 5; Test that the post-ra scheduler does not crash with -misched-cutoff.6 7@g_184 = external dso_local global i16, align 28@g_294 = external dso_local global [1 x [9 x ptr]], align 89 10define void @fun() {11bb:12 br label %bb113 14bb1: ; preds = %bb1, %bb15 %i = phi i64 [ 0, %bb ], [ %i22, %bb1 ]16 %i2 = trunc i64 %i to i3217 %i3 = lshr i32 %i2, 118 %i4 = select i1 false, i32 %i3, i32 undef19 %i5 = lshr i32 %i4, 120 %i6 = xor i32 %i5, -30667491221 %i7 = select i1 undef, i32 %i5, i32 %i622 %i8 = lshr i32 %i7, 123 %i9 = xor i32 %i8, -30667491224 %i10 = select i1 undef, i32 %i8, i32 %i925 %i11 = lshr i32 %i10, 126 %i12 = xor i32 %i11, -30667491227 %i13 = select i1 undef, i32 %i11, i32 %i1228 %i14 = lshr i32 %i13, 129 %i15 = select i1 false, i32 %i14, i32 undef30 %i16 = lshr i32 %i15, 131 %i17 = select i1 false, i32 %i16, i32 undef32 %i18 = lshr i32 %i17, 133 %i19 = select i1 false, i32 %i18, i32 undef34 %i20 = lshr i32 %i19, 135 %i21 = select i1 false, i32 %i20, i32 undef36 store i32 %i21, ptr undef, align 437 %i22 = add nuw nsw i64 %i, 138 %i23 = icmp ult i64 %i, 25539 br i1 %i23, label %bb1, label %bb2440 41bb24: ; preds = %bb142 %i25 = load volatile i16, ptr undef43 store ptr null, ptr undef, align 844 store i32 -10, ptr undef, align 445 store i32 -10, ptr null, align 446 store i32 -10, ptr undef, align 447 store i16 0, ptr @g_184, align 248 store ptr null, ptr getelementptr inbounds ([1 x [9 x ptr]], ptr @g_294, i64 0, i64 0, i64 2), align 849 store ptr null, ptr getelementptr inbounds ([1 x [9 x ptr]], ptr @g_294, i64 0, i64 0, i64 5), align 850 unreachable51}52