------- Comment #3 from rask at gcc dot gnu dot org 2007-12-13 22:01 -------
In reply to comment #2 from Torbjorn Granlund:
> Another fix would perhaps be to teach synth_mult to understand that
> it's generating code for a 2.5 operand machine (one that can only
> do "a x= b", not "a = b x c", for some operation x). We should
> teach it that there will be moves inserted for sequences that rely
> on a source register twice (more or less).
The root cause of the problem is that ix86_rtx_cost() doesn't get an insn (or
at least a SET expression) to look at and therefore can't check the operands
and adjust the cost estimate accordingly.
--
rask at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |missed-optimization
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34452