search for: ptrinduct

Displaying 5 results from an estimated 5 matches for "ptrinduct".

2013 Oct 21
2
[LLVMdev] First attempt at recognizing pointer reduction
...re yet, just trying to understand the induction/reduction code first and what comes out of it. I think the right approach to get examples like this is that we need to > recognize strided pointer inductions (we only support strides by one > currently). > I see. I'll have a look at IK_PtrInduction and see what patterns I can spot. Do you envisage a new IK type for strided induction, or just work with the PtrInduction to extend the concept of a non-unit stride (ie. separate Step from ElementSize)? cheers, --renato -------------- next part -------------- An HTML attachment was scrubbed......
2013 Oct 21
0
[LLVMdev] First attempt at recognizing pointer reduction
...st trying to understand the induction/reduction code first and what comes out of it. > > > I think the right approach to get examples like this is that we need to recognize strided pointer inductions (we only support strides by one currently). > > I see. I'll have a look at IK_PtrInduction and see what patterns I can spot. > > Do you envisage a new IK type for strided induction, or just work with the PtrInduction to extend the concept of a non-unit stride (ie. separate Step from ElementSize)? Either representation should be fine. I think the bigger task is not recognizing...
2013 Oct 21
0
[LLVMdev] First attempt at recognizing pointer reduction
Renato, can you post a hand-created vectorized IR of how a reduction would work on your example? I don’t think that recognizing this as a reduction is going to get you far. A reduction is beneficial if the value reduced is only truly needed outside of a loop. This is not the case here (we are storing/loading from the pointer). Your example is something like WRITEPTR = phi i8* [ outsideval,
2013 Oct 21
5
[LLVMdev] First attempt at recognizing pointer reduction
Hi Nadav, Arnold, I managed to find some time to work on the pointer reduction, and I got a patch that can make "canVectorize()" pass. Basically what I do is to teach AddReductionVar() about pointers, saying they don't really have an exit instructions, and that (maybe) the final store is a good candidate (is it?). This makes it recognize the writes and reads, but then
2013 Oct 21
0
[LLVMdev] LLVMdev Digest, Vol 112, Issue 56
...st trying to understand the induction/reduction code first and what comes out of it. > > > I think the right approach to get examples like this is that we need to recognize strided pointer inductions (we only support strides by one currently). > > I see. I'll have a look at IK_PtrInduction and see what patterns I can spot. > > Do you envisage a new IK type for strided induction, or just work with the PtrInduction to extend the concept of a non-unit stride (ie. separate Step from ElementSize)? Either representation should be fine. I think the bigger task is not recognizing...