From ea93eb6cce13ac2e41a5e696b0cbcde508209405 Mon Sep 17 00:00:00 2001 From: Sanjay Patel Date: Tue, 11 Aug 2015 16:58:49 +0000 Subject: [PATCH] add missing tests for powi expansion with size optimizations The minsize test will be fixed in the next commit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@244630 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/CodeGen/X86/powi.ll | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/test/CodeGen/X86/powi.ll b/test/CodeGen/X86/powi.ll index 623696057ca..bb1cf4fd7f9 100644 --- a/test/CodeGen/X86/powi.ll +++ b/test/CodeGen/X86/powi.ll @@ -17,5 +17,32 @@ define double @pow_wrapper(double %a) nounwind readonly ssp noredzone { ret double %ret } +define double @pow_wrapper_optsize(double %a) optsize { +; CHECK-LABEL: pow_wrapper_optsize: +; CHECK: # BB#0: +; CHECK-NEXT: movl $15, %edi +; CHECK-NEXT: jmp + %ret = tail call double @llvm.powi.f64(double %a, i32 15) nounwind ; [#uses=1] + ret double %ret +} + +; FIXME: Should not expand with minsize + +define double @pow_wrapper_minsize(double %a) minsize { +; CHECK-LABEL: pow_wrapper_minsize: +; CHECK: # BB#0: +; CHECK-NEXT: movapd %xmm0, %xmm1 +; CHECK-NEXT: mulsd %xmm1, %xmm1 +; CHECK-NEXT: mulsd %xmm1, %xmm0 +; CHECK-NEXT: mulsd %xmm1, %xmm1 +; CHECK-NEXT: mulsd %xmm1, %xmm0 +; CHECK-NEXT: mulsd %xmm1, %xmm1 +; CHECK-NEXT: mulsd %xmm0, %xmm1 +; CHECK-NEXT: movapd %xmm1, %xmm0 +; CHECK-NEXT: retq + %ret = tail call double @llvm.powi.f64(double %a, i32 15) nounwind ; [#uses=1] + ret double %ret +} + declare double @llvm.powi.f64(double, i32) nounwind readonly -- 2.34.1