* common.opt (fdevirtualize-speculatively): New function.
commit84f6cc404bf347240a73be17f0b76fabd41e26ed
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 1 Sep 2013 15:14:24 +0000 (1 15:14 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 1 Sep 2013 15:14:24 +0000 (1 15:14 +0000)
treea04f98f7e7873d1c147343271471b27491c59a96
parent22e8a488828fa5670c13c7277c8c399e6d8076c8
* common.opt (fdevirtualize-speculatively): New function.
* invoke.texi (fdevirtualize-speculatively): Document.
* ipa-devirt.c: Include ipa-inline.h
(likely_target_p): New function.
(ipa_devirt): New function.
(gate_ipa_devirt): New function.
(pass_data_ipa_devirt): New static var.
(pass_ipa_devirt): Likewise.
(make_pass_ipa_devirt): New function.
* opts.c (default_options): Add OPT_fdevirtualize_speculatively.
(common_handle_option): Disable devirtualization when
value range profiling is available.
* passes.def (pass_ipa_devirt): Add.
* timever.def (TV_IPA_DEVIRT): New timevar.
* tree-pass.h (make_pass_ipa_devirt):

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@202145 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/common.opt
gcc/doc/invoke.texi
gcc/ipa-devirt.c
gcc/opts.c
gcc/passes.def
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ipa/devirt-11.C
gcc/testsuite/g++.dg/tree-ssa/pr45453.C
gcc/timevar.def
gcc/tree-pass.h