[llvm-commits] [llvm] r112567 - /llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp

Jakob Stoklund Olesen stoklund at 2pi.dk
Fri Sep 10 08:03:22 PDT 2010


On Sep 9, 2010, at 11:56 PM, Evan Cheng wrote:

> 
> On Aug 30, 2010, at 6:27 PM, Jakob Stoklund Olesen wrote:
> 
>> Author: stoklund
>> Date: Mon Aug 30 20:27:49 2010
>> New Revision: 112567
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=112567&view=rev
>> Log:
>> Add experimental -disable-physical-join command line option.
>> 
>> Eventually, we want to disable physreg coalescing completely, and let the
>> register allocator do its job using hints.
>> 
>> This option makes it possible to measure the impact of disabling physreg
>> coalescing.
> 
> But that will make the coalescer simpler! It will no longer be appropriately named.

I am sure we can think of something else to stick in there, so we won't have to rename it TrivialCoalescing.

The code in http://llvm.org/pr8112 is interesting re physreg coalescing. When you compile it with -disable-physical-join, the coalescer removes all virtual copies, and the allocator removes all but one physreg copy.

To get rid of the last copy, an xor should have been commuted during coalescing. But since the coalescer did a perfect job of the virtual copies, that is hard to spot.



-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 1929 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20100910/c82b1ff3/attachment.bin>


More information about the llvm-commits mailing list