[llvm-commits] PATCH: remove VICmp and VFCmp.

Duncan Sands baldrick at free.fr
Thu Jul 9 13:27:03 PDT 2009


David Greene wrote:
> On Thursday 09 July 2009 13:20, Chris Lattner wrote:
>>> Storing an <8 x i1> to memory with the same layout as [8 x i1] -- as
>>> 8 bytes -- has the nice property of being friendly to various LLVM
>>> assumptions. Unfortunately, it's also highly artificial; existing
>>> vector hardware I'm familiar with doesn't work that way, and it
>>> seems unlikely that anyone ever would want it to. However, it might
>>> be ok for LLVM to define <8 x i1> stores this way for consistency
>>> and then tell everyone to avoid using them.
> 
> So what's the alternative?  Bitcast to i8 and then store?

I don't think bitcasting to i8 will be possible: lots of places
"know" that bitcast is the same as "store as first type, load
as the other".  If <8 x i1> doesn't store like i8 then allowing
bitcast would break this invariant.  I don't think that's wise.

Ciao,

Duncan.



More information about the llvm-commits mailing list