[PATCH] [NaryReassociate] Run EarlyCSE/GVN after NaryReassociate

Jingyue Wu jingyue at google.com
Fri May 22 14:43:35 PDT 2015


I just tested that EarlyCSE after NaryReassociate will work.

Not sure about the one after SLSR. Running EarlyCSE there used to emit
significantly worse code, but things may have changed. Will test that too.

On Fri, May 22, 2015 at 2:23 PM, Daniel Berlin <dberlin at dberlin.org> wrote:

> FWIW: Rerunning GVN can be *really* expensive.
> I can make EarlyCSE really fast by removing the scoped hash table if
> that works for you instead?
>
>
>
> On Fri, May 22, 2015 at 2:14 PM, Jingyue Wu <jingyue at google.com> wrote:
> > Hi broune, meheff,
> >
> > This patch made two improvements to NaryReassociate and the NVPTX
> pipeline
> >
> > 1. Run EarlyCSE/GVN after NaryReassociate to get rid of redundant common
> > expressions.
> >
> > 2. When adding an instruction to SeenExprs, maps both the SCEV before
> and after
> > reassociation to that instruction.
> >
> > http://reviews.llvm.org/D9947
> >
> > Files:
> >   lib/Target/NVPTX/NVPTXTargetMachine.cpp
> >   lib/Transforms/Scalar/NaryReassociate.cpp
> >   test/Transforms/NaryReassociate/NVPTX/nary-gep.ll
> >
> > EMAIL PREFERENCES
> >   http://reviews.llvm.org/settings/panel/emailpreferences/
> >
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150522/2a2c3fcb/attachment.html>


More information about the llvm-commits mailing list