[llvm-commits] [llvm] r55137 - /llvm/trunk/lib/Analysis/ValueTracking.cpp

Daniel Berlin dberlin at dberlin.org
Fri Aug 22 01:33:47 PDT 2008


My guess is that he didn't mean to do this:

 +          APInt KnownZero3(KnownZero), KnownOne3(KnownOne);
>> +          KnownOne3.clear();
>> +          KnownZero3.clear();

After all, why initialize them to the value and then clear them the
next second :)

On Thu, Aug 21, 2008 at 6:41 PM, Bill Wendling <isanbard at gmail.com> wrote:
> David,
>
> This patch looks like it's causing the llvm-gcc bootstrap to go into
> an infinite loop. I reverted it for now. Could you please check it
> out?
>
> -bw
>
> On Thu, Aug 21, 2008 at 1:45 PM, David Greene <greened at obbligato.org> wrote:
>> Author: greened
>> Date: Thu Aug 21 15:45:12 2008
>> New Revision: 55137
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=55137&view=rev
>> Log:
>>
>> Fix ComputeMaskedBits to handle phis correctly.  We need to take the
>> minimum of the known zeros.
>>
>> Modified:
>>    llvm/trunk/lib/Analysis/ValueTracking.cpp
>>
>> Modified: llvm/trunk/lib/Analysis/ValueTracking.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/ValueTracking.cpp?rev=55137&r1=55136&r2=55137&view=diff
>>
>> ==============================================================================
>> --- llvm/trunk/lib/Analysis/ValueTracking.cpp (original)
>> +++ llvm/trunk/lib/Analysis/ValueTracking.cpp Thu Aug 21 15:45:12 2008
>> @@ -509,9 +509,13 @@
>>           ComputeMaskedBits(R, Mask2, KnownZero2, KnownOne2, TD, Depth+1);
>>           Mask2 = APInt::getLowBitsSet(BitWidth,
>>                                        KnownZero2.countTrailingOnes());
>> -          KnownOne2.clear();
>> -          KnownZero2.clear();
>> -          ComputeMaskedBits(L, Mask2, KnownZero2, KnownOne2, TD, Depth+1);
>> +
>> +          // We need to take the minimum number of known bits
>> +          APInt KnownZero3(KnownZero), KnownOne3(KnownOne);
>> +          KnownOne3.clear();
>> +          KnownZero3.clear();
>> +          ComputeMaskedBits(L, Mask2, KnownZero3, KnownOne3, TD, Depth+1);
>> +
>>           KnownZero = Mask &
>>                       APInt::getLowBitsSet(BitWidth,
>>                                            KnownZero2.countTrailingOnes());
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
> _______________________________________________
> 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