summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/Transforms/InstCombine/double-float-shrink-2.ll21
-rw-r--r--llvm/test/Transforms/InstCombine/fpextend.ll6
2 files changed, 9 insertions, 18 deletions
diff --git a/llvm/test/Transforms/InstCombine/double-float-shrink-2.ll b/llvm/test/Transforms/InstCombine/double-float-shrink-2.ll
index 5fd6e4ea1c2..7d3ed8d38af 100644
--- a/llvm/test/Transforms/InstCombine/double-float-shrink-2.ll
+++ b/llvm/test/Transforms/InstCombine/double-float-shrink-2.ll
@@ -448,8 +448,7 @@ define half @test_mismatched_type_intrin_fabs_fast_double_src(double %D) {
define float @test_shrink_intrin_floor_fp16_src(half %C) {
; ALL-LABEL: @test_shrink_intrin_floor_fp16_src(
; ALL-NEXT: [[E:%.*]] = call half @llvm.floor.f16(half [[C:%.*]])
-; ALL-NEXT: [[TMP1:%.*]] = fpext half [[E]] to double
-; ALL-NEXT: [[F:%.*]] = fptrunc double [[TMP1]] to float
+; ALL-NEXT: [[F:%.*]] = fpext half [[E]] to float
; ALL-NEXT: ret float [[F]]
;
%D = fpext half %C to double
@@ -461,8 +460,7 @@ define float @test_shrink_intrin_floor_fp16_src(half %C) {
define float @test_shrink_intrin_ceil_fp16_src(half %C) {
; ALL-LABEL: @test_shrink_intrin_ceil_fp16_src(
; ALL-NEXT: [[E:%.*]] = call half @llvm.ceil.f16(half [[C:%.*]])
-; ALL-NEXT: [[TMP1:%.*]] = fpext half [[E]] to double
-; ALL-NEXT: [[F:%.*]] = fptrunc double [[TMP1]] to float
+; ALL-NEXT: [[F:%.*]] = fpext half [[E]] to float
; ALL-NEXT: ret float [[F]]
;
%D = fpext half %C to double
@@ -474,8 +472,7 @@ define float @test_shrink_intrin_ceil_fp16_src(half %C) {
define float @test_shrink_intrin_round_fp16_src(half %C) {
; ALL-LABEL: @test_shrink_intrin_round_fp16_src(
; ALL-NEXT: [[E:%.*]] = call half @llvm.round.f16(half [[C:%.*]])
-; ALL-NEXT: [[TMP1:%.*]] = fpext half [[E]] to double
-; ALL-NEXT: [[F:%.*]] = fptrunc double [[TMP1]] to float
+; ALL-NEXT: [[F:%.*]] = fpext half [[E]] to float
; ALL-NEXT: ret float [[F]]
;
%D = fpext half %C to double
@@ -487,8 +484,7 @@ define float @test_shrink_intrin_round_fp16_src(half %C) {
define float @test_shrink_intrin_nearbyint_fp16_src(half %C) {
; ALL-LABEL: @test_shrink_intrin_nearbyint_fp16_src(
; ALL-NEXT: [[E:%.*]] = call half @llvm.nearbyint.f16(half [[C:%.*]])
-; ALL-NEXT: [[TMP1:%.*]] = fpext half [[E]] to double
-; ALL-NEXT: [[F:%.*]] = fptrunc double [[TMP1]] to float
+; ALL-NEXT: [[F:%.*]] = fpext half [[E]] to float
; ALL-NEXT: ret float [[F]]
;
%D = fpext half %C to double
@@ -500,8 +496,7 @@ define float @test_shrink_intrin_nearbyint_fp16_src(half %C) {
define float @test_shrink_intrin_trunc_fp16_src(half %C) {
; ALL-LABEL: @test_shrink_intrin_trunc_fp16_src(
; ALL-NEXT: [[E:%.*]] = call half @llvm.trunc.f16(half [[C:%.*]])
-; ALL-NEXT: [[TMP1:%.*]] = fpext half [[E]] to double
-; ALL-NEXT: [[F:%.*]] = fptrunc double [[TMP1]] to float
+; ALL-NEXT: [[F:%.*]] = fpext half [[E]] to float
; ALL-NEXT: ret float [[F]]
;
%D = fpext half %C to double
@@ -513,8 +508,7 @@ define float @test_shrink_intrin_trunc_fp16_src(half %C) {
define float @test_shrink_intrin_fabs_fp16_src(half %C) {
; ALL-LABEL: @test_shrink_intrin_fabs_fp16_src(
; ALL-NEXT: [[E:%.*]] = call half @llvm.fabs.f16(half [[C:%.*]])
-; ALL-NEXT: [[TMP1:%.*]] = fpext half [[E]] to double
-; ALL-NEXT: [[F:%.*]] = fptrunc double [[TMP1]] to float
+; ALL-NEXT: [[F:%.*]] = fpext half [[E]] to float
; ALL-NEXT: ret float [[F]]
;
%D = fpext half %C to double
@@ -527,8 +521,7 @@ define float @test_shrink_intrin_fabs_fp16_src(half %C) {
define float @test_shrink_intrin_fabs_fast_fp16_src(half %C) {
; ALL-LABEL: @test_shrink_intrin_fabs_fast_fp16_src(
; ALL-NEXT: [[E:%.*]] = call fast half @llvm.fabs.f16(half [[C:%.*]])
-; ALL-NEXT: [[TMP1:%.*]] = fpext half [[E]] to double
-; ALL-NEXT: [[F:%.*]] = fptrunc double [[TMP1]] to float
+; ALL-NEXT: [[F:%.*]] = fpext half [[E]] to float
; ALL-NEXT: ret float [[F]]
;
%D = fpext half %C to double
diff --git a/llvm/test/Transforms/InstCombine/fpextend.ll b/llvm/test/Transforms/InstCombine/fpextend.ll
index baac3ae457c..98dec674d36 100644
--- a/llvm/test/Transforms/InstCombine/fpextend.ll
+++ b/llvm/test/Transforms/InstCombine/fpextend.ll
@@ -102,8 +102,7 @@ define <2 x float> @not_half_shrinkable(<2 x float> %x) {
define half @test7(float %a) nounwind {
; CHECK-LABEL: @test7(
-; CHECK-NEXT: [[Y:%.*]] = fpext float [[A:%.*]] to double
-; CHECK-NEXT: [[Z:%.*]] = fptrunc double [[Y]] to half
+; CHECK-NEXT: [[Z:%.*]] = fptrunc float [[A:%.*]] to half
; CHECK-NEXT: ret half [[Z]]
;
%y = fpext float %a to double
@@ -113,8 +112,7 @@ define half @test7(float %a) nounwind {
define float @test8(half %a) nounwind {
; CHECK-LABEL: @test8(
-; CHECK-NEXT: [[Y:%.*]] = fpext half [[A:%.*]] to double
-; CHECK-NEXT: [[Z:%.*]] = fptrunc double [[Y]] to float
+; CHECK-NEXT: [[Z:%.*]] = fpext half [[A:%.*]] to float
; CHECK-NEXT: ret float [[Z]]
;
%y = fpext half %a to double
OpenPOWER on IntegriCloud