; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt -S -verify -iroutliner -ir-outlining-no-cost < %s | FileCheck %s

; Show that we do not extract freeze instructions, since extra handling is
; required to mark any outputs used with freeze.

define void @function1(i32* %a, i32* %b) {
; CHECK-LABEL: @function1(
; CHECK-NEXT:  entry:
; CHECK-NEXT:    br label [[FIRST:%.*]]
; CHECK:       first:
; CHECK-NEXT:    [[C:%.*]] = freeze i32* [[A:%.*]]
; CHECK-NEXT:    call void @outlined_ir_func_0(i32* [[C]], i32* [[B:%.*]])
; CHECK-NEXT:    ret void
; CHECK:       next:
; CHECK-NEXT:    br label [[FIRST]]
;
entry:
  br label %first
first:
  %c = freeze i32* %a
  store i32 2, i32* %c, align 4
  store i32 3, i32* %b, align 4
  ret void
next:
  br label %first
}

define void @function2(i32* %a, i32* %b) {
; CHECK-LABEL: @function2(
; CHECK-NEXT:  entry:
; CHECK-NEXT:    br label [[FIRST:%.*]]
; CHECK:       first:
; CHECK-NEXT:    [[C:%.*]] = freeze i32* [[A:%.*]]
; CHECK-NEXT:    call void @outlined_ir_func_0(i32* [[C]], i32* [[B:%.*]])
; CHECK-NEXT:    ret void
; CHECK:       next:
; CHECK-NEXT:    br label [[FIRST]]
;
entry:
  br label %first
first:
  %c = freeze i32* %a
  store i32 2, i32* %c, align 4
  store i32 3, i32* %b, align 4
  ret void
next:
  br label %first
}
