[PATCH] D24104: Make GlobalsAA ignore dead constant expressions.
Michael Kuperstein via llvm-commits
llvm-commits at lists.llvm.org
Wed Aug 31 16:34:34 PDT 2016
Right, nothing enforces this in the current PM.
But LCSSA isn't really a good example - we explicitly don't want to be able
to "require" transformation passes in the new PM, neither by another
transformation or by an analysis. That, I believe, is enforced, and LCSSA -
or any other potential "this pass require the IR to be in a certain form"
issue - will have to be handled in a different way. I don't believe we have
a good solution for this yet, Chandler may know more.
I'm afraid we may have other cases of analyses performing "trivial"
simplifications, though, and I don't believe the new PM currently checks
this.
On Wed, Aug 31, 2016 at 4:25 PM, Daniel Berlin <dberlin at dberlin.org> wrote:
> Theoretically, nothing checks or enforces this (at least in the current
> PM).
> Is it checked/enforced in the New PM?
>
> If an analysis does something like "require LCSSA", it will modify the IR.
>
>
> On Wed, Aug 31, 2016 at 4:22 PM, Hal Finkel via llvm-commits <
> llvm-commits at lists.llvm.org> wrote:
>
>> hfinkel added a subscriber: hfinkel.
>>
>> ================
>> Comment at: lib/Analysis/GlobalsModRef.cpp:277
>> @@ -276,1 +276,3 @@
>> + // AnalyzeUsesOfPointer assumes all uses of the value are live.
>> + F.removeDeadConstantUsers();
>> if (!AnalyzeUsesOfPointer(&F)) {
>> ----------------
>> mkuper wrote:
>> > Don't know enough about GlobalsAA to approve this anyway, but as a
>> matter of principle - is it acceptable for an analysis pass to modify the
>> IR?
>> No, they shouldn't.
>>
>>
>> Repository:
>> rL LLVM
>>
>> https://reviews.llvm.org/D24104
>>
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160831/8207fa7a/attachment.html>
More information about the llvm-commits
mailing list