diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-06-13 17:20:01 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-06-13 17:20:01 +0000 |
commit | 4e0b35dac0588c519df01e6ad682bc35926dbae9 (patch) | |
tree | d130b650824c7aaf0bf776cb5d443425195735be /gcc/toplev.c | |
parent | afdadc656cdbc5e6a04f1830cb72ec876c17d642 (diff) | |
download | gcc-4e0b35dac0588c519df01e6ad682bc35926dbae9.tar.gz |
* toplev.c (rest_of_compilation): Simplify (and correct) the
logic of the first delete-null-pointer-checks pass.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@54593 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r-- | gcc/toplev.c | 9 |
1 files changed, 4 insertions, 5 deletions
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); |