@@ -591,25 +591,24 @@ entry:
591
591
; Make sure if looking through the fabs finds a different source
592
592
; value, we still identify a test mask by ignoring the fabs
593
593
define half @assume_fcmp_fabs_with_other_fabs_assume_fallback (half %arg ) {
594
- ; CHECK-LABEL: define nofpclass(all ) half @assume_fcmp_fabs_with_other_fabs_assume_fallback
595
- ; CHECK-SAME: (half returned nofpclass(all ) [[ARG:%.*]]) {
594
+ ; CHECK-LABEL: define nofpclass(nan inf norm ) half @assume_fcmp_fabs_with_other_fabs_assume_fallback
595
+ ; CHECK-SAME: (half returned nofpclass(nan inf norm ) [[ARG:%.*]]) {
596
596
; CHECK-NEXT: entry:
597
- ; CHECK-NEXT: [[FABS:%.*]] = call half @llvm.fabs.f16(half nofpclass(all) [[ARG]]) #[[ATTR14]]
598
- ; CHECK-NEXT: [[ONE_INF:%.*]] = fcmp oeq half [[ARG]], 0xH7C00
599
- ; CHECK-NEXT: call void @llvm.assume(i1 noundef [[ONE_INF]]) #[[ATTR14]]
597
+ ; CHECK-NEXT: [[FABS:%.*]] = call nofpclass(nan inf nzero sub norm) half @llvm.fabs.f16(half nofpclass(nan inf norm) [[ARG]]) #[[ATTR14]]
598
+ ; CHECK-NEXT: call void @llvm.assume(i1 noundef true) #[[ATTR14]]
600
599
; CHECK-NEXT: [[UNRELATED_FABS:%.*]] = fcmp oeq half [[FABS]], 0xH0000
601
600
; CHECK-NEXT: call void @llvm.assume(i1 noundef [[UNRELATED_FABS]]) #[[ATTR14]]
602
601
; CHECK-NEXT: [[IS_SUBNORMAL:%.*]] = fcmp olt half [[FABS]], 0xH0400
603
602
; CHECK-NEXT: call void @llvm.assume(i1 noundef [[IS_SUBNORMAL]]) #[[ATTR14]]
604
- ; CHECK-NEXT: call void @extern.use.f16(half nofpclass(all ) [[ARG]])
605
- ; CHECK-NEXT: call void @extern.use.f16(half nofpclass(all ) [[FABS]])
603
+ ; CHECK-NEXT: call void @extern.use.f16(half nofpclass(nan inf norm ) [[ARG]])
604
+ ; CHECK-NEXT: call void @extern.use.f16(half nofpclass(nan inf nzero sub norm ) [[FABS]])
606
605
; CHECK-NEXT: ret half [[ARG]]
607
606
;
608
607
entry:
609
608
610
609
%fabs = call half @llvm.fabs.f16 (half %arg )
611
610
612
- %one.inf = fcmp oeq half %arg , 0xH7C00
611
+ %one.inf = fcmp one half %arg , 0xH7C00
613
612
call void @llvm.assume (i1 %one.inf )
614
613
615
614
%unrelated.fabs = fcmp oeq half %fabs , 0 .0
0 commit comments