[llvm-commits] patch: use movd for 32-bits and movq for 64-bits consistently

Eli Friedman eli.friedman at gmail.com
Thu Jun 16 15:37:16 PDT 2011


On Thu, Jun 16, 2011 at 3:35 PM, Nick Lewycky <nlewycky at google.com> wrote:
> On 16 June 2011 15:29, Eli Friedman <eli.friedman at gmail.com> wrote:
>>
>> On Thu, Jun 16, 2011 at 2:33 PM, Anton Korobeynikov <asl at math.spbu.ru>
>> wrote:
>> >> IIRC, we do things the way we do (outside of parsing asm) because the
>> >> old Darwin assembler wouldn't accept "movq %rax, %xmm0", and required
>> >> "movd %rax, %xmm0" instead.  I don't recall all the details of that,
>> >> though.
>> > Yeah. Probably it's safe nowadays to get rid of this workaround?
>>
>> Note that even if we do decide to get rid of that workaround, we still
>> need to do the right thing with "movd %rax, %xmm0".
>
> Reject it? Or accept it and assemble as "movq %rax, %xmm0" like GNU as
> does? We've been pretty aggressive about rejecting bad assembly, regardless
> of what as does.

Accept it; it would be weird to reject a construct that LLVM itself
has been generating for a very long time.

-Eli




More information about the llvm-commits mailing list