[PATCH] Handle some cases of mismatched types in IRCE

Sanjoy Das sanjoy at playingwithpointers.com
Fri Jan 23 12:24:46 PST 2015


> Intentional or not, I think this is a bad idea. The results of an analysis should not depend on what transformations were run previously, but only on the current state of the IR. Do you agree?

Agreed.  It was mildly confusing when I could not reproduce the issue
with an IR dump taken before the pass was run in clang.

> If nothing else, there should at least be a loud warning about it on the interface to getBackedgeTakenCount in ScalarEvolution.h. I'd rather fix this so that we can get the backedge count of the proper size (maybe we need a better updating interface in SE? -- IndVars seems to *have* the correct updated BETC).

Currently the only precedent for updating cached information in a
ScalarEvolution object are the forget.* family of functions.  Will
adding anything more fine grained than these
("widenLoopBackedgeTakenCount") be a layering violation?

-- Sanjoy

>
>
> 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