add a note
authorChris Lattner <sabre@nondot.org>
Fri, 24 Aug 2007 15:17:59 +0000 (15:17 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 24 Aug 2007 15:17:59 +0000 (15:17 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41359 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/README-SSE.txt

index 40404e53e8bed1e1295564f814fd460bf7ffbed0..cb857fbf59ff94a1aef0fd79251ccfcdaac5dc17 100644 (file)
@@ -630,3 +630,17 @@ _bar:
         ret
 
 //===---------------------------------------------------------------------===//
+
+We should materialize vecetor constants like "all ones" and "signbit" with 
+code like:
+
+     cmpeqps xmm1, xmm1   ; xmm1 = all-ones
+
+and:
+     cmpeqps xmm1, xmm1   ; xmm1 = all-ones
+     psrlq   xmm1, 31     ; xmm1 = all 100000000000...
+
+instead of using a load from the constant pool.  The later is important for
+ABS/NEG/copysign etc.
+
+//===---------------------------------------------------------------------===//