This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: FYI: Linker & Verifier fixes (really GC mark procedures)
David Daney wrote:
Of course, Class needs to be allocated at runtime before we can make
this happen. And, it will break the ABI - perhaps we could come up
with some kind of compatibility mode to create a new-Class from the
old, however.
Does it really change the ABI in a bad way?
Yes, changing the layout of java.lang.Class will break the BC ABI
because the class Objects are
And for the BC ABI isn't the class layed out at runtime?
Not yet - this is the change that Andrew is working on. Thinking about
it more, compatibility will be difficult to implement because code
currently refers to the static Class objects directly, by symbol - we'd
need to somehow overwrite these pointers.
We need to consider whether the advantages of changing the layout would
justify breaking the ABI. If the layout remains the same, can we retain
compatibility with existing code that uses static java.lang.Class while
switching to dynamic allocation for new code?
Bryce