diff options
Diffstat (limited to 'llvm/test/Transforms')
4 files changed, 31 insertions, 31 deletions
diff --git a/llvm/test/Transforms/InstCombine/fast-math.ll b/llvm/test/Transforms/InstCombine/fast-math.ll index b5173cc467c..3e7af3e7838 100644 --- a/llvm/test/Transforms/InstCombine/fast-math.ll +++ b/llvm/test/Transforms/InstCombine/fast-math.ll @@ -820,7 +820,7 @@ declare fp128 @fminl(fp128, fp128) define float @max1(float %a, float %b) { ; CHECK-LABEL: @max1( ; CHECK-NEXT: [[TMP1:%.*]] = fcmp fast ogt float [[A:%.*]], [[B:%.*]] -; CHECK-NEXT: [[TMP2:%.*]] = select i1 [[TMP1]], float [[A]], float [[B]] +; CHECK-NEXT: [[TMP2:%.*]] = select fast i1 [[TMP1]], float [[A]], float [[B]] ; CHECK-NEXT: ret float [[TMP2]] ; %c = fpext float %a to double @@ -833,7 +833,7 @@ define float @max1(float %a, float %b) { define float @max2(float %a, float %b) { ; CHECK-LABEL: @max2( ; CHECK-NEXT: [[TMP1:%.*]] = fcmp nnan nsz ogt float [[A:%.*]], [[B:%.*]] -; CHECK-NEXT: [[TMP2:%.*]] = select i1 [[TMP1]], float [[A]], float [[B]] +; CHECK-NEXT: [[TMP2:%.*]] = select nnan nsz i1 [[TMP1]], float [[A]], float [[B]] ; CHECK-NEXT: ret float [[TMP2]] ; %c = call nnan float @fmaxf(float %a, float %b) @@ -844,7 +844,7 @@ define float @max2(float %a, float %b) { define double @max3(double %a, double %b) { ; CHECK-LABEL: @max3( ; CHECK-NEXT: [[TMP1:%.*]] = fcmp fast ogt double [[A:%.*]], [[B:%.*]] -; CHECK-NEXT: [[TMP2:%.*]] = select i1 [[TMP1]], double [[A]], double [[B]] +; CHECK-NEXT: [[TMP2:%.*]] = select fast i1 [[TMP1]], double [[A]], double [[B]] ; CHECK-NEXT: ret double [[TMP2]] ; %c = call fast double @fmax(double %a, double %b) @@ -854,7 +854,7 @@ define double @max3(double %a, double %b) { define fp128 @max4(fp128 %a, fp128 %b) { ; CHECK-LABEL: @max4( ; CHECK-NEXT: [[TMP1:%.*]] = fcmp nnan nsz ogt fp128 [[A:%.*]], [[B:%.*]] -; CHECK-NEXT: [[TMP2:%.*]] = select i1 [[TMP1]], fp128 [[A]], fp128 [[B]] +; CHECK-NEXT: [[TMP2:%.*]] = select nnan nsz i1 [[TMP1]], fp128 [[A]], fp128 [[B]] ; CHECK-NEXT: ret fp128 [[TMP2]] ; %c = call nnan fp128 @fmaxl(fp128 %a, fp128 %b) @@ -865,7 +865,7 @@ define fp128 @max4(fp128 %a, fp128 %b) { define float @min1(float %a, float %b) { ; CHECK-LABEL: @min1( ; CHECK-NEXT: [[TMP1:%.*]] = fcmp nnan nsz olt float [[A:%.*]], [[B:%.*]] -; CHECK-NEXT: [[TMP2:%.*]] = select i1 [[TMP1]], float [[A]], float [[B]] +; CHECK-NEXT: [[TMP2:%.*]] = select nnan nsz i1 [[TMP1]], float [[A]], float [[B]] ; CHECK-NEXT: ret float [[TMP2]] ; %c = fpext float %a to double @@ -878,7 +878,7 @@ define float @min1(float %a, float %b) { define float @min2(float %a, float %b) { ; CHECK-LABEL: @min2( ; CHECK-NEXT: [[TMP1:%.*]] = fcmp fast olt float [[A:%.*]], [[B:%.*]] -; CHECK-NEXT: [[TMP2:%.*]] = select i1 [[TMP1]], float [[A]], float [[B]] +; CHECK-NEXT: [[TMP2:%.*]] = select fast i1 [[TMP1]], float [[A]], float [[B]] ; CHECK-NEXT: ret float [[TMP2]] ; %c = call fast float @fminf(float %a, float %b) @@ -888,7 +888,7 @@ define float @min2(float %a, float %b) { define double @min3(double %a, double %b) { ; CHECK-LABEL: @min3( ; CHECK-NEXT: [[TMP1:%.*]] = fcmp nnan nsz olt double [[A:%.*]], [[B:%.*]] -; CHECK-NEXT: [[TMP2:%.*]] = select i1 [[TMP1]], double [[A]], double [[B]] +; CHECK-NEXT: [[TMP2:%.*]] = select nnan nsz i1 [[TMP1]], double [[A]], double [[B]] ; CHECK-NEXT: ret double [[TMP2]] ; %c = call nnan double @fmin(double %a, double %b) @@ -898,7 +898,7 @@ define double @min3(double %a, double %b) { define fp128 @min4(fp128 %a, fp128 %b) { ; CHECK-LABEL: @min4( ; CHECK-NEXT: [[TMP1:%.*]] = fcmp fast olt fp128 [[A:%.*]], [[B:%.*]] -; CHECK-NEXT: [[TMP2:%.*]] = select i1 [[TMP1]], fp128 [[A]], fp128 [[B]] +; CHECK-NEXT: [[TMP2:%.*]] = select fast i1 [[TMP1]], fp128 [[A]], fp128 [[B]] ; CHECK-NEXT: ret fp128 [[TMP2]] ; %c = call fast fp128 @fminl(fp128 %a, fp128 %b) diff --git a/llvm/test/Transforms/InstCombine/pow-sqrt.ll b/llvm/test/Transforms/InstCombine/pow-sqrt.ll index 9fcca83c21f..c87eac70532 100644 --- a/llvm/test/Transforms/InstCombine/pow-sqrt.ll +++ b/llvm/test/Transforms/InstCombine/pow-sqrt.ll @@ -36,7 +36,7 @@ define double @pow_libcall_half_approx(double %x) { ; CHECK-NEXT: [[SQRT:%.*]] = call afn double @sqrt(double [[X:%.*]]) ; CHECK-NEXT: [[ABS:%.*]] = call afn double @llvm.fabs.f64(double [[SQRT]]) ; CHECK-NEXT: [[ISINF:%.*]] = fcmp afn oeq double [[X]], 0xFFF0000000000000 -; CHECK-NEXT: [[TMP1:%.*]] = select i1 [[ISINF]], double 0x7FF0000000000000, double [[ABS]] +; CHECK-NEXT: [[TMP1:%.*]] = select afn i1 [[ISINF]], double 0x7FF0000000000000, double [[ABS]] ; CHECK-NEXT: ret double [[TMP1]] ; %pow = call afn double @pow(double %x, double 5.0e-01) @@ -48,7 +48,7 @@ define <2 x double> @pow_intrinsic_half_approx(<2 x double> %x) { ; CHECK-NEXT: [[SQRT:%.*]] = call afn <2 x double> @llvm.sqrt.v2f64(<2 x double> [[X:%.*]]) ; CHECK-NEXT: [[ABS:%.*]] = call afn <2 x double> @llvm.fabs.v2f64(<2 x double> [[SQRT]]) ; CHECK-NEXT: [[ISINF:%.*]] = fcmp afn oeq <2 x double> [[X]], <double 0xFFF0000000000000, double 0xFFF0000000000000> -; CHECK-NEXT: [[TMP1:%.*]] = select <2 x i1> [[ISINF]], <2 x double> <double 0x7FF0000000000000, double 0x7FF0000000000000>, <2 x double> [[ABS]] +; CHECK-NEXT: [[TMP1:%.*]] = select afn <2 x i1> [[ISINF]], <2 x double> <double 0x7FF0000000000000, double 0x7FF0000000000000>, <2 x double> [[ABS]] ; CHECK-NEXT: ret <2 x double> [[TMP1]] ; %pow = call afn <2 x double> @llvm.pow.v2f64(<2 x double> %x, <2 x double> <double 5.0e-01, double 5.0e-01>) @@ -92,7 +92,7 @@ define double @pow_libcall_half_nsz(double %x) { ; CHECK-LABEL: @pow_libcall_half_nsz( ; CHECK-NEXT: [[SQRT:%.*]] = call nsz double @sqrt(double [[X:%.*]]) ; CHECK-NEXT: [[ISINF:%.*]] = fcmp nsz oeq double [[X]], 0xFFF0000000000000 -; CHECK-NEXT: [[TMP1:%.*]] = select i1 [[ISINF]], double 0x7FF0000000000000, double [[SQRT]] +; CHECK-NEXT: [[TMP1:%.*]] = select nsz i1 [[ISINF]], double 0x7FF0000000000000, double [[SQRT]] ; CHECK-NEXT: ret double [[TMP1]] ; %pow = call nsz double @pow(double %x, double 5.0e-01) @@ -103,7 +103,7 @@ define double @pow_intrinsic_half_nsz(double %x) { ; CHECK-LABEL: @pow_intrinsic_half_nsz( ; CHECK-NEXT: [[SQRT:%.*]] = call nsz double @llvm.sqrt.f64(double [[X:%.*]]) ; CHECK-NEXT: [[ISINF:%.*]] = fcmp nsz oeq double [[X]], 0xFFF0000000000000 -; CHECK-NEXT: [[TMP1:%.*]] = select i1 [[ISINF]], double 0x7FF0000000000000, double [[SQRT]] +; CHECK-NEXT: [[TMP1:%.*]] = select nsz i1 [[ISINF]], double 0x7FF0000000000000, double [[SQRT]] ; CHECK-NEXT: ret double [[TMP1]] ; %pow = call nsz double @llvm.pow.f64(double %x, double 5.0e-01) diff --git a/llvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll b/llvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll index c65e0dbf9e5..8b86a71b85e 100644 --- a/llvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll +++ b/llvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll @@ -74,10 +74,10 @@ define float @minloopattr(float* nocapture readonly %arg) #0 { ; CHECK: middle.block: ; CHECK-NEXT: [[RDX_SHUF:%.*]] = shufflevector <4 x float> [[TMP6]], <4 x float> undef, <4 x i32> <i32 2, i32 3, i32 undef, i32 undef> ; CHECK-NEXT: [[RDX_MINMAX_CMP:%.*]] = fcmp fast olt <4 x float> [[TMP6]], [[RDX_SHUF]] -; CHECK-NEXT: [[RDX_MINMAX_SELECT:%.*]] = select <4 x i1> [[RDX_MINMAX_CMP]], <4 x float> [[TMP6]], <4 x float> [[RDX_SHUF]] +; CHECK-NEXT: [[RDX_MINMAX_SELECT:%.*]] = select fast <4 x i1> [[RDX_MINMAX_CMP]], <4 x float> [[TMP6]], <4 x float> [[RDX_SHUF]] ; CHECK-NEXT: [[RDX_SHUF1:%.*]] = shufflevector <4 x float> [[RDX_MINMAX_SELECT]], <4 x float> undef, <4 x i32> <i32 1, i32 undef, i32 undef, i32 undef> ; CHECK-NEXT: [[RDX_MINMAX_CMP2:%.*]] = fcmp fast olt <4 x float> [[RDX_MINMAX_SELECT]], [[RDX_SHUF1]] -; CHECK-NEXT: [[RDX_MINMAX_SELECT3:%.*]] = select <4 x i1> [[RDX_MINMAX_CMP2]], <4 x float> [[RDX_MINMAX_SELECT]], <4 x float> [[RDX_SHUF1]] +; CHECK-NEXT: [[RDX_MINMAX_SELECT3:%.*]] = select fast <4 x i1> [[RDX_MINMAX_CMP2]], <4 x float> [[RDX_MINMAX_SELECT]], <4 x float> [[RDX_SHUF1]] ; CHECK-NEXT: [[TMP8:%.*]] = extractelement <4 x float> [[RDX_MINMAX_SELECT3]], i32 0 ; CHECK-NEXT: [[CMP_N:%.*]] = icmp eq i64 65536, 65536 ; CHECK-NEXT: br i1 [[CMP_N]], label [[OUT:%.*]], label [[SCALAR_PH]] diff --git a/llvm/test/Transforms/LoopVectorize/minmax_reduction.ll b/llvm/test/Transforms/LoopVectorize/minmax_reduction.ll index 188700d66d8..fc2f8dcec2f 100644 --- a/llvm/test/Transforms/LoopVectorize/minmax_reduction.ll +++ b/llvm/test/Transforms/LoopVectorize/minmax_reduction.ll @@ -416,7 +416,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast ogt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @max_red_float(float %max) #0 { entry: @@ -442,7 +442,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast ogt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @max_red_float_ge(float %max) #0 { entry: @@ -468,7 +468,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast ogt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @inverted_max_red_float(float %max) #0 { entry: @@ -494,7 +494,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast ogt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @inverted_max_red_float_le(float %max) #0 { entry: @@ -520,7 +520,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast ogt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @unordered_max_red_float(float %max) #0 { entry: @@ -546,7 +546,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast ogt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @unordered_max_red_float_ge(float %max) #0 { entry: @@ -572,7 +572,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast ogt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @inverted_unordered_max_red_float(float %max) #0 { entry: @@ -598,7 +598,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast ogt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @inverted_unordered_max_red_float_le(float %max) #0 { entry: @@ -627,7 +627,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast olt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @min_red_float(float %min) #0 { entry: @@ -653,7 +653,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast olt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @min_red_float_le(float %min) #0 { entry: @@ -679,7 +679,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast olt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @inverted_min_red_float(float %min) #0 { entry: @@ -705,7 +705,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast olt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @inverted_min_red_float_ge(float %min) #0 { entry: @@ -731,7 +731,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast olt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @unordered_min_red_float(float %min) #0 { entry: @@ -757,7 +757,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast olt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @unordered_min_red_float_le(float %min) #0 { entry: @@ -783,7 +783,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast olt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @inverted_unordered_min_red_float(float %min) #0 { entry: @@ -809,7 +809,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast olt <2 x float> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define float @inverted_unordered_min_red_float_ge(float %min) #0 { entry: @@ -836,7 +836,7 @@ for.end: ; CHECK: select <2 x i1> ; CHECK: middle.block ; CHECK: fcmp fast olt <2 x double> -; CHECK: select <2 x i1> +; CHECK: select fast <2 x i1> define double @min_red_double(double %min) #0 { entry: |