re PR middle-end/12392 (very long optimized compile)
authorMichael Matz <matz@suse.de>
Wed, 30 Mar 2016 07:47:40 +0000 (07:47 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Wed, 30 Mar 2016 07:47:40 +0000 (07:47 +0000)
commit9c49362f039750b5ea63a32c3e403bd9865a3738
tree5dd64bc5ae9caf164ad4a275a4e6b6fbc63d9faf
parentff734e26c2a4efbba465f206e4a7c282a33a2b59
re PR middle-end/12392 (very long optimized compile)

2016-03-30  Michael Matz  <matz@suse.de>
Richard Biener  <rguenther@suse.de>

PR ipa/12392
* ipa-polymorphic-call.c (struct type_change_info): Change
speculative to an unsigned allowing to limit the work we do.
(csftc_abort_walking_p): New inline function..
(check_stmt_for_type_change): Limit the number of may-defs
skipped for speculative devirtualization to
max-speculative-devirt-maydefs.
* params.def (max-speculative-devirt-maydefs): New param.
* doc/invoke.texi (--param max-speculative-devirt-maydefs): Document.

Co-Authored-By: Richard Biener <rguenther@suse.de>
From-SVN: r234546
gcc/ChangeLog
gcc/doc/invoke.texi
gcc/ipa-polymorphic-call.c
gcc/params.def