[llvm-commits] Patch for X86 to use subregs
evan.cheng at apple.com
Sat Jul 28 14:26:47 PDT 2007
On Jul 28, 2007, at 11:52 AM, Christopher Lamb <christopher.lamb at gmail.com
> On Jul 28, 2007, at 1:48 AM, Evan Cheng wrote:
>> Very cool! I need to read it more carefully.
>> But I see you are lowering zext to a single insert_subreg. Is that
>> right? It won't zero out the top part, no?
> It's only lowering (zext i32 to i64) to an insert_subreg on x86-64
> where all writes to 32-bit registers implicitly zero-extend into the
> upper 32-bits.
I know. But thy mismatch semantically. A insert_subreg to the lower
part should not change the upper half. I think this is only legal for
>> Sent from my iPhone
>> On Jul 28, 2007, at 12:17 AM, Christopher Lamb <christopher.lamb at gmail.com
>> > wrote:
>>> This patch changes the X86 back end to use the new subreg
>>> operations for appropriate truncate and extend operations. This
>>> should allow regression testing of the subreg feature going
>>> forward, as it's now used in a public target.
>>> The patch passed DejaGnu and all of SingleSource on my x86
>>> machine, but there are changes for x86-64 as well which I haven't
>>> been able to test. Output assembly for x86-64 appears sane, but
>>> I'd appreciate someone giving the patch a try on their x86-64
>>> system. Other 32-bit x86 testing is also appreciated.
>>> Christopher Lamb
>>> llvm-commits mailing list
>>> llvm-commits at cs.uiuc.edu
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
> Christopher Lamb
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-commits