This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug lto/54839] New: INTEGER_CST is missed by uniuqify_nodes and soaks tons of memory
- From: "hubicka at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sat, 06 Oct 2012 22:43:51 +0000
- Subject: [Bug lto/54839] New: INTEGER_CST is missed by uniuqify_nodes and soaks tons of memory
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54839
Bug #: 54839
Summary: INTEGER_CST is missed by uniuqify_nodes and soaks tons
of memory
Classification: Unclassified
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: lto
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: hubicka@gcc.gnu.org
Created attachment 28377
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28377
patch
Because integer_cst is streamed directly, it bypasses streamer cache. It
however reffers to types and the types needs fixup.
The attached patch provokes the problem by ggc_freeing the obsoletted types and
also fixes it by adding to_fix vector. I wonder what is better option?
Do we need to stream them differently? I guess integer_csts are often 0/1 and
streaming always the whole thing seems wasteful.