[PATCH] D24517: GVN-hoist: fix store past load dependence analysis (PR30216)

Daniel Berlin via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 15 08:11:28 PDT 2016


On Thu, Sep 15, 2016 at 6:12 AM, Sebastian Pop <sebpop.llvm at gmail.com>
wrote:

> >> liveOnEntry uses cannot be reached by walking through the MSSA.
> > These will both be uses of the live on entry access.
> > It's a real access, it has real uses :)
>
> I see, now it makes sense.
> I was under the impression that one cannot walk through the uses of
> liveOnEntry.
>
> > Given how we determine aliasing, and we use optimize, an aliased load
> must
> > be attached to *either* live on entry, *or* a store that clobbers your
> store
>
> Agreed.
>
> > Note: I don't claim this is efficient or sensible. I'm simply refuting
> the
> > claim that they literally cannot be extracted.
> >
> > They can.
> > It's just inefficient as hell :)
>
> I'll send a patch implementing your algorithm.
> I think it still could be more efficient than the patch I sent,
> as it would ask the alias question only for the liveOnEntry loads.
>

Sadly, I think this will fail when the use-opt limit is hit.
I have a patch that can fix this that i owe Geoff Berry anyway.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160915/f1c19118/attachment.html>


More information about the llvm-commits mailing list