; Test that this test case does not abort after the folding of load -> add ->
; store into an alsi. This folding is suppose to not happen as it would
; introduce a loop in the DAG.
;
; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z13 -disable-basic-aa -consthoist-gep | FileCheck %s

@g_295 = external dso_local unnamed_addr global i32, align 4
@g_672 = external dso_local unnamed_addr global i64, align 8
@g_1484 = external dso_local global <{ i8, i64, { i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i32, i8, i8, [2 x i8], i8, i8, i8, i8, i8, i8, i8, i8, i32, i8, i8, i8 }, i32 }>, align 2

define void @fun() {
; CHECK-LABEL: fun:

bb:
  br label %bb1

bb1:                                              ; preds = %bb1, %bb
  store i32 2, i32* getelementptr inbounds (<{ i8, i64, { i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i32, i8, i8, [2 x i8], i8, i8, i8, i8, i8, i8, i8, i8, i32, i8, i8, i8 }, i32 }>, <{ i8, i64, { i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i32, i8, i8, [2 x i8], i8, i8, i8, i8, i8, i8, i8, i8, i32, i8, i8, i8 }, i32 }>* @g_1484, i64 0, i32 2, i32 16)
  %tmp = icmp slt i32 undef, 3
  br i1 %tmp, label %bb1, label %bb2

bb2:                                              ; preds = %bb1
  %tmp3 = load i32, i32* getelementptr inbounds (<{ i8, i64, { i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i32, i8, i8, [2 x i8], i8, i8, i8, i8, i8, i8, i8, i8, i32, i8, i8, i8 }, i32 }>, <{ i8, i64, { i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i32, i8, i8, [2 x i8], i8, i8, i8, i8, i8, i8, i8, i8, i32, i8, i8, i8 }, i32 }>* @g_1484, i64 0, i32 2, i32 28)
  %tmp4 = load i64, i64* @g_672
  %tmp5 = add i64 %tmp4, 1
  store i64 %tmp5, i64* @g_672
  %tmp6 = icmp eq i64 %tmp5, 0
  %tmp7 = zext i1 %tmp6 to i32
  %tmp8 = icmp ult i32 %tmp3, %tmp7
  %tmp9 = zext i1 %tmp8 to i32
  store i32 %tmp9, i32* @g_295
  ret void
}

