Commit de19227a by Tom Wood

(schedule_block): Add a virtual cycle counter CLOCK.

	Pass CLOCK to schedule_insn.
	Compute the tail in the scheduling loop, not before it.
	Enable the stall code that advances the insn queue.
	Select the insn to schedule and block others with schedule_select.
	(adjust_priority): Renamed from launch_link.
	(schedule_insn): Renamed from launch_links.
(insn_queue): Use INSN_QUEUE_SIZE.

(insn_units, insn_blockage, insn_tick, unit_last_insn,
	unit_tick, unit_n_insns): New variables.
	(schedule_insns): Allocate and initialize insn_tick, insn_units, and
	insn_blockage.
	(insn_unit, blockage_range, clear_units, prepare_unit, schedule_unit,
	actual_hazard_this_instance, actual_hazard, potential_hazard,
	schedule_select): New functions.
	(schedule_block): Add dependencies to force insns to remain in order
	at the end of a block rather than relying on having the scheduler
	issue them in priority order.
(insn_cost): Add LINK and USED parameters.  All callers
	changed.  Supply an ADJUST_COST interface.
	(insn_cost): Make a dependence from a USE insn free.
	(priority): Clear the link cost adjustment bits.

From-SVN: r1951
parent ef3fad04
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment