[PATCH] Improved target tuning in simplify-rtx.c

Geert Bosch bosch@gnat.com
Tue Jun 15 18:33:00 GMT 2004


On Jun 15, 2004, at 12:10, Roger Sayle wrote:
> As mentioned by Ian Lance Taylor many of these cost values are 
> heuristic
> in nature.  The number of "cycles" taken to execute a given instruction
> depends heavily upon the instructions around it and the state of the
> pipeline/scheduling group, contents of primary and secondary caches,
> position within cache-line, register bypasses, hazzards, etc...

Probably a more realistic cost model would use more than a single
dimension. Possibilities would be: (latency, throughput, code size,
register pressure). Latency, throughput and code size should be
available already and register pressure could be estimated from
the instruction patterns.

Then cost is a weighted sum of these axes, where weights may
differ depending on estimated execution frequency and register
pressure in a particular basic block.

   -Geert



More information about the Gcc mailing list