Displaying 2 results from an estimated 2 matches for "body34".
Did you mean:
body3
2016 Aug 01
2
LLVM Loop vectorizer - 2 vector.body blocks appear
...ollowing piece of C code:
void foo(long *A, long *B, long *C, long N) {
for (long i = 0; i < N; ++i) {
C[i] = A[i] + B[i];
}
}
The vectorized LLVM program I obtain contains 2 vector.body blocks - one named
"vector.body" and the other "vector.body34" for example. The code seems correct - the
first "vector.body" block is responsible for the vector add of a number of vector elements
multiple of VF * UF. There are 2 epilogues which makes things a bit strange - I am still
trying to understand the code.
Is it possible to ex...
2016 Jul 30
1
Instruction selection bug for vector store with FixedStack
...y have difficulties in understanding in the Selection DAG what the
FixedStack operand means. Also, it is not really clear for me how to handle it in my back end.
Below follows and excerpt of the Selection DAG with the problem:
Optimized legalized selection DAG: BB#16 'foo:vector.body34'
SelectionDAG has 71 nodes:
t0: ch = EntryToken
t6: v8i64,ch = CopyFromReg t0, Register:v8i64 %vreg19
t142: i64,ch = CopyFromReg t0, Register:i64 %vreg18
t143: i64 = add t142, Constant:i64<8>
t172: ch = store<ST64[Fi...