[Bug tree-optimization/67628] [tree-optimization] (a && b) && c shows better codegen than a && (b && c)
ktkachov at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Sep 21 14:23:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67628
--- Comment #4 from ktkachov at gcc dot gnu.org ---
(In reply to Andrew Pinski from comment #3)
> (In reply to ktkachov from comment #2)
> > (In reply to Andrew Pinski from comment #1)
> > > This is due to the fold-const.c optimization which should not be there any
> > > more. You need to do benchmarking on x86 also if you remove it.
> > >
> >
> > could you elaborate what optimization is that?
> > Is it a matter of fold-const.c or match.pd canonicalizing the expression in
> > some way?
>
> The optimization is converting andif into and. Basically ifcombine pass does
> not recombine them if fold-const does it early on.
Right, seems like the code in fold_truth_andor.
I think ifcombine should be doing a better job here though
More information about the Gcc-bugs
mailing list