> For data dependency cases, I do some jobs in
> the adjust_cost target hook.
Normally the scheduling takes into account the instruction latencies which you
have specified: for load 2, for mul 4 and for alu 1.
Why do you need to adjust the sched costs? Did you try simply without adjusting
the costs?
> I read THE GNU INSTRUCTION SCHEDULER written by
> Michael D. Tiemann,
This is old work. Meanwhile there is a new scheduler based on finite state
machines. You can read in "The finite state automaton based pipeline hazard
recognizer and instruction scheduler in GCC" by Vladimir Makarov.