Skip to content

Commit e6b8d2a

Browse files
committed
[ValueTracking] Add commuted tests. NFC.
1 parent 6da191e commit e6b8d2a

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

llvm/test/Transforms/InstCombine/is_fpclass.ll

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3937,6 +3937,23 @@ entry:
39373937
ret i1 %test
39383938
}
39393939

3940+
define i1 @minnum_qnan_commuted(i32 %x, float nofpclass(nnorm nsub nzero ninf nan) %y) {
3941+
; CHECK-LABEL: @minnum_qnan_commuted(
3942+
; CHECK-NEXT: entry:
3943+
; CHECK-NEXT: [[QNAN_BITS:%.*]] = or i32 [[X:%.*]], -5938
3944+
; CHECK-NEXT: [[QNAN:%.*]] = bitcast i32 [[QNAN_BITS]] to float
3945+
; CHECK-NEXT: [[MIN:%.*]] = call float @llvm.minnum.f32(float [[Y:%.*]], float [[QNAN]])
3946+
; CHECK-NEXT: [[TEST:%.*]] = call i1 @llvm.is.fpclass.f32(float [[MIN]], i32 64)
3947+
; CHECK-NEXT: ret i1 [[TEST]]
3948+
;
3949+
entry:
3950+
%qnan_bits = or i32 %x, -5938
3951+
%qnan = bitcast i32 %qnan_bits to float
3952+
%min = call float @llvm.minnum.f32(float %y, float %qnan)
3953+
%test = call i1 @llvm.is.fpclass.f32(float %min, i32 64)
3954+
ret i1 %test
3955+
}
3956+
39403957
declare i1 @llvm.is.fpclass.f32(float, i32 immarg)
39413958
declare i1 @llvm.is.fpclass.f64(double, i32 immarg)
39423959
declare <2 x i1> @llvm.is.fpclass.v2f32(<2 x float>, i32 immarg)

0 commit comments

Comments
 (0)