From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17269 invoked by alias); 13 Oct 2004 19:52:23 -0000 Mailing-List: contact java-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-prs-owner@gcc.gnu.org Received: (qmail 17247 invoked by uid 48); 13 Oct 2004 19:52:22 -0000 Date: Wed, 13 Oct 2004 19:52:00 -0000 From: "tromey at gcc dot gnu dot org" To: java-prs@gcc.gnu.org Message-ID: <20041013195219.17979.tromey@gcc.gnu.org> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug libgcj/17979] New: Binary Compatibility: could resolve String references while defining class X-Bugzilla-Reason: CC X-SW-Source: 2004-q4/txt/msg00097.txt.bz2 List-Id: In defineclass.cc, we do a pass over the constant pool and turn JV_CONSTANT_String references into _Jv_Utf8Const objects. Later, during linking, these are turned into real String instances. We could just as easily create real Strings when defining the class and reduce the amount of work to be done during linking. On the one hand this involves more space overhead for classes which are not used (most string constants are ASCII, which is represented more compactly in a Utf8Const). On the other hand, the utf8const is garbage after linking, some String constants are common (these are always interned, so these would be shared), and usually string constants are short anyway (so the savings is probably not significant). -- Summary: Binary Compatibility: could resolve String references while defining class Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: libgcj AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tromey at gcc dot gnu dot org CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17979