forked from OSchip/llvm-project
parent
f91b22ce2c
commit
f3b94694c0
|
@ -142,3 +142,28 @@ exit:
|
|||
ret i1 true
|
||||
}
|
||||
|
||||
; Conflicting constants (i.e. isOverdefined result)
|
||||
; NOTE: Using doubles in this version is a bit of a hack. This
|
||||
; is to get around the fact that all integers (including constants
|
||||
; and non-constants) are actually represented as constant-ranges.
|
||||
define i1 @test4(i32* %p, i32 %qval, i1 %unknown) {
|
||||
; CHECK-LABEL: test4
|
||||
%pval = load i32, i32* %p
|
||||
%cmp1 = icmp slt i32 %pval, 255
|
||||
br i1 %cmp1, label %next, label %exit
|
||||
|
||||
next:
|
||||
%min = select i1 %unknown, double 1.0, double 0.0
|
||||
;; TODO: This pointless branch shouldn't be neccessary
|
||||
br label %next2
|
||||
next2:
|
||||
; CHECK-LABEL: next2
|
||||
; CHECK: ret i1 %res
|
||||
%res = fcmp oeq double %min, 300.0
|
||||
ret i1 %res
|
||||
|
||||
exit:
|
||||
; CHECK-LABEL: exit:
|
||||
; CHECK: ret i1 true
|
||||
ret i1 true
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue