* basic-block.h (redirect_edge_and_branch_force,
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 22 Jul 2001 21:42:35 +0000 (21:42 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 22 Jul 2001 21:42:35 +0000 (21:42 +0000)
commit3cd757b1067d5fdecabe3e3fe62c19bb4b0b8869
tree27b2cf8174b04c2db114b181f4e7c30ca578775e
parentaf48ae2d0f2a47fc25d70f895639f3ad12cc119e
* basic-block.h (redirect_edge_and_branch_force,
redirect_edge_and_branch, block_label, forwarder_block_p): Declare.
* flow.c (redirect_edge_and_branch_force,
redirect_edge_and_branch, block_label, forwarder_block_p): Make global.
(redirect_edge_and_branch_force): Fix copying of lifeness information.
(block_label): Handle EXIT_BLOCK_PTR by returning NULL.
* ifcvt.c (dead_or_predictable): Take BB as an new destionation
instead of label; update CFG after transformation.
(find_if_case_1): Update call, use redirect_edge_and_branch_force
for finishing the transformation; handle even case where ELSE
does not follow THEN.
(find_if_case_2): Update call of dead_or_predictable; simplify
CFG update.

* emit-rtl.c (split_branch_probability): New global variable.
(try_split): Take care to set split_branch_probability and
create REG_BR_PROB note for new jump insns.
* md.texi (define_split): Document new feature.

* i386.c (ix86_split_fp_branch): Redistribute branch probability notes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44249 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/basic-block.h
gcc/config/i386/i386.c
gcc/doc/md.texi
gcc/emit-rtl.c
gcc/flow.c
gcc/ifcvt.c
gcc/rtl.h