[llvm-commits] [llvm] r52421 - /llvm/trunk/lib/CodeGen/LowerSubregs.cpp

Evan Cheng evan.cheng at apple.com
Tue Jun 17 12:24:56 PDT 2008


Right. However, the current implementation separates SUBREG_TO_REG  
from INSERT_SUBREG. The later is allowed to be coalesced away, but not  
the former. For now, we'll use this distinction to determine whether  
it's possible to remove (what looks like) the identity copy.

Evan

On Jun 17, 2008, at 11:16 AM, Chris Lattner wrote:

>
> On Jun 17, 2008, at 10:59 AM, Evan Cheng wrote:
>
>> Author: evancheng
>> Date: Tue Jun 17 12:59:16 2008
>> New Revision: 52421
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=52421&view=rev
>> Log:
>> It's not safe to remove SUBREG_TO_REG that looks like identity
>> copies, e.g. movl %eax, %eax on x86-64 actually does a zero-extend.
>
> It sounds like we need a "movl %eax, %eax" that is a copy, and a
> separate "movl %eax, %eax" machine instr that is a zeroextend.
>
> -Chris
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list