This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[lno] [PATCH] Loop Versioning
- From: Devang Patel <dpatel at apple dot com>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Mon, 26 Jan 2004 18:52:41 -0800
- Subject: [lno] [PATCH] Loop Versioning
This patch implements loop versioning transformation at tree level.
Bootstrapped on powerpc-darwin.
--
Devang
2003-01-26 Devang Patel <dpatel@apple.com>
* cfglayout.h (loopify): Add new bool parameter.
* cfgloopmanip.c (loopify): Support new bool argument.
* loop-unswitch.c (unswitch_loop): Supply additional argument
'true'
to loopify.
* tree-cfg.c (create_bb, tree_block_label, tree_split_edge,
tree_block-label): Make externally visible.
* tree-flow.h (create_bb, tree_block_label, tree_split_edge,
tree_block-label, test_loop_versioning, tree_ssa_loop_version):
New
extern decls.
* tree-ssa-loop-manip.c (lv_adjust_loop_entry_edge,
lv_udate_pending_stmts,
lv_adjust_loop_header_phi, tree_ssa_loop_version): New
functions.
* tree-ssa-loop.c (tree_ssa_loop_opt): Test loop versioning.
Attachment:
lv.2.diff
Description: Binary data