]> git.ipfire.org Git - thirdparty/gcc.git/commit
Clean-up EH after strlen transformation (PR tree-optimization/83593).
authormarxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 3 Jan 2018 14:53:39 +0000 (14:53 +0000)
committermarxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 3 Jan 2018 14:53:39 +0000 (14:53 +0000)
commit7626097ef4bf58f9ce877987fafec5cee0ddd728
tree492c3269956564477d25ff7f41e7c18a26b09745
parentf7491b347eed2606bcaf8ae8497f8fae3738ec6e
Clean-up EH after strlen transformation (PR tree-optimization/83593).

2018-01-03  Martin Liska  <mliska@suse.cz>

PR tree-optimization/83593
* tree-ssa-strlen.c: Include tree-cfg.h.
(strlen_check_and_optimize_stmt): Add new argument cleanup_eh.
(strlen_dom_walker): Add new member variable m_cleanup_cfg.
(strlen_dom_walker::strlen_dom_walker): Initialize m_cleanup_cfg
to false.
(strlen_dom_walker::before_dom_children): Call
gimple_purge_dead_eh_edges. Dump tranformation with details
dump flags.
(strlen_dom_walker::before_dom_children): Update call by adding
new argument cleanup_eh.
(pass_strlen::execute): Return TODO_cleanup_cfg if needed.
2018-01-03  Martin Liska  <mliska@suse.cz>

PR tree-optimization/83593
* gcc.dg/pr83593.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@256178 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr83593.c [new file with mode: 0644]
gcc/tree-ssa-strlen.c