; RUN: opt < %s -passes=indvars

; An invoke has a result value which is used in an "Interesting"
; expression inside the loop. IndVars should be able to rewrite
; the expression in the correct place.

target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32"
target triple = "i386-pc-linux-gnu"
  %struct.string___XUB = type { i32, i32 }
  %struct.string___XUP = type { ptr, ptr }
@.str7 = external constant [24 x i8]            ; <ptr> [#uses=1]
@C.17.316 = external constant %struct.string___XUB              ; <ptr> [#uses=1]

define void @_ada_c35503g() personality ptr @__gxx_personality_v0 {
entry:
  br label %bb

bb:             ; preds = %bb, %entry
  br i1 false, label %bb65.loopexit, label %bb

bb65.loopexit:          ; preds = %bb
  br label %bb123

bb123:          ; preds = %bb178, %bb65.loopexit
  %i.0 = phi i32 [ %3, %bb178 ], [ 0, %bb65.loopexit ]          ; <i32> [#uses=3]
  %0 = invoke i32 @report__ident_int(i32 1)
      to label %invcont127 unwind label %lpad266                ; <i32> [#uses=1]

invcont127:             ; preds = %bb123
  %1 = sub i32 %i.0, %0         ; <i32> [#uses=1]
  %2 = icmp eq i32 0, %1                ; <i1> [#uses=1]
  br i1 %2, label %bb178, label %bb128

bb128:          ; preds = %invcont127
  invoke void @system__img_int__image_integer(ptr noalias sret(%struct.string___XUP) null, i32 %i.0)
      to label %invcont129 unwind label %lpad266

invcont129:             ; preds = %bb128
  invoke void @system__string_ops__str_concat(ptr noalias sret(%struct.string___XUP) null, ptr @.str7, ptr @C.17.316, ptr null, ptr null)
      to label %invcont138 unwind label %lpad266

invcont138:             ; preds = %invcont129
  unreachable

bb178:          ; preds = %invcont127
  %3 = add i32 %i.0, 1          ; <i32> [#uses=1]
  br label %bb123

lpad266:                ; preds = %invcont129, %bb128, %bb123
  %exn = landingpad {ptr, i32}
            cleanup
  unreachable
}

declare i32 @__gxx_personality_v0(...)

declare void @system__img_int__image_integer(ptr noalias sret(%struct.string___XUP), i32)

declare void @system__string_ops__str_concat(ptr noalias sret(%struct.string___XUP), ptr, ptr, ptr, ptr)

declare i32 @report__ident_int(i32)
