summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorDuncan Sands <baldrick@free.fr>2012-04-10 20:35:27 +0000
committerDuncan Sands <baldrick@free.fr>2012-04-10 20:35:27 +0000
commit507bb7a42fce6502f90268712cbc32158c17bb59 (patch)
tree44d94c76c0038d4aa74b10a504e7966fd17444f1 /test
parent3ecb447f52d169dea6663b95b5b5b43e9bb5826b (diff)
downloadllvm-507bb7a42fce6502f90268712cbc32158c17bb59.tar.gz
llvm-507bb7a42fce6502f90268712cbc32158c17bb59.tar.bz2
llvm-507bb7a42fce6502f90268712cbc32158c17bb59.tar.xz
Add a comment noting that the fdiv -> fmul conversion won't generate
multiplication by a denormal, and some tests checking that. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154431 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/CodeGen/X86/fdiv.ll16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/CodeGen/X86/fdiv.ll b/test/CodeGen/X86/fdiv.ll
index 82b9190b9a..0749682e2f 100644
--- a/test/CodeGen/X86/fdiv.ll
+++ b/test/CodeGen/X86/fdiv.ll
@@ -23,3 +23,19 @@ define double @funky(double %x) {
%div = fdiv double %x, 0.0
ret double %div
}
+
+define double @denormal1(double %x) {
+; Don't generate multiplication by a denormal.
+; CHECK: @denormal1
+; CHECK: divsd
+ %div = fdiv double %x, 0x7FD0000000000001
+ ret double %div
+}
+
+define double @denormal2(double %x) {
+; Don't generate multiplication by a denormal.
+; CHECK: @denormal
+; CHECK: divsd
+ %div = fdiv double %x, 0x7FEFFFFFFFFFFFFF
+ ret double %div
+}