[llvm-commits] [llvm] r112828 - /llvm/trunk/lib/Target/TargetRegisterInfo.cpp

Jim Grosbach grosbach at apple.com
Thu Sep 2 11:19:58 PDT 2010


Quite right.  r112842.

On Sep 2, 2010, at 11:02 AM, Jakob Stoklund Olesen wrote:

> 
> On Sep 2, 2010, at 9:31 AM, Jim Grosbach wrote:
> 
>> Author: grosbach
>> Date: Thu Sep  2 11:31:21 2010
>> New Revision: 112828
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=112828&view=rev
>> Log:
>> Mask out reserved registers when constructing the set of allocatable regs.
>> 
>> Modified:
>>   llvm/trunk/lib/Target/TargetRegisterInfo.cpp
>> 
>> Modified: llvm/trunk/lib/Target/TargetRegisterInfo.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/TargetRegisterInfo.cpp?rev=112828&r1=112827&r2=112828&view=diff
>> ==============================================================================
>> --- llvm/trunk/lib/Target/TargetRegisterInfo.cpp (original)
>> +++ llvm/trunk/lib/Target/TargetRegisterInfo.cpp Thu Sep  2 11:31:21 2010
>> @@ -80,6 +80,11 @@
>>  for (TargetRegisterInfo::regclass_iterator I = regclass_begin(),
>>         E = regclass_end(); I != E; ++I)
>>    getAllocatableSetForRC(MF, *I, Allocatable);
>> +
>> +  // Mask out the reserved registers
>> +  BitVector Reserved = getReservedRegs(MF);
>> +  Allocatable ^= Reserved & Allocatable;
>> +
>>  return Allocatable;
>> }
> 
> Jim,
> 
> I think you should include the case where RC is non-NULL as well. It is used by AggressiveAntiDepBreaker and SimpleRegisterCoalescing.
> 
> /jakob
> 





More information about the llvm-commits mailing list