RFA: Combine issue

Josh Conner jconner@apple.com
Thu Aug 4 23:58:00 GMT 2005


> 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



More information about the Gcc mailing list