gcc/gcc ChangeLog.sh-elf basic-block.h cfganal ...
amylaar@gcc.gnu.org
amylaar@gcc.gnu.org
Fri Jun 11 17:04:00 GMT 2004
CVSROOT: /cvs/gcc
Module name: gcc
Branch: sh-elf-3_5-branch
Changes by: amylaar@gcc.gnu.org 2004-06-11 17:04:29
Modified files:
gcc : ChangeLog.sh-elf basic-block.h cfganal.c
cfgbuild.c cfglayout.c cfgrtl.c Makefile.in
function.c
Log message:
* basic-block.h (could_fall_through): Declare.
* cfganal.c (can_fallthru): Succeed if the target is EXIT_BLOCK_PTR.
Fail if the source already has a fallthrough edge to the exit
block pointer.
(could_fall_through): New function.
* cfgbuild.c (make_edges): Check if we already have a fallthrough
edge to the exit block pointer.
* cfglayout.c (fixup_fallthru_exit_predecessor): Check that it is
not called before reload has completed.
Handle special case of first block having a fall-through exit edge.
(cfg_layout_finalize): Don't call it before reload or if we have
rtl epilogues.
(fixup_reorder_chain): A fall through to the exit block does not
require the block to come last. Add sanity checks.
* cfgrtl.c (rtl_split_edge): Add special handling of fall through
edges to the exit block.
* function.c (cfglayout.h): #include.
(thread_prologue_and_epilogue_insns): If we have neither return nor
epilogue, but a fall through to the exit block from mid-function,
force a non-fall-through exit.
* Makefile.in (function.o): Depend on CFGLAYOUT_H.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.sh-elf.diff?cvsroot=gcc&only_with_tag=sh-elf-3_5-branch&r1=1.1.2.5&r2=1.1.2.6
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/basic-block.h.diff?cvsroot=gcc&only_with_tag=sh-elf-3_5-branch&r1=1.197.2.2&r2=1.197.2.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfganal.c.diff?cvsroot=gcc&only_with_tag=sh-elf-3_5-branch&r1=1.42.2.2&r2=1.42.2.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfgbuild.c.diff?cvsroot=gcc&only_with_tag=sh-elf-3_5-branch&r1=1.47.2.2&r2=1.47.2.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfglayout.c.diff?cvsroot=gcc&only_with_tag=sh-elf-3_5-branch&r1=1.59.2.2&r2=1.59.2.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfgrtl.c.diff?cvsroot=gcc&only_with_tag=sh-elf-3_5-branch&r1=1.120.2.2&r2=1.120.2.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/Makefile.in.diff?cvsroot=gcc&only_with_tag=sh-elf-3_5-branch&r1=1.1293&r2=1.1293.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/function.c.diff?cvsroot=gcc&only_with_tag=sh-elf-3_5-branch&r1=1.520&r2=1.520.2.1
More information about the Gcc-cvs
mailing list