[llvm-commits] CVS: llvm/lib/Target/PowerPC/README_ALTIVEC.txt
Chris Lattner
lattner at cs.uiuc.edu
Tue Apr 18 11:30:31 PDT 2006
Changes in directory llvm/lib/Target/PowerPC:
README_ALTIVEC.txt updated: 1.30 -> 1.31
---
Log message:
add a note
---
Diffs of the changes: (+23 -0)
README_ALTIVEC.txt | 23 +++++++++++++++++++++++
1 files changed, 23 insertions(+)
Index: llvm/lib/Target/PowerPC/README_ALTIVEC.txt
diff -u llvm/lib/Target/PowerPC/README_ALTIVEC.txt:1.30 llvm/lib/Target/PowerPC/README_ALTIVEC.txt:1.31
--- llvm/lib/Target/PowerPC/README_ALTIVEC.txt:1.30 Tue Apr 18 12:59:36 2006
+++ llvm/lib/Target/PowerPC/README_ALTIVEC.txt Tue Apr 18 13:30:19 2006
@@ -85,3 +85,26 @@
//===----------------------------------------------------------------------===//
+For this function:
+
+void test(vector float *A, vector float *B) {
+ vector float C = (vector float)vec_cmpeq(*A, *B);
+ if (!vec_any_eq(*A, *B))
+ *B = (vector float){0,0,0,0};
+ *A = C;
+}
+
+we get the following basic block:
+
+ ...
+ lvx v2, 0, r4
+ lvx v3, 0, r3
+ vcmpeqfp v4, v3, v2
+ vcmpeqfp. v2, v3, v2
+ bne cr6, LBB1_2 ; cond_next
+
+The vcmpeqfp/vcmpeqfp. instructions currently cannot be merged when the
+vcmpeqfp. result is used by a branch. This can be improved.
+
+//===----------------------------------------------------------------------===//
+
More information about the llvm-commits
mailing list