[LLVMdev] AVX Shuffles & PatLeaf Help Needed

David Greene dag at cray.com
Thu Dec 17 15:40:09 PST 2009


On Thursday 17 December 2009 17:30, David Greene wrote:

> Can you expand on this with an example?  There seems to be an awful lot of
> shuffle patterns and predicates in PPCInstrAltivec.td.  What do you mean
> by, "Canonicalize to byte ops?"  Can you walk me through how that works
> with Altivec?

Ah wait, I think I know what you mean.  For x86, you mean rewrite the shuffle
operations in X86ISelLowering to operate on 32-bit elements always (the 
shuffle instructions with immediate masks don't have 16-bit or 8-bit 
variants), bitcasting the vector operands as appropriate and reformulating the 
index vector to account for the bitcasts.  Is that right?

I think I can see how to do this.  I think before I start this I will try to
check in as muich AVX work as I can so that we all see the changes as they 
happen.  I have quite an extensive set backlogged but I think it's stable
enough to start releasing now.

                               -Dave



More information about the llvm-dev mailing list