summaryrefslogtreecommitdiff
path: root/gcc/loop-init.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2014-10-15 08:02:06 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2014-10-15 08:02:06 +0000
commitc836de3fcd856e4a526169d0c7eec8ab65b0eb8f (patch)
treee4fe1dea885c050d43cd384f86a97b01f26934e9 /gcc/loop-init.c
parent0601876c5e29df9cfc1dd6380bd3df6b00cf3f67 (diff)
downloadgcc-c836de3fcd856e4a526169d0c7eec8ab65b0eb8f.tar.gz
* loop-unroll.c: (decide_unrolling_and_peeling): Rename to
(decide_unrolling): ... this one. (peel_loops_completely): Remove. (decide_peel_simple): Remove. (decide_peel_once_rolling): Remove. (decide_peel_completely): Remove. (peel_loop_simple): Remove. (peel_loop_completely): Remove. (unroll_and_peel_loops): Rename to ... (unroll_loops): ... this one; handle only unrolling. * cfgloop.h (lpt_dec): Remove LPT_PEEL_COMPLETELY and LPT_PEEL_SIMPLE. (UAP_PEEL): Remove. (unroll_and_peel_loops): Remove. (unroll_loops): New. * passes.def: Replace pass_rtl_unroll_and_peel_loops by pass_rtl_unroll_loops. * loop-init.c (gate_rtl_unroll_and_peel_loops, rtl_unroll_and_peel_loops): Rename to ... (gate_rtl_unroll_loops, rtl_unroll_loops): ... these; update. (pass_rtl_unroll_and_peel_loops): Rename to ... (pass_rtl_unroll_loops): ... this one. * tree-pass.h (make_pass_rtl_unroll_and_peel_loops): Remove. (make_pass_rtl_unroll_loops): New. * tree-ssa-loop-ivcanon.c: (estimated_peeled_sequence_size, try_peel_loop): New. (canonicalize_loop_induction_variables): Update. * gcc.dg/tree-prof/peel-1.c: Update. * gcc.dg/tree-prof/unroll-1.c: Update. * gcc.dg/gcc.dg/unroll_1.c: Update. * gcc.dg/gcc.dg/unroll_2.c: Update. * gcc.dg/gcc.dg/unroll_3.c: Update. * gcc.dg/gcc.dg/unroll_4.c: Update. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216238 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/loop-init.c')
-rw-r--r--gcc/loop-init.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/gcc/loop-init.c b/gcc/loop-init.c
index b530120fdf8..8a42650f63a 100644
--- a/gcc/loop-init.c
+++ b/gcc/loop-init.c
@@ -357,7 +357,6 @@ pass_loop2::gate (function *fun)
if (optimize > 0
&& (flag_move_loop_invariants
|| flag_unswitch_loops
- || flag_peel_loops
|| flag_unroll_loops
#ifdef HAVE_doloop_end
|| (flag_branch_on_count_reg && HAVE_doloop_end)
@@ -537,7 +536,7 @@ make_pass_rtl_move_loop_invariants (gcc::context *ctxt)
namespace {
-const pass_data pass_data_rtl_unroll_and_peel_loops =
+const pass_data pass_data_rtl_unroll_loops =
{
RTL_PASS, /* type */
"loop2_unroll", /* name */
@@ -550,11 +549,11 @@ const pass_data pass_data_rtl_unroll_and_peel_loops =
0, /* todo_flags_finish */
};
-class pass_rtl_unroll_and_peel_loops : public rtl_opt_pass
+class pass_rtl_unroll_loops : public rtl_opt_pass
{
public:
- pass_rtl_unroll_and_peel_loops (gcc::context *ctxt)
- : rtl_opt_pass (pass_data_rtl_unroll_and_peel_loops, ctxt)
+ pass_rtl_unroll_loops (gcc::context *ctxt)
+ : rtl_opt_pass (pass_data_rtl_unroll_loops, ctxt)
{}
/* opt_pass methods: */
@@ -565,10 +564,10 @@ public:
virtual unsigned int execute (function *);
-}; // class pass_rtl_unroll_and_peel_loops
+}; // class pass_rtl_unroll_loops
unsigned int
-pass_rtl_unroll_and_peel_loops::execute (function *fun)
+pass_rtl_unroll_loops::execute (function *fun)
{
if (number_of_loops (fun) > 1)
{
@@ -576,14 +575,12 @@ pass_rtl_unroll_and_peel_loops::execute (function *fun)
if (dump_file)
df_dump (dump_file);
- if (flag_peel_loops)
- flags |= UAP_PEEL;
if (flag_unroll_loops)
flags |= UAP_UNROLL;
if (flag_unroll_all_loops)
flags |= UAP_UNROLL_ALL;
- unroll_and_peel_loops (flags);
+ unroll_loops (flags);
}
return 0;
}
@@ -591,9 +588,9 @@ pass_rtl_unroll_and_peel_loops::execute (function *fun)
} // anon namespace
rtl_opt_pass *
-make_pass_rtl_unroll_and_peel_loops (gcc::context *ctxt)
+make_pass_rtl_unroll_loops (gcc::context *ctxt)
{
- return new pass_rtl_unroll_and_peel_loops (ctxt);
+ return new pass_rtl_unroll_loops (ctxt);
}