From b17d5d7c3b32aba86425d412465649b34de657b4 Mon Sep 17 00:00:00 2001 From: Zdenek Dvorak Date: Wed, 26 Feb 2003 11:48:36 +0100 Subject: cse.c (count_reg_usage): Fix handling of REG_EQUAL notes. * cse.c (count_reg_usage): Fix handling of REG_EQUAL notes. * Makefile.in (loop-unroll.o): New. * cfgloop.h (UAP_PEEL, UAP_UNROLL, UAP_UNROLL_ALL): New. (unroll_and_peel_loops): Declare. * alias.c (init_alias_analysis): Flag_unroll_loops renamed to flag_old_unroll_loops. * loop.c (loop_invariant_p): Ditto. * unroll.c (unroll_loop): Flag_unroll_all_loops renamed to flag_old_unroll_all_loops. * flags.h (flag_unroll_loops): Renamed to flag_old_unroll_loops. (flag_unroll_all_loops): Renamed to flag_old_unroll_all_loops. * params.def (PARAM_MAX_UNROLLED_INSNS): Default value changed. (PARAM_MAX_AVERAGE_UNROLLED_INSNS, PARAM_MAX_UNROLL_TIMES, PARAM_MAX_PEELED_INSNS, PARAM_MAX_PEEL_TIMES, PARAM_MAX_COMPLETELY_PEELED_INSNS, PARAM_MAX_COMPLETELY_PEEL_TIMES, PARAM_MAX_ONCE_PEELED_INSNS): New. * toplev.h (flag_old_unroll_loops, flag_old_unroll_all_loops): New. (flag_unroll_loops, flag_unroll_all_loops): Used for new unroller instead of old one. (flag_peel_loops): New. (lang_independent_options): The new flags added. (rest_of_compilation): Call new unroller. (process_options): Setup flags for coexistence of old and new unroller. * doc/invoke.texi: Document new options. * doc/passes.texi: Document new unroller pass. From-SVN: r63462 --- gcc/cfgloop.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'gcc/cfgloop.h') diff --git a/gcc/cfgloop.h b/gcc/cfgloop.h index c46602f..ae1e529 100644 --- a/gcc/cfgloop.h +++ b/gcc/cfgloop.h @@ -337,3 +337,11 @@ extern void loop_optimizer_finalize PARAMS ((struct loops *, FILE *)); /* Optimization passes. */ extern void unswitch_loops PARAMS ((struct loops *)); +enum +{ + UAP_PEEL = 1, /* Enables loop peeling. */ + UAP_UNROLL = 2, /* Enables peeling of loops if it seems profitable. */ + UAP_UNROLL_ALL = 4 /* Enables peeling of all loops. */ +}; + +extern void unroll_and_peel_loops PARAMS ((struct loops *, int)); -- cgit v1.1