summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorNate Begeman <natebegeman@mac.com>2008-02-13 07:06:12 +0000
committerNate Begeman <natebegeman@mac.com>2008-02-13 07:06:12 +0000
commiteea32990a921e540027bc09f2dd6683fcf12d47a (patch)
tree228881985621f1293b86c9ea81a906c10d3841e6 /llvm/lib
parent03ec63f29d982ffe8dba3afb49b757ac49f2df0c (diff)
downloadbcm5719-llvm-eea32990a921e540027bc09f2dd6683fcf12d47a.tar.gz
bcm5719-llvm-eea32990a921e540027bc09f2dd6683fcf12d47a.zip
readme updates
llvm-svn: 47051
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/PowerPC/README_ALTIVEC.txt9
-rw-r--r--llvm/lib/Target/X86/README-SSE.txt11
2 files changed, 20 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/README_ALTIVEC.txt b/llvm/lib/Target/PowerPC/README_ALTIVEC.txt
index 143804da07f..461b4123c79 100644
--- a/llvm/lib/Target/PowerPC/README_ALTIVEC.txt
+++ b/llvm/lib/Target/PowerPC/README_ALTIVEC.txt
@@ -177,3 +177,12 @@ which prevents the vnot pattern from matching.
//===----------------------------------------------------------------------===//
+
+An alternative to the store/store/load approach for illegal insert element
+lowering would be:
+
+1. store element to any ol' slot
+2. lvx the slot
+3. lvsl 0; splat index; vcmpeq to generate a select mask
+4. lvsl slot + x; vperm to rotate result into correct slot
+5. vsel result together.
diff --git a/llvm/lib/Target/X86/README-SSE.txt b/llvm/lib/Target/X86/README-SSE.txt
index d9a03a3610c..197dae38c6f 100644
--- a/llvm/lib/Target/X86/README-SSE.txt
+++ b/llvm/lib/Target/X86/README-SSE.txt
@@ -781,3 +781,14 @@ any number of 0.0 simultaneously. Currently we only use it for simple
insertions.
See comments in LowerINSERT_VECTOR_ELT_SSE4.
+
+//===---------------------------------------------------------------------===//
+
+On a random note, SSE2 should declare insert/extract of 2 x f64 as legal, not
+Custom. All combinations of insert/extract reg-reg, reg-mem, and mem-reg are
+legal, it'll just take a few extra patterns written in the .td file.
+
+Note: this is not a code quality issue; the custom lowered code happens to be
+right, but we shouldn't have to custom lower anything. This is probably related
+to <2 x i64> ops being so bad.
+
OpenPOWER on IntegriCloud