add a note

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27809 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2006-04-18 18:30:19 +00:00
parent 0090120c2b
commit 87140126e8

View File

@ -85,3 +85,26 @@ This is probably only reasonable for a post-pass scheduler.
//===----------------------------------------------------------------------===//
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.
//===----------------------------------------------------------------------===//