From: Sanjay Patel Date: Fri, 1 May 2020 12:23:34 +0000 (-0400) Subject: [InstCombine] adjust tests for pow(); NFC X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5013a788f8e1ed076509b3bafb0737fbcc68230b;p=platform%2Fupstream%2Fllvm.git [InstCombine] adjust tests for pow(); NFC D68231 would change this, but the existing test doesn't cover what was probably intended (a libcall test). --- diff --git a/llvm/test/Transforms/InstCombine/pow-3.ll b/llvm/test/Transforms/InstCombine/pow-3.ll index d0edd46..4da026b 100644 --- a/llvm/test/Transforms/InstCombine/pow-3.ll +++ b/llvm/test/Transforms/InstCombine/pow-3.ll @@ -1,13 +1,20 @@ ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py -; Test that the pow() won't get simplified to when it's disabled. -; ; RUN: opt < %s -disable-simplify-libcalls -instcombine -S | FileCheck %s declare double @llvm.pow.f64(double, double) declare double @pow(double, double) -define double @test_simplify_unavailable1(double %x) { -; CHECK-LABEL: @test_simplify_unavailable1( +define double @sqrt_libcall(double %x) { +; CHECK-LABEL: @sqrt_libcall( +; CHECK-NEXT: [[RETVAL:%.*]] = call double @pow(double [[X:%.*]], double 5.000000e-01) +; CHECK-NEXT: ret double [[RETVAL]] +; + %retval = call double @pow(double %x, double 0.5) + ret double %retval +} + +define double @sqrt_intrinsic(double %x) { +; CHECK-LABEL: @sqrt_intrinsic( ; CHECK-NEXT: [[RETVAL:%.*]] = call double @llvm.pow.f64(double [[X:%.*]], double 5.000000e-01) ; CHECK-NEXT: ret double [[RETVAL]] ; @@ -17,8 +24,8 @@ define double @test_simplify_unavailable1(double %x) { ; Shrinking is disabled too. -define float @test_simplify_unavailable2(float %f, float %g) { -; CHECK-LABEL: @test_simplify_unavailable2( +define float @shrink_libcall(float %f, float %g) { +; CHECK-LABEL: @shrink_libcall( ; CHECK-NEXT: [[DF:%.*]] = fpext float [[F:%.*]] to double ; CHECK-NEXT: [[DG:%.*]] = fpext float [[G:%.*]] to double ; CHECK-NEXT: [[CALL:%.*]] = call fast double @pow(double [[DF]], double [[DG]]) @@ -34,8 +41,8 @@ define float @test_simplify_unavailable2(float %f, float %g) { ; Shrinking is disabled for the intrinsic too. -define float @test_simplify_unavailable3(float %f, float %g) { -; CHECK-LABEL: @test_simplify_unavailable3( +define float @shrink_intrinsic(float %f, float %g) { +; CHECK-LABEL: @shrink_intrinsic( ; CHECK-NEXT: [[DF:%.*]] = fpext float [[F:%.*]] to double ; CHECK-NEXT: [[DG:%.*]] = fpext float [[G:%.*]] to double ; CHECK-NEXT: [[CALL:%.*]] = call fast double @llvm.pow.f64(double [[DF]], double [[DG]])