; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5
; RUN: opt -S -passes=instcombine < %s | FileCheck %s

; Make sure we don't crash in this case.
@g = global i32 0

define i1 @foo() {
; CHECK-LABEL: define i1 @foo() {
; CHECK-NEXT:  [[ENTRY:.*:]]
; CHECK-NEXT:    br i1 ptrtoint (ptr @g to i1), label %[[IF_THEN:.*]], label %[[IF_ELSE:.*]]
; CHECK:       [[IF_THEN]]:
; CHECK-NEXT:    ret i1 true
; CHECK:       [[IF_ELSE]]:
; CHECK-NEXT:    ret i1 false
;
entry:
  br i1 ptrtoint (ptr @g to i1), label %if.then, label %if.else

if.then:
  ret i1 true

if.else:
  ret i1 false
}

define i1 @bar() {
; CHECK-LABEL: define i1 @bar() {
; CHECK-NEXT:  [[ENTRY:.*:]]
; CHECK-NEXT:    br i1 ptrtoint (ptr @g to i1), label %[[IF_THEN:.*]], label %[[IF_ELSE:.*]]
; CHECK:       [[IF_THEN]]:
; CHECK-NEXT:    ret i1 true
; CHECK:       [[IF_ELSE]]:
; CHECK-NEXT:    ret i1 false
;
entry:
  br i1 ptrtoint (ptr @g to i1), label %if.then, label %if.else

if.then:
  ret i1 true

if.else:
  ret i1 false
}
