hw-doloop.c: New file.
authorBernd Schmidt <bernds@codesourcery.com>
Thu, 7 Jul 2011 15:42:41 +0000 (15:42 +0000)
committerBernd Schmidt <bernds@gcc.gnu.org>
Thu, 7 Jul 2011 15:42:41 +0000 (15:42 +0000)
commit9d9c740d1efcd1bd597ef4734227996a8f69151d
treef9552f79c86d74255de5a691ef17a3767e4337fb
parentf0ea75811ae63b50e6c06ad694a993a8182ba012
hw-doloop.c: New file.

* hw-doloop.c: New file.
* hw-doloop.h: New file.
* Makefile.in (OBJS): Add hw-doloop.o.
(hw-doloop.o): New rule.
($(obj_out_file)): Add hw-doloop.h dependency.
* config/bfin/bfin.c: Include "hw-doloop.h".
(loop_info, DEF_VEC_P for loop_info, loop_info_d): Remove.
(bfin_dump_loops, bfin_bb_in_loop, bfin_scan_loop): Remove.
(hwloop_optimize): Renamed from bfin_optimize_loop.  Argument
type changed to hwloop_info.  Return bool, true if the loop was
successfully optimized.  Remove code that was moved to
hw-doloop.c, and adjust other parts.
(hwloop_fail): New static function, containing parts that used
to be in bfin_optimize_loop.
(bfin_discover_loop, bfin_discover_loops, free_loops,
bfin_reorder_loops): Remove.
(hwloop_pattern_reg): New static function.
(bfin_doloop_hooks): New variable.
(bfin_reorg_loops): Remove most code, call reorg_loops.
* config/bfin/bfin.md (doloop_end splitter): Also enable if
loop counter is a memory_operand.

From-SVN: r175985
gcc/ChangeLog
gcc/Makefile.in
gcc/config/bfin/bfin.c
gcc/config/bfin/bfin.md
gcc/hw-doloop.c [new file with mode: 0644]
gcc/hw-doloop.h [new file with mode: 0644]