bfin.md (UNSPEC_NOP): New constant.
authorBernd Schmidt <bernd.schmidt@analog.com>
Tue, 12 Jun 2007 14:35:13 +0000 (14:35 +0000)
committerBernd Schmidt <bernds@gcc.gnu.org>
Tue, 12 Jun 2007 14:35:13 +0000 (14:35 +0000)
commitb18e284e3c375396e2644ca74e28852b0756c468
tree82730146ed366479bd3a679168528be660164548
parent8c8fa92702f267ebb54c4351b9dfd91977fddd46
bfin.md (UNSPEC_NOP): New constant.

* config/bfin/bfin.md (UNSPEC_NOP): New constant.
(forced_nop): New pattern.
* config/bfin/bfin.c: Include "df.h".
(add_to_reg): Use df_regs_ever_live_p instead of regs_ever_live.
(bfin_discover_loop): Use df_get_live_in instead of
global_live_at_start.
(bfin_reorder_loops): Pass 0 to cfg_layout_initialize.  Call
df_analyze when done.
(gen_one_bundle): Don't generate SEQUENCE insns, just put modes on
the insns.  Use QImode for the final insn in a bundle.  Call
df_insn_rescan on generated NOPs; use gen_forced_nop instead of
gen_nop.
(reorder_var_tracking_notes): New function.
(bfin_reorg): Pass no argument to split_all_insns.  Don't call
update_life_info.  Call df_analyze after scheduling and bundle
generation.  Call reorder_var_tracking_notes if generating these notes.
Call df_finish_pass at the end.

From-SVN: r125648
gcc/ChangeLog
gcc/config/bfin/bfin.c
gcc/config/bfin/bfin.md