[PATCH] InstCombine ((x | ~y) ^ (~x ^ y)) to (x & ~y)
dberlin at dberlin.org
Thu Aug 28 09:28:54 PDT 2014
On Thu, Aug 28, 2014 at 8:05 AM, Anton Korobeynikov <anton at korobeynikov.info
> > There is a discussion is going on at
> regarding a more general way to handle matching
> > different patterns. If we can come up with a general approach that would
> be best. But till then we should not miss any optimizing opportunity I
I'm confused. Is there an urgent reason not to slow down and think about
Sure. Just present how often this pattern triggers on LLVM testsuite and
> As Anton implies, everything is tradeoffs.
Adding a *ton* of separate matchers (and so far i've seen a *lot* go by
here) without any data that they ever trigger on anything, or make any
difference, is likely to add maintenance burden/etc for little benefit.
LLVM *already* misses optimizing opportunities everywhere, *on purpose*,
because the cost of getting those optimizing opportunities, in terms of
both compile time and code maintenance, is greater than the benefit to the
I don't see why this area of the compiler would be subject to different
So, like Anton, i'd really like to see data here, or a real design, as the
amount of stuff being added is getting quite large.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-commits