aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-08-24 15:17:59 +0000
committerChris Lattner <sabre@nondot.org>2007-08-24 15:17:59 +0000
commitb23f4c5f44203a3ebe9153ed5dc15dc08623dcbd (patch)
tree450186dc0aa2d830f768b4e2d8b65fcb3b05fec8
parent4259fe3281558d129a5442d1eba03b390ed50bc8 (diff)
downloadexternal_llvm-b23f4c5f44203a3ebe9153ed5dc15dc08623dcbd.zip
external_llvm-b23f4c5f44203a3ebe9153ed5dc15dc08623dcbd.tar.gz
external_llvm-b23f4c5f44203a3ebe9153ed5dc15dc08623dcbd.tar.bz2
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41359 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/X86/README-SSE.txt14
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/Target/X86/README-SSE.txt b/lib/Target/X86/README-SSE.txt
index 40404e5..cb857fb 100644
--- a/lib/Target/X86/README-SSE.txt
+++ b/lib/Target/X86/README-SSE.txt
@@ -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.
+
+//===---------------------------------------------------------------------===//