@@ -484,7 +484,7 @@ define double @select_fcmp_nnan_nsz_olt_zero(double %x) {
484484; CHECK-LABEL: @select_fcmp_nnan_nsz_olt_zero(
485485; CHECK-NEXT: [[LTZERO:%.*]] = fcmp olt double [[X:%.*]], 0.000000e+00
486486; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan nsz double [[X]]
487- ; CHECK-NEXT: [[FABS:%.*]] = select nnan i1 [[LTZERO]], double [[NEGX]], double [[X]]
487+ ; CHECK-NEXT: [[FABS:%.*]] = select i1 [[LTZERO]], double [[NEGX]], double [[X]]
488488; CHECK-NEXT: ret double [[FABS]]
489489;
490490 %ltzero = fcmp olt double %x , 0 .0
@@ -523,7 +523,7 @@ define double @select_fcmp_nnan_nsz_olt_zero_unary_fneg(double %x) {
523523; CHECK-LABEL: @select_fcmp_nnan_nsz_olt_zero_unary_fneg(
524524; CHECK-NEXT: [[LTZERO:%.*]] = fcmp olt double [[X:%.*]], 0.000000e+00
525525; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan nsz double [[X]]
526- ; CHECK-NEXT: [[FABS:%.*]] = select nnan i1 [[LTZERO]], double [[NEGX]], double [[X]]
526+ ; CHECK-NEXT: [[FABS:%.*]] = select i1 [[LTZERO]], double [[NEGX]], double [[X]]
527527; CHECK-NEXT: ret double [[FABS]]
528528;
529529 %ltzero = fcmp olt double %x , 0 .0
@@ -553,7 +553,7 @@ define float @select_fcmp_nnan_nsz_olt_negzero(float %x) {
553553; CHECK-LABEL: @select_fcmp_nnan_nsz_olt_negzero(
554554; CHECK-NEXT: [[LTZERO:%.*]] = fcmp olt float [[X:%.*]], 0.000000e+00
555555; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan ninf nsz float [[X]]
556- ; CHECK-NEXT: [[FABS:%.*]] = select nnan ninf i1 [[LTZERO]], float [[NEGX]], float [[X]]
556+ ; CHECK-NEXT: [[FABS:%.*]] = select i1 [[LTZERO]], float [[NEGX]], float [[X]]
557557; CHECK-NEXT: ret float [[FABS]]
558558;
559559 %ltzero = fcmp olt float %x , -0 .0
@@ -579,7 +579,7 @@ define float @select_fcmp_nnan_nsz_ult_negzero(float %x) {
579579; CHECK-LABEL: @select_fcmp_nnan_nsz_ult_negzero(
580580; CHECK-NEXT: [[LTZERO:%.*]] = fcmp ult float [[X:%.*]], 0.000000e+00
581581; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan ninf nsz float [[X]]
582- ; CHECK-NEXT: [[FABS:%.*]] = select nnan ninf i1 [[LTZERO]], float [[NEGX]], float [[X]]
582+ ; CHECK-NEXT: [[FABS:%.*]] = select nnan i1 [[LTZERO]], float [[NEGX]], float [[X]]
583583; CHECK-NEXT: ret float [[FABS]]
584584;
585585 %ltzero = fcmp ult float %x , -0 .0
@@ -592,7 +592,7 @@ define float @select_fcmp_nnan_nsz_olt_negzero_unary_fneg(float %x) {
592592; CHECK-LABEL: @select_fcmp_nnan_nsz_olt_negzero_unary_fneg(
593593; CHECK-NEXT: [[LTZERO:%.*]] = fcmp olt float [[X:%.*]], 0.000000e+00
594594; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan ninf nsz float [[X]]
595- ; CHECK-NEXT: [[FABS:%.*]] = select nnan ninf i1 [[LTZERO]], float [[NEGX]], float [[X]]
595+ ; CHECK-NEXT: [[FABS:%.*]] = select i1 [[LTZERO]], float [[NEGX]], float [[X]]
596596; CHECK-NEXT: ret float [[FABS]]
597597;
598598 %ltzero = fcmp olt float %x , -0 .0
@@ -607,7 +607,7 @@ define float @select_fcmp_nnan_nsz_ult_negzero_unary_fneg(float %x) {
607607; CHECK-LABEL: @select_fcmp_nnan_nsz_ult_negzero_unary_fneg(
608608; CHECK-NEXT: [[LTZERO:%.*]] = fcmp ult float [[X:%.*]], 0.000000e+00
609609; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan ninf nsz float [[X]]
610- ; CHECK-NEXT: [[FABS:%.*]] = select nnan ninf i1 [[LTZERO]], float [[NEGX]], float [[X]]
610+ ; CHECK-NEXT: [[FABS:%.*]] = select nnan i1 [[LTZERO]], float [[NEGX]], float [[X]]
611611; CHECK-NEXT: ret float [[FABS]]
612612;
613613 %ltzero = fcmp ult float %x , -0 .0
@@ -622,7 +622,7 @@ define double @select_fcmp_nnan_nsz_ole_zero(double %x) {
622622; CHECK-LABEL: @select_fcmp_nnan_nsz_ole_zero(
623623; CHECK-NEXT: [[LEZERO:%.*]] = fcmp ole double [[X:%.*]], 0.000000e+00
624624; CHECK-NEXT: [[NEGX:%.*]] = fneg fast double [[X]]
625- ; CHECK-NEXT: [[FABS:%.*]] = select nnan ninf i1 [[LEZERO]], double [[NEGX]], double [[X]]
625+ ; CHECK-NEXT: [[FABS:%.*]] = select i1 [[LEZERO]], double [[NEGX]], double [[X]]
626626; CHECK-NEXT: ret double [[FABS]]
627627;
628628 %lezero = fcmp ole double %x , 0 .0
@@ -648,7 +648,7 @@ define double @select_fcmp_nnan_nsz_ule_zero(double %x) {
648648; CHECK-LABEL: @select_fcmp_nnan_nsz_ule_zero(
649649; CHECK-NEXT: [[LEZERO:%.*]] = fcmp ule double [[X:%.*]], 0.000000e+00
650650; CHECK-NEXT: [[NEGX:%.*]] = fneg fast double [[X]]
651- ; CHECK-NEXT: [[FABS:%.*]] = select nnan ninf i1 [[LEZERO]], double [[NEGX]], double [[X]]
651+ ; CHECK-NEXT: [[FABS:%.*]] = select nnan i1 [[LEZERO]], double [[NEGX]], double [[X]]
652652; CHECK-NEXT: ret double [[FABS]]
653653;
654654 %lezero = fcmp ule double %x , 0 .0
@@ -661,7 +661,7 @@ define double @select_fcmp_nnan_nsz_ole_zero_unary_fneg(double %x) {
661661; CHECK-LABEL: @select_fcmp_nnan_nsz_ole_zero_unary_fneg(
662662; CHECK-NEXT: [[LEZERO:%.*]] = fcmp ole double [[X:%.*]], 0.000000e+00
663663; CHECK-NEXT: [[NEGX:%.*]] = fneg fast double [[X]]
664- ; CHECK-NEXT: [[FABS:%.*]] = select nnan ninf i1 [[LEZERO]], double [[NEGX]], double [[X]]
664+ ; CHECK-NEXT: [[FABS:%.*]] = select i1 [[LEZERO]], double [[NEGX]], double [[X]]
665665; CHECK-NEXT: ret double [[FABS]]
666666;
667667 %lezero = fcmp ole double %x , 0 .0
@@ -676,7 +676,7 @@ define double @select_fcmp_nnan_nsz_ule_zero_unary_fneg(double %x) {
676676; CHECK-LABEL: @select_fcmp_nnan_nsz_ule_zero_unary_fneg(
677677; CHECK-NEXT: [[LEZERO:%.*]] = fcmp ule double [[X:%.*]], 0.000000e+00
678678; CHECK-NEXT: [[NEGX:%.*]] = fneg fast double [[X]]
679- ; CHECK-NEXT: [[FABS:%.*]] = select nnan ninf i1 [[LEZERO]], double [[NEGX]], double [[X]]
679+ ; CHECK-NEXT: [[FABS:%.*]] = select nnan i1 [[LEZERO]], double [[NEGX]], double [[X]]
680680; CHECK-NEXT: ret double [[FABS]]
681681;
682682 %lezero = fcmp ule double %x , 0 .0
@@ -691,7 +691,7 @@ define float @select_fcmp_nnan_nsz_ole_negzero(float %x) {
691691; CHECK-LABEL: @select_fcmp_nnan_nsz_ole_negzero(
692692; CHECK-NEXT: [[LEZERO:%.*]] = fcmp ole float [[X:%.*]], 0.000000e+00
693693; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan nsz float [[X]]
694- ; CHECK-NEXT: [[FABS:%.*]] = select nnan i1 [[LEZERO]], float [[NEGX]], float [[X]]
694+ ; CHECK-NEXT: [[FABS:%.*]] = select i1 [[LEZERO]], float [[NEGX]], float [[X]]
695695; CHECK-NEXT: ret float [[FABS]]
696696;
697697 %lezero = fcmp ole float %x , -0 .0
@@ -730,7 +730,7 @@ define float @select_fcmp_nnan_nsz_ole_negzero_unary_fneg(float %x) {
730730; CHECK-LABEL: @select_fcmp_nnan_nsz_ole_negzero_unary_fneg(
731731; CHECK-NEXT: [[LEZERO:%.*]] = fcmp ole float [[X:%.*]], 0.000000e+00
732732; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan nsz float [[X]]
733- ; CHECK-NEXT: [[FABS:%.*]] = select nnan i1 [[LEZERO]], float [[NEGX]], float [[X]]
733+ ; CHECK-NEXT: [[FABS:%.*]] = select i1 [[LEZERO]], float [[NEGX]], float [[X]]
734734; CHECK-NEXT: ret float [[FABS]]
735735;
736736 %lezero = fcmp ole float %x , -0 .0
@@ -802,7 +802,7 @@ define <2 x float> @select_fcmp_nnan_nsz_ugt_zero(<2 x float> %x) {
802802; CHECK-LABEL: @select_fcmp_nnan_nsz_ugt_zero(
803803; CHECK-NEXT: [[GTZERO:%.*]] = fcmp ugt <2 x float> [[X:%.*]], zeroinitializer
804804; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan nsz arcp <2 x float> [[X]]
805- ; CHECK-NEXT: [[FABS:%.*]] = select nnan <2 x i1> [[GTZERO]], <2 x float> [[X]], <2 x float> [[NEGX]]
805+ ; CHECK-NEXT: [[FABS:%.*]] = select <2 x i1> [[GTZERO]], <2 x float> [[X]], <2 x float> [[NEGX]]
806806; CHECK-NEXT: ret <2 x float> [[FABS]]
807807;
808808 %gtzero = fcmp ugt <2 x float > %x , zeroinitializer
@@ -830,7 +830,7 @@ define <2 x float> @select_fcmp_nnan_nsz_ugt_zero_unary_fneg(<2 x float> %x) {
830830; CHECK-LABEL: @select_fcmp_nnan_nsz_ugt_zero_unary_fneg(
831831; CHECK-NEXT: [[GTZERO:%.*]] = fcmp ugt <2 x float> [[X:%.*]], zeroinitializer
832832; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan nsz arcp <2 x float> [[X]]
833- ; CHECK-NEXT: [[FABS:%.*]] = select nnan <2 x i1> [[GTZERO]], <2 x float> [[X]], <2 x float> [[NEGX]]
833+ ; CHECK-NEXT: [[FABS:%.*]] = select <2 x i1> [[GTZERO]], <2 x float> [[X]], <2 x float> [[NEGX]]
834834; CHECK-NEXT: ret <2 x float> [[FABS]]
835835;
836836 %gtzero = fcmp ugt <2 x float > %x , zeroinitializer
@@ -845,7 +845,7 @@ define half @select_fcmp_nnan_nsz_ogt_negzero(half %x) {
845845; CHECK-LABEL: @select_fcmp_nnan_nsz_ogt_negzero(
846846; CHECK-NEXT: [[GTZERO:%.*]] = fcmp ogt half [[X:%.*]], 0xH0000
847847; CHECK-NEXT: [[NEGX:%.*]] = fneg fast half [[X]]
848- ; CHECK-NEXT: [[FABS:%.*]] = select nnan ninf i1 [[GTZERO]], half [[X]], half [[NEGX]]
848+ ; CHECK-NEXT: [[FABS:%.*]] = select nnan i1 [[GTZERO]], half [[X]], half [[NEGX]]
849849; CHECK-NEXT: ret half [[FABS]]
850850;
851851 %gtzero = fcmp ogt half %x , -0 .0
@@ -860,7 +860,7 @@ define half @select_fcmp_nnan_nsz_ugt_negzero(half %x) {
860860; CHECK-LABEL: @select_fcmp_nnan_nsz_ugt_negzero(
861861; CHECK-NEXT: [[GTZERO:%.*]] = fcmp ugt half [[X:%.*]], 0xH0000
862862; CHECK-NEXT: [[NEGX:%.*]] = fneg fast half [[X]]
863- ; CHECK-NEXT: [[FABS:%.*]] = select nnan ninf i1 [[GTZERO]], half [[X]], half [[NEGX]]
863+ ; CHECK-NEXT: [[FABS:%.*]] = select i1 [[GTZERO]], half [[X]], half [[NEGX]]
864864; CHECK-NEXT: ret half [[FABS]]
865865;
866866 %gtzero = fcmp ugt half %x , -0 .0
@@ -890,7 +890,7 @@ define <2 x double> @select_fcmp_nnan_nsz_uge_zero(<2 x double> %x) {
890890; CHECK-LABEL: @select_fcmp_nnan_nsz_uge_zero(
891891; CHECK-NEXT: [[GEZERO:%.*]] = fcmp uge <2 x double> [[X:%.*]], zeroinitializer
892892; CHECK-NEXT: [[NEGX:%.*]] = fneg reassoc nnan nsz <2 x double> [[X]]
893- ; CHECK-NEXT: [[FABS:%.*]] = select nnan <2 x i1> [[GEZERO]], <2 x double> [[X]], <2 x double> [[NEGX]]
893+ ; CHECK-NEXT: [[FABS:%.*]] = select <2 x i1> [[GEZERO]], <2 x double> [[X]], <2 x double> [[NEGX]]
894894; CHECK-NEXT: ret <2 x double> [[FABS]]
895895;
896896 %gezero = fcmp uge <2 x double > %x , zeroinitializer
@@ -918,7 +918,7 @@ define <2 x double> @select_fcmp_nnan_nsz_uge_zero_unary_fneg(<2 x double> %x) {
918918; CHECK-LABEL: @select_fcmp_nnan_nsz_uge_zero_unary_fneg(
919919; CHECK-NEXT: [[GEZERO:%.*]] = fcmp uge <2 x double> [[X:%.*]], zeroinitializer
920920; CHECK-NEXT: [[NEGX:%.*]] = fneg reassoc nnan nsz <2 x double> [[X]]
921- ; CHECK-NEXT: [[FABS:%.*]] = select nnan <2 x i1> [[GEZERO]], <2 x double> [[X]], <2 x double> [[NEGX]]
921+ ; CHECK-NEXT: [[FABS:%.*]] = select <2 x i1> [[GEZERO]], <2 x double> [[X]], <2 x double> [[NEGX]]
922922; CHECK-NEXT: ret <2 x double> [[FABS]]
923923;
924924 %gezero = fcmp uge <2 x double > %x , zeroinitializer
@@ -948,7 +948,7 @@ define half @select_fcmp_nnan_nsz_uge_negzero(half %x) {
948948; CHECK-LABEL: @select_fcmp_nnan_nsz_uge_negzero(
949949; CHECK-NEXT: [[GEZERO:%.*]] = fcmp uge half [[X:%.*]], 0xH0000
950950; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan nsz half [[X]]
951- ; CHECK-NEXT: [[FABS:%.*]] = select nnan i1 [[GEZERO]], half [[X]], half [[NEGX]]
951+ ; CHECK-NEXT: [[FABS:%.*]] = select i1 [[GEZERO]], half [[X]], half [[NEGX]]
952952; CHECK-NEXT: ret half [[FABS]]
953953;
954954 %gezero = fcmp uge half %x , -0 .0
@@ -976,7 +976,7 @@ define half @select_fcmp_nnan_nsz_uge_negzero_unary_fneg(half %x) {
976976; CHECK-LABEL: @select_fcmp_nnan_nsz_uge_negzero_unary_fneg(
977977; CHECK-NEXT: [[GEZERO:%.*]] = fcmp uge half [[X:%.*]], 0xH0000
978978; CHECK-NEXT: [[NEGX:%.*]] = fneg nnan nsz half [[X]]
979- ; CHECK-NEXT: [[FABS:%.*]] = select nnan i1 [[GEZERO]], half [[X]], half [[NEGX]]
979+ ; CHECK-NEXT: [[FABS:%.*]] = select i1 [[GEZERO]], half [[X]], half [[NEGX]]
980980; CHECK-NEXT: ret half [[FABS]]
981981;
982982 %gezero = fcmp uge half %x , -0 .0
0 commit comments