[llvm-commits] [llvm] r52691 - in /llvm/trunk/lib/Target/X86: X86CallingConv.td X86ISelLowering.cpp X86InstrMMX.td X86RegisterInfo.td

Chris Lattner clattner at apple.com
Tue Jun 24 22:03:10 PDT 2008


On Jun 24, 2008, at 6:20 PM, Dale Johannesen wrote:

>
> On Jun 24, 2008, at 5:59 PMPDT, Eli Friedman wrote:
>
>> "Add v2f32 (MMX) type to X86."
>>
>> This doesn't make any sense.  x86 doesn't have a v2f32 type: floating
>> point operations aren't supported on MMX registers.  Is there  
>> anything
>> useful that can be done with a legal v2f32 that can't be done by just
>> bitcasting it to a v2i32?
>
> For parameter passing purposes this type uses MMX registers, so I
> think it makes sense to represent it this way.
> You could probably get it to work the way you suggest.

I tend to agree with Eli here.  The code generator only considers a  
type to be legal if there are a pretty decent set of operations  
supported on it.  Why couldn't llvm-gcc turn the type into v2i32 and  
use a bitcast when passing?

-Chris 



More information about the llvm-commits mailing list