This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 07/30/2015 10:52 AM, Jason Merrill wrote:
We want to handle the shorten_compare stuff independently of delayed folding if at all possible. It's a bit of a rats nest.This hunk is necessary as we don't use canonical-form produced by shorten_compare anymore. Therefore special operand can occur on right-hand side too.That seems like a problem, if the middle end is expecting the canonical form. What is your plan for dealing with shorten_compare issues, again?
One of the general problems we have is that shorten_compare also does canonicalization and issues warnings. If we're no longer getting into shorten_compare for some code, then that canonicalization isn't being done.
Note, anything outside of the C/C++ front-ends depending on that canonicalization done by shorten_compare is, IMHO, broken.
I've extracted a patch from Kai's shorten_compare work to move the canonicalization into match.pd *but* that runs into testsuite regressions because shorten_compare is also where we emit certain warnings for comparisons that are always true/false.
With the canonicalization moved to match.pd, shorten_compare no longer recognizes a particular sequence and we lose the warning. I haven't yet found a good place to relocate that warning. This has been pushed down several items in my TODO stack.
Jeff
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |