[PATCH]: Add CSE pass directly after expand / Add register equal notes for divmod4 for AVR

Björn Haase bjoern.m.haase@web.de
Thu Jun 16 09:51:00 GMT 2005


Hi Steven,

> So you are proposing a patch that
> 2. introduces regressions, in other words adds bugs, on x86-64.
I am of course working at this issue and as you might have identified by 
reading my statement that there presently is still a regression: 
I never did expect the patch to be committed *as is*.

The point why I have posted the patch never the less is: I don't have time to 
waste and I refuse to be working dozens of hours on an approach requiring an 
early CSE pass in case that there never is any hope to get the approach 
integrated into gcc because some folks favorite target does not benefit much 
from it. 

My present impression is that it is impossible to get any change into the gcc 
mid-end tree. So please understand when I ask whether in this case there is 
at least a tiny chance that justifies to consider to continue working on an 
issue that precisely requires such a mid-end change as a prerequisite.

I would *not* have suggested any change in the mid-end if I had seen any other 
possibility for addressing the issue I have described in my post simply by 
modifications on the back-ends!!! 

As stated in my previous mail: The main issue IMO is not this shitty divmod4 
missed optimization for AVR. The main issue is, how to restructure back-ends 
after the cc0->CCmode conversion so that one could establish condition code 
re-use for instruction sequences after subreg lowering at expand. As 
explained this could IMO also help to improve DImode operatations on x86. The 
presently used splitters after reload are, IMO, certainly far from ideal.

So, if it helps you, consider my patch to be in fact a 
"RFC: Is there any hope to get an early CSE pass running before a 
remove_unneccessary_notes() eliminates all of the reg_equal notes for speed 
reasons?"
IMO, having a patch to base the discussion on, is the better solution in 
comparison to posting a RFC message to gcc .at. gcc .dot. gnu .dot. org.

Yours,

Björn



More information about the Gcc-patches mailing list