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

Dan Gohman gohman at apple.com
Thu Jul 9 11:00:23 PDT 2009


On Jul 9, 2009, at 1:15 AM, Duncan Sands wrote:


> Hi Dave,
>
>
>> I haven't been tracking this, so can someone explain what the  
>> "vectors of
>>
>> i1 problem" is?  Is it a problem of how to generate code on  
>> architectures
>>
>> that don't have a mask concept?
>>
>
> how is <8 x i1> stored in memory?  8 bits packed into a byte, or  
> like an
> array [8 x i1], which on most machines is stored as 8 bytes?  I  
> think it
> is clear that it should be stored the same as an array would be.

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.

Dan




More information about the llvm-commits mailing list