This is the mail archive of the gcc-prs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

c++/10717: Performance issue in expand_static_init with large number of static initializors


>Number:         10717
>Category:       c++
>Synopsis:       Performance issue in expand_static_init with large number of static initializors
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri May 09 19:36:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Andrew Pinski
>Release:        3.4
>Organization:
>Environment:
powerpc-darwin (all really, does not matter).
>Description:
This is related to http://gcc.gnu.org/PR?10060 as the code is the same but the problem is different.
cp_finish_decl (cp/decl.c:8221) calls expand_static_init (cp/decl.c:8512) calls value_member and value_member looks though a linked list which is very ineffienct, a better way is to use a hashtable.
>How-To-Repeat:
See http://gcc.gnu.org/PR?10060 how to generate the file and compile it, it will ice when compiling (but that is the problem for that PR).
>Fix:
Use a hashtable instead of a linked list.
>Release-Note:
>Audit-Trail:
>Unformatted:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]