aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/X86/README.txt
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-01-13 23:28:40 +0000
committerChris Lattner <sabre@nondot.org>2010-01-13 23:28:40 +0000
commit689339c50f957b21861038e69fc8ee71ecae14b2 (patch)
tree0ea673fc68bac9d2c887ca3c58ae30e553fdd5df /lib/Target/X86/README.txt
parent22f3b9faaca03e3da987955bb75e867d3af7bffe (diff)
downloadexternal_llvm-689339c50f957b21861038e69fc8ee71ecae14b2.zip
external_llvm-689339c50f957b21861038e69fc8ee71ecae14b2.tar.gz
external_llvm-689339c50f957b21861038e69fc8ee71ecae14b2.tar.bz2
X86 if conversion + tail merging issues from PR6032.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93372 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/README.txt')
-rw-r--r--lib/Target/X86/README.txt20
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/Target/X86/README.txt b/lib/Target/X86/README.txt
index aa7bb3d..f146ff3 100644
--- a/lib/Target/X86/README.txt
+++ b/lib/Target/X86/README.txt
@@ -1868,3 +1868,23 @@ carried over to machine instructions. Asm printer (or JIT) can use this
information to add the "lock" prefix.
//===---------------------------------------------------------------------===//
+
+The X86 backend should be able to if-convert SSE comparisons like "ucomisd" to
+"cmpsd". For example, this code:
+
+double d1(double x) { return x == x ? x : x + x; }
+
+Compiles into:
+
+_d1:
+ ucomisd %xmm0, %xmm0
+ jnp LBB1_2
+ addsd %xmm0, %xmm0
+ ret
+LBB1_2:
+ ret
+
+Also, the 'ret's should be shared. This is PR6032.
+
+//===---------------------------------------------------------------------===//
+