public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug lto/54312] New: uniquify_nodes takes 12% of Mozilla LTO build @ 2012-08-18 9:47 hubicka at gcc dot gnu.org 2012-08-20 7:29 ` [Bug lto/54312] " rguenth at gcc dot gnu.org ` (4 more replies) 0 siblings, 5 replies; 6+ messages in thread From: hubicka at gcc dot gnu.org @ 2012-08-18 9:47 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54312 Bug #: 54312 Summary: uniquify_nodes takes 12% of Mozilla LTO build Classification: Unclassified Product: gcc Version: lto Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto AssignedTo: unassigned@gcc.gnu.org ReportedBy: hubicka@gcc.gnu.org uniquify_nodes has quadratic loop removing types from variant lists: /* Remove us from our main variant list if we are not the variant leader. */ if (TYPE_MAIN_VARIANT (t) != t) { tem = TYPE_MAIN_VARIANT (t); while (tem && TYPE_NEXT_VARIANT (tem) != t) tem = TYPE_NEXT_VARIANT (tem); if (tem) TYPE_NEXT_VARIANT (tem) = TYPE_NEXT_VARIANT (t); TYPE_NEXT_VARIANT (t) = NULL_TREE; } this consume a lot of time building Mozilla (and was introduced by Michael's patch cleaning up the stream in process). Can't we do a bit better here? (this was introduced in 4.7) Honza ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug lto/54312] uniquify_nodes takes 12% of Mozilla LTO build 2012-08-18 9:47 [Bug lto/54312] New: uniquify_nodes takes 12% of Mozilla LTO build hubicka at gcc dot gnu.org @ 2012-08-20 7:29 ` rguenth at gcc dot gnu.org 2012-09-11 11:04 ` rguenth at gcc dot gnu.org ` (3 subsequent siblings) 4 siblings, 0 replies; 6+ messages in thread From: rguenth at gcc dot gnu.org @ 2012-08-20 7:29 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54312 --- Comment #1 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-08-20 07:29:00 UTC --- I don't see how we can do better. Or well, we can put in an assert instead (we stream TYPE_NEXT_VARIANT as NULL). #ifdef ENABLE_CHECKING if (TYPE_MAIN_VARIANT (t) != t) { tem = TYPE_MAIN_VARIANT (t); while (tem && TYPE_NEXT_VARIANT (tem) != t) tem = TYPE_NEXT_VARIANT (tem); gcc_assert (!tem && !TYPE_NEXT_VARIANT (t)); } #endif ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug lto/54312] uniquify_nodes takes 12% of Mozilla LTO build 2012-08-18 9:47 [Bug lto/54312] New: uniquify_nodes takes 12% of Mozilla LTO build hubicka at gcc dot gnu.org 2012-08-20 7:29 ` [Bug lto/54312] " rguenth at gcc dot gnu.org @ 2012-09-11 11:04 ` rguenth at gcc dot gnu.org 2012-09-12 16:26 ` hubicka at gcc dot gnu.org ` (2 subsequent siblings) 4 siblings, 0 replies; 6+ messages in thread From: rguenth at gcc dot gnu.org @ 2012-09-11 11:04 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54312 --- Comment #2 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-09-11 11:03:52 UTC --- Patch pre-approved (also for 4.7) if it passes your testing. ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug lto/54312] uniquify_nodes takes 12% of Mozilla LTO build 2012-08-18 9:47 [Bug lto/54312] New: uniquify_nodes takes 12% of Mozilla LTO build hubicka at gcc dot gnu.org 2012-08-20 7:29 ` [Bug lto/54312] " rguenth at gcc dot gnu.org 2012-09-11 11:04 ` rguenth at gcc dot gnu.org @ 2012-09-12 16:26 ` hubicka at gcc dot gnu.org 2012-09-20 14:52 ` rguenth at gcc dot gnu.org 2012-09-20 14:52 ` rguenth at gcc dot gnu.org 4 siblings, 0 replies; 6+ messages in thread From: hubicka at gcc dot gnu.org @ 2012-09-12 16:26 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54312 --- Comment #3 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-09-12 16:26:31 UTC --- Author: hubicka Date: Wed Sep 12 16:26:19 2012 New Revision: 191228 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=191228 Log: PR lto/54312 * lto.c (uniquify_nodes): Remove quadratic loop checking if the type is variant leader. Modified: trunk/gcc/lto/ChangeLog trunk/gcc/lto/lto.c ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug lto/54312] uniquify_nodes takes 12% of Mozilla LTO build 2012-08-18 9:47 [Bug lto/54312] New: uniquify_nodes takes 12% of Mozilla LTO build hubicka at gcc dot gnu.org ` (2 preceding siblings ...) 2012-09-12 16:26 ` hubicka at gcc dot gnu.org @ 2012-09-20 14:52 ` rguenth at gcc dot gnu.org 2012-09-20 14:52 ` rguenth at gcc dot gnu.org 4 siblings, 0 replies; 6+ messages in thread From: rguenth at gcc dot gnu.org @ 2012-09-20 14:52 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54312 Richard Guenther <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |FIXED Target Milestone|--- |4.7.3 --- Comment #5 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-09-20 14:52:23 UTC --- Fixed for 4.7.3. ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug lto/54312] uniquify_nodes takes 12% of Mozilla LTO build 2012-08-18 9:47 [Bug lto/54312] New: uniquify_nodes takes 12% of Mozilla LTO build hubicka at gcc dot gnu.org ` (3 preceding siblings ...) 2012-09-20 14:52 ` rguenth at gcc dot gnu.org @ 2012-09-20 14:52 ` rguenth at gcc dot gnu.org 4 siblings, 0 replies; 6+ messages in thread From: rguenth at gcc dot gnu.org @ 2012-09-20 14:52 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54312 --- Comment #4 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-09-20 14:52:07 UTC --- Author: rguenth Date: Thu Sep 20 14:51:59 2012 New Revision: 191568 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=191568 Log: 2012-09-20 Richard Guenther <rguenther@suse.de> Backport from mainline 2012-09-11 Jan Hubicka <jh@suse.cz> PR lto/54312 * lto.c (uniquify_nodes): Remove quadratic loop checking if the type is variant leader. Modified: branches/gcc-4_7-branch/gcc/lto/ChangeLog branches/gcc-4_7-branch/gcc/lto/lto.c ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-09-20 14:52 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2012-08-18 9:47 [Bug lto/54312] New: uniquify_nodes takes 12% of Mozilla LTO build hubicka at gcc dot gnu.org 2012-08-20 7:29 ` [Bug lto/54312] " rguenth at gcc dot gnu.org 2012-09-11 11:04 ` rguenth at gcc dot gnu.org 2012-09-12 16:26 ` hubicka at gcc dot gnu.org 2012-09-20 14:52 ` rguenth at gcc dot gnu.org 2012-09-20 14:52 ` rguenth at gcc dot gnu.org
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).