; RUN: opt %loadPolly -polly-codegen < %s
target 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"

@win193 = external global [4 x [36 x double]], align 32 ; <ptr> [#uses=3]
@sb_sample = external global [2 x [2 x [18 x [32 x double]]]], align 32 ; <ptr> [#uses=2]

define void @mdct_sub48() nounwind {
entry:
  br i1 undef, label %bb, label %bb54

bb:                                               ; preds = %entry
  br label %bb54

bb3:                                              ; preds = %bb50
  br label %bb8

bb4:                                              ; preds = %bb8
  br label %bb8

bb8:                                              ; preds = %bb4, %bb3
  br i1 undef, label %bb4, label %bb9

bb9:                                              ; preds = %bb8
  br label %bb48

bb25:                                             ; preds = %bb48
  br i1 false, label %bb26, label %bb27

bb26:                                             ; preds = %bb48, %bb25
  br label %bb37

bb27:                                             ; preds = %bb25
  br i1 undef, label %bb32, label %bb35

bb32:                                             ; preds = %bb27
  br label %bb37

bb34:                                             ; preds = %bb35
  %0 = getelementptr inbounds [36 x double], ptr undef, i64 0, i64 0 ; <ptr> [#uses=0]
  %1 = getelementptr inbounds [18 x [32 x double]], ptr undef, i64 0, i64 0 ; <ptr> [#uses=1]
  %2 = getelementptr inbounds [32 x double], ptr %1, i64 0, i64 0 ; <ptr> [#uses=0]
  %3 = getelementptr inbounds [36 x double], ptr undef, i64 0, i64 0 ; <ptr> [#uses=0]
  %4 = sub nsw i32 17, %k.4                       ; <i32> [#uses=1]
  %5 = getelementptr inbounds [2 x [2 x [18 x [32 x double]]]], ptr @sb_sample, i64 0, i64 0 ; <ptr> [#uses=1]
  %6 = getelementptr inbounds [2 x [18 x [32 x double]]], ptr %5, i64 0, i64 0 ; <ptr> [#uses=1]
  %7 = sext i32 %4 to i64                         ; <i64> [#uses=1]
  %8 = getelementptr inbounds [18 x [32 x double]], ptr %6, i64 0, i64 %7 ; <ptr> [#uses=1]
  %9 = getelementptr inbounds [32 x double], ptr %8, i64 0, i64 0 ; <ptr> [#uses=1]
  %10 = load double, ptr %9, align 8                  ; <double> [#uses=0]
  %11 = fsub double 0.000000e+00, undef           ; <double> [#uses=1]
  %12 = getelementptr inbounds double, ptr getelementptr inbounds ([4 x [36 x double]], ptr @win193, i64 0, i64 2, i64 4), i64 0 ; <ptr> [#uses=1]
  store double %11, ptr %12, align 8
  %13 = add nsw i32 %k.4, 9                       ; <i32> [#uses=1]
  %14 = add nsw i32 %k.4, 18                      ; <i32> [#uses=1]
  %15 = getelementptr inbounds [4 x [36 x double]], ptr @win193, i64 0, i64 0 ; <ptr> [#uses=1]
  %16 = sext i32 %14 to i64                       ; <i64> [#uses=1]
  %17 = getelementptr inbounds [36 x double], ptr %15, i64 0, i64 %16 ; <ptr> [#uses=1]
  %18 = load double, ptr %17, align 8                 ; <double> [#uses=0]
  %19 = sext i32 %k.4 to i64                      ; <i64> [#uses=1]
  %20 = getelementptr inbounds [18 x [32 x double]], ptr undef, i64 0, i64 %19 ; <ptr> [#uses=1]
  %21 = sext i32 %band.2 to i64                   ; <i64> [#uses=1]
  %22 = getelementptr inbounds [32 x double], ptr %20, i64 0, i64 %21 ; <ptr> [#uses=1]
  %23 = load double, ptr %22, align 8                 ; <double> [#uses=0]
  %24 = sext i32 %39 to i64                       ; <i64> [#uses=1]
  %25 = getelementptr inbounds [4 x [36 x double]], ptr @win193, i64 0, i64 %24 ; <ptr> [#uses=1]
  %26 = getelementptr inbounds [36 x double], ptr %25, i64 0, i64 0 ; <ptr> [#uses=1]
  %27 = load double, ptr %26, align 8                 ; <double> [#uses=0]
  %28 = sub nsw i32 17, %k.4                      ; <i32> [#uses=1]
  %29 = getelementptr inbounds [2 x [2 x [18 x [32 x double]]]], ptr @sb_sample, i64 0, i64 0 ; <ptr> [#uses=1]
  %30 = getelementptr inbounds [2 x [18 x [32 x double]]], ptr %29, i64 0, i64 0 ; <ptr> [#uses=1]
  %31 = sext i32 %28 to i64                       ; <i64> [#uses=1]
  %32 = getelementptr inbounds [18 x [32 x double]], ptr %30, i64 0, i64 %31 ; <ptr> [#uses=1]
  %33 = getelementptr inbounds [32 x double], ptr %32, i64 0, i64 0 ; <ptr> [#uses=1]
  %34 = load double, ptr %33, align 8                 ; <double> [#uses=0]
  %35 = sext i32 %13 to i64                       ; <i64> [#uses=1]
  %36 = getelementptr inbounds double, ptr getelementptr inbounds ([4 x [36 x double]], ptr @win193, i64 0, i64 2, i64 4), i64 %35 ; <ptr> [#uses=1]
  store double 0.000000e+00, ptr %36, align 8
  %37 = sub nsw i32 %k.4, 1                       ; <i32> [#uses=1]
  br label %bb35

bb35:                                             ; preds = %bb34, %bb27
  %k.4 = phi i32 [ %37, %bb34 ], [ 8, %bb27 ]     ; <i32> [#uses=6]
  br i1 undef, label %bb34, label %bb36

bb36:                                             ; preds = %bb35
  unreachable

bb37:                                             ; preds = %bb32, %bb26
  %38 = add nsw i32 %band.2, 1                    ; <i32> [#uses=1]
  br label %bb48

bb48:                                             ; preds = %bb37, %bb9
  %band.2 = phi i32 [ %38, %bb37 ], [ 0, %bb9 ]   ; <i32> [#uses=2]
  %39 = load i32, ptr null, align 8                   ; <i32> [#uses=1]
  br i1 undef, label %bb26, label %bb25

bb50:                                             ; preds = %bb54
  br i1 undef, label %bb3, label %bb51

bb51:                                             ; preds = %bb50
  br i1 undef, label %bb52, label %bb53

bb52:                                             ; preds = %bb51
  unreachable

bb53:                                             ; preds = %bb51
  br label %bb54

bb54:                                             ; preds = %bb53, %bb, %entry
  br i1 undef, label %bb50, label %return

return:                                           ; preds = %bb54
  ret void
}
