[PATCH] Handle some cases of mismatched types in IRCE

Sanjoy Das sanjoy at playingwithpointers.com
Sat Jan 24 12:29:46 PST 2015


> Alright, let's fix this then ;)

Sure, I'll try to send in a fix soon.

> Why does calling SE->forgetLoop(L) (as is done on line 2024), not clear the cache used to answer the SE->getBackedgeTakenCount(L) query (on line 2025)? Or am I misunderstanding something?

That bit of code runs under NDEBUG and VerifyIndVars to check that
widening the induction variable does not change the backedge taken
counts computed by scalar evolution.  The reason I brought it up is
that it too has to compensate for the fact that the backedge taken
count computed by SCEV before and after running indvars have different
types (so what I faced is not an unknown issue).

-- Sanjoy

>
>>
>
>>
>
>> - Sanjoy
>
>>
>
>> > REPOSITORY
>
>>
>
>> >
>
>>
>
>> >   rL LLVM
>
>>
>
>> >
>
>>
>
>> > http://reviews.llvm.org/D7082
>
>>
>
>> >
>
>>
>
>> > EMAIL PREFERENCES
>
>>
>
>> >
>
>>
>
>> >   http://reviews.llvm.org/settings/panel/emailpreferences/
>
>>
>
>
>
> REPOSITORY
>   rL LLVM
>
> http://reviews.llvm.org/D7082
>
> EMAIL PREFERENCES
>   http://reviews.llvm.org/settings/panel/emailpreferences/
>
>



More information about the llvm-commits mailing list