; RUN: opt < %s -S -speculative-execution \
; RUN:   -spec-exec-max-speculation-cost 4 -spec-exec-max-not-hoisted 3 \
; RUN:   | FileCheck %s

; CHECK-LABEL: @ifThen_shuffle(
; CHECK: shufflevector
; CHECK: br i1 true
define void @ifThen_shuffle() {
  br i1 true, label %a, label %b

a:
  %x = shufflevector <2 x float> undef, <2 x float> poison, <2 x i32> zeroinitializer
  br label %b

b:
  ret void
}

; CHECK-LABEL: @ifThen_extract(
; CHECK: extractelement
; CHECK: br i1 true
define void @ifThen_extract() {
  br i1 true, label %a, label %b

a:
  %x = extractelement <2 x float> undef, i32 1
  br label %b

b:
  ret void
}


; CHECK-LABEL: @ifThen_insert(
; CHECK: insertelement
; CHECK: br i1 true
define void @ifThen_insert() {
  br i1 true, label %a, label %b

a:
  %x = insertelement <2 x float> poison, float undef, i32 1
  br label %b

b:
  ret void
}

; CHECK-LABEL: @ifThen_extractvalue(
; CHECK: extractvalue
; CHECK: br i1 true
define void @ifThen_extractvalue() {
  br i1 true, label %a, label %b

a:
  %x = extractvalue { i32, i32 } undef, 0
  br label %b

b:
  ret void
}

; CHECK-LABEL: @ifThen_insertvalue(
; CHECK: insertvalue
; CHECK: br i1 true
define void @ifThen_insertvalue() {
  br i1 true, label %a, label %b

a:
  %x = insertvalue { i32, i32 } undef, i32 undef, 0
  br label %b

b:
  ret void
}

; CHECK-LABEL: @ifThen_freeze(
; CHECK: freeze
; CHECK: br i1 true
define void @ifThen_freeze() {
  br i1 true, label %a, label %b

a:
  %x = freeze i32 undef
  br label %b

b:
  ret void
}
