On Wed, May 06, 2015 at 08:32:13AM +0100, Richard Sandiford wrote: > > Alternately, you could find a way to accurately track if we're inside a > > MEM, where we want to canonicalize things slightly differently. Once we > > can accurately track if we're inside a MEM, then we no longer have to > > have the hack for PLUS/MINUS. > > A third even higher hurdle would be to remove the idea that the > canonical form of an expression depends on whether it's in a MEM > or not. It just causes confusion when an lea is created from an > existing MEM address. > :-)
Fourth, whip combine into shape until it no longer has its special "more strict" ideas of what is canonical. Fifth (higher, higher!), relax some of the ad-hoc "canonicalisation" rules, make recog recognise *both* forms (or more than two in some cases, even). Segher