Hookize CFG debugging code

John David Anglin dave@hiauly1.hia.nrc.ca
Fri Jun 20 17:23:00 GMT 2003


I have determined that this patch 

Sun Jun  8 15:52:17 CEST 2003  Jan Hubicka  <jh@suse.cz>

        * cfg.c (verify_flow_info): Move IL independent checks from cfgrtl here.
	(dump_bb): New based on old dump_bb in cfgrtl.c
	(debug_bb, debug_bb_n): Move the functions from cfgrtl.c here.
	* cfghooks.h (cfgh_verify_flow_info): Return status.
	* cfglayout.c (cfg_layout_finalize): Verify CFG correctness.
	* cfgrtl.c (debug_bb, debug_bb_n): Move to cfg.c
	(dump_bb): Remove generic parts.
	(rtl_verify_flow_info_1): Break out from rtl_verify_flow_info.
	(rtl_verify_flow_info): Only check things dependeing on linearized RTL.

either causes or exposes a problem in the CFG for
gcc.c-torture/compile/20030405-1.c on hppa-unknown-linux-gnu and
hppa2.0w-hp-hpux11*.  The test now fails on the trunk at -O2 and
above with the following messages:

/xxx/gnu/gcc-3.4/gcc/gcc/testsuite/gcc.c-torture/compile/20030405-1.c: In function `foo':
/xxx/gnu/gcc-3.4/gcc/gcc/testsuite/gcc.c-torture/compile/20030405-1.c:58: error: Wrong amount of branch edges after conditional jump 17
/xxx/gnu/gcc-3.4/gcc/gcc/testsuite/gcc.c-torture/compile/20030405-1.c:58: error: Wrong amount of branch edges after conditional jump 16
/xxx/gnu/gcc-3.4/gcc/gcc/testsuite/gcc.c-torture/compile/20030405-1.c:58: error: Wrong amount of branch edges after conditional jump 13
/xxx/gnu/gcc-3.4/gcc/gcc/testsuite/gcc.c-torture/compile/20030405-1.c:58: internal compiler error: verify_flow_info failed

The test was for PR optimization/10024.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)



More information about the Gcc-patches mailing list