; RUN: opt %loadPolly -polly-detect-unprofitable -S -polly-code-generator=isl -polly-codegen < %s | FileCheck %s
;
; Check that we do not crash as described here: http://llvm.org/PR21167
;
; In case the pieceweise affine function used to create an isl_ast_expr
; had empty cases (e.g., with contradicting constraints on the
; parameters), it was possible that the condition of the isl_ast_expr
; select was not a comparison but a constant (thus of type i64).
; However, we shouldn't crash in such a case :)
;
; CHECK: polly.split_new_and_old
;
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"

; Function Attrs: nounwind uwtable
define void @dradb4(i32 %ido, i32 %l1, float* %cc, float* %ch, float* %wa1, float* %wa3) #0 {
entry:
  %mul = mul nsw i32 %l1, %ido
  br i1 undef, label %for.end256, label %if.end

if.end:                                           ; preds = %entry
  br i1 undef, label %L105, label %for.cond45.preheader

for.cond45.preheader:                             ; preds = %if.end
  br i1 undef, label %for.body47, label %for.end198

for.body47:                                       ; preds = %for.inc096, %for.cond45.preheader
  br i1 undef, label %for.body53.lr.ph, label %for.inc096

for.body53.lr.ph:                                 ; preds = %for.body47
  br label %for.body53

for.body53:                                       ; preds = %for.body53, %for.body53.lr.ph
  %t7.014 = phi i32 [ 0, %for.body53.lr.ph ], [ %add58, %for.body53 ]
  %i.013 = phi i32 [ 2, %for.body53.lr.ph ], [ %add193, %for.body53 ]
  %add58 = add nsw i32 %t7.014, 2
  %arrayidx70 = getelementptr inbounds float, float* %cc, i64 0
  %arrayidx72 = getelementptr inbounds float, float* %cc, i64 0
  %arrayidx77 = getelementptr inbounds float, float* %cc, i64 0
  %arrayidx81 = getelementptr inbounds float, float* %cc, i64 0
  %arrayidx84 = getelementptr inbounds float, float* %cc, i64 0
  %arrayidx95 = getelementptr inbounds float, float* %cc, i64 0
  %arrayidx105 = getelementptr inbounds float, float* %cc, i64 0
  %arrayidx110 = getelementptr inbounds float, float* %ch, i64 0
  store float undef, float* %arrayidx110, align 4
  %arrayidx122 = getelementptr inbounds float, float* %wa1, i64 0
  %add129 = add nsw i32 %add58, %mul
  %idxprom142 = sext i32 %add129 to i64
  %arrayidx143 = getelementptr inbounds float, float* %ch, i64 %idxprom142
  store float undef, float* %arrayidx143, align 4
  %add153 = add nsw i32 %add129, %mul
  %arrayidx170 = getelementptr inbounds float, float* %wa3, i64 0
  %arrayidx174 = getelementptr inbounds float, float* %wa3, i64 0
  %add177 = add nsw i32 %add153, %mul
  %sub178 = add nsw i32 %add177, -1
  %idxprom179 = sext i32 %sub178 to i64
  %arrayidx180 = getelementptr inbounds float, float* %ch, i64 %idxprom179
  store float undef, float* %arrayidx180, align 4
  %arrayidx183 = getelementptr inbounds float, float* %wa3, i64 0
  %0 = load float, float* %arrayidx183, align 4
  %mul184 = fmul float undef, %0
  %add189 = fadd float %mul184, 0.000000e+00
  %idxprom190 = sext i32 %add177 to i64
  %arrayidx191 = getelementptr inbounds float, float* %ch, i64 %idxprom190
  store float %add189, float* %arrayidx191, align 4
  %add193 = add nsw i32 %i.013, 2
  %cmp52 = icmp slt i32 %add193, %ido
  br i1 %cmp52, label %for.body53, label %for.inc096

for.inc096:                                       ; preds = %for.body53, %for.body47
  br i1 undef, label %for.body47, label %for.end198

for.end198:                                       ; preds = %for.inc096, %for.cond45.preheader
  br i1 false, label %for.end256, label %L105

L105:                                             ; preds = %for.end198, %if.end
  br label %for.end256

for.end256:                                       ; preds = %L105, %for.end198, %entry
  ret void
}
