This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: RFA: Combine issue
- From: Josh Conner <jconner at apple dot com>
- To: Josh Conner <jconner at apple dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Thu, 4 Aug 2005 16:57:37 -0700
- Subject: Re: RFA: Combine issue
- References: <6CDFDFB3-1BC8-4F77-ABFB-8FCDC77D82A8@apple.com>
Am I misinterpreting the logic? Am I missing something
fundamental? I appreciate any feedback / pointers / clues / etc...
Nothing like hitting the send button to make the lightbulb go on.
I think I understand what was being attempted now. IIUC, the logic
should have been (again, for the QI/SI instance):
If at least _26_ bits are set, and if c1 is < 64, ok to make the
transformation.
In this case, I don't see an instance where "compare (subreg (a -
c1), c2)" is not equivalent to "compare (a - c1, c2)". It appears to
be a simple typo in the last line of the conditional:
(GET_MODE_BITSIZE (inner_mode) - mode_width - 1)
Should be:
(GET_MODE_BITSIZE (inner_mode) - (mode_width - 1))
or:
(GET_MODE_BITSIZE (inner_mode) - mode_width + 1)
I'll run this through a number of tests and submit an actual patch,
unless I'm still missing something...
- Josh