diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/toplev.c | 9 |
2 files changed, 9 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c4f17239bc4..8dcf4bc7116 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-06-13 Roger Sayle <roger@eyesopen.com> + + * toplev.c (rest_of_compilation): Simplify (and correct) the + logic of the first delete-null-pointer-checks pass. + Thu Jun 13 18:24:17 CEST 2002 Jan Hubicka <jh@suse.cz> * i386.c (ix86_expand_movstr): Fix pasto. diff --git a/gcc/toplev.c b/gcc/toplev.c index 388954ec8a6..c878d57fc75 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -2720,17 +2720,16 @@ rest_of_compilation (decl) } timevar_push (TV_JUMP); + cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_PRE_LOOP); - if (flag_delete_null_pointer_checks || flag_if_conversion) + /* Try to identify useless null pointer tests and delete them. */ + if (flag_delete_null_pointer_checks) { open_dump_file (DFI_null, decl); if (rtl_dump_file) dump_flow_info (rtl_dump_file); - cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_PRE_LOOP); - /* Try to identify useless null pointer tests and delete them. */ - if (flag_delete_null_pointer_checks) - delete_null_pointer_checks (insns); + delete_null_pointer_checks (insns); cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_PRE_LOOP); close_dump_file (DFI_null, print_rtl_with_bb, insns); |