Re: java.lang.String.interned

Date view Thread view Subject view Author view

From: Archie Cobbs (archie@whistle.com)
Date: Sat Dec 19 1998 - 19:09:18 EST


Godmar Back writes:
> > I don't see "interned" ever being set anywhere... ie, this is a
> > bug. It looks like the fix is to add "interned" to java_lang_String.h
> > and set it to true in internJavaString().
>
> Yes, this looks like another victim of the last TVT merge.

OK, I'll fix it.

> > Also, why does java_lang_String.h have this structure "data"?
> > Why can't java_lang_String.h just be equal to the output of kaffeh?
> > Is this some kind of holdover from long ago?
>
> Possibly. I'd say try a kaffeh-generated file and see where this gets
> you with string.c.

Ah, now I see.. each class's 'additional fields' beyond those
inherited from java.lang.Object are defined in their own sub-structure.
So this "data" structure is real, it's just invisibly declared by
the HandleTo() macro.

Which brings up the question, what purpose does having a nested
structure serve? It just seems to force adding a bunch of "unhand()"
macros everywhere. Wouldn't it be cleaner if the structure directly
corresponded to the class fields, and we got rid of the need for
unhand()? Is field alignment a concern?

> I just tried CaffeineMark 3.0, and kaffe's string score is weaker than
> FreeBsd's jdk port 1.1.6... So short of breaking it, there's no damage
> you can do to string handling in kaffe.

Good.. :-)

-Archie

___________________________________________________________________________
Archie Cobbs * Whistle Communications, Inc. * http://www.whistle.com


Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Sat Sep 23 2000 - 19:57:24 EDT