On Thu, 5 Jul 2007, Roman Zippel wrote: > Hi, > > On Thu, 5 Jul 2007, Richard Guenther wrote: > > > > How should this be optimized within the context of your canonicalization? > > > > For example by making fold_plusminus_mult_expr do what its comment > > suggest, "No identical multiplicands; see if we can find a common > > power-of-two factor ..." > > > > Can you try the following and see if it helps m68k? > > The problem isn't specific to m68k, it's a problem for i386 and probably > others as well. > The patch is unfortunately no improvement, the problem is the canonical > form for addresses is (p * c) + o, which directly conflicts with yours.
For me both canonicalizations generate movl 8(%ecx,%edx,4), %eax addl 4(%ecx,%edx,4), %eax Richard.