harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gregory Shimansky" <gshiman...@gmail.com>
Subject Re: [drlvm] build - first round done
Date Fri, 16 Jun 2006 11:06:20 GMT
Hello Geir

I've tried to build drlvm with your most recent upadtes to build (revision
414775) and everything compiled fine but running hello world application
failed on assertion in class loader. I had to patch assertion to include
superinterfaces for java.lang.Class from 1.5 like this:

Index: drlvm/trunk/vm/vmcore/src/class_support/classloader.cpp
===================================================================
--- drlvm/trunk/vm/vmcore/src/class_support/classloader.cpp    (revision
414775)
+++ drlvm/trunk/vm/vmcore/src/class_support/classloader.cpp    (working
copy)
@@ -1102,7 +1102,10 @@
     if(env->InBootstrap()) {
         assert((clss->name == env->JavaLangObject_String)
              || (strcmp(clss->name->bytes, "java/io/Serializable") == 0)
-             || (clss->name == env->JavaLangClass_String));
+             || (clss->name == env->JavaLangClass_String)
+             || (strcmp(clss->name->bytes,
"java/lang/reflect/AnnotatedElement") == 0)
+             || (strcmp(clss->name->bytes,
"java/lang/reflect/GenericDeclaration") == 0)
+             || (strcmp(clss->name->bytes, "java/lang/reflect/Type") ==
0));
         clss->class_handle = NULL;
     } else {
         Class* root_class = env->JavaLangClass_Class;

The other approach would be to remove this assertion completely, but either
way it seems to me that to work the VM code has to be patched.

2006/6/15, Geir Magnusson Jr <geir@pobox.com>:
>
> Ok, first round is committed.
>
> It's been tested on winXP, not linux, and will get to that later, there
> still are some tweaks...
>
> First, this is pretty primitive, and some things are really crude.  I'm
> sure we'll collectively fix and evolve.
>
> The two main things :
>
> 1) it uses a property to find the classlib on the local filesystem, it
> doesn't build it, and assumes that it's done.
>
> 2) it works (according to build test) w/ the newest version of classlib
>
>
> I'm going to keep drilling on it.  I'd like to reuse the work that was
> there to help get a shared dependency cache for all components of Harmony.
>
> I'm also going to take a swipe at doing the 'federation' we talked about
> last week.
>
>
> Suggestions and discussion always welcome.
>
> geir
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>


-- 
Gregory Shimansky, Intel Middleware Products Division

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message