harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Weldon Washburn" <weldon...@gmail.com>
Subject Re: [drlvm][runtime support] a question about an old JIRA -- H1922
Date Thu, 15 Mar 2007 20:37:42 GMT
hmm... the new patch failed smoke tests on both windows32 and linux32
rhel4.0 with "jitrino.OPT FAILED".  I looked at the reports directory and
see that a wait for notify test has failed.  Pavel, do you see the same
problem?




On 3/13/07, Pavel Pervov <pmcfirst@gmail.com> wrote:
>
> Second line of class_alloc_new_object asserts
> '!hythread_is_suspend_enabled()'. So, yes, we can assume the condition.
>
> The line to add is something like
> 'assert(struct_Class_to_java_lang_Class());' to remove it in release.
>
> WBR,
>    Pavel.
>
>
> On 3/12/07, Weldon Washburn <weldonwjw@gmail.com> wrote:
> >
> > Looking at just the procedure named, class_alloc_new_object(), the
> assert
> > definitely looks wrong.  However, I think the patch ignores the intent
> of
> > the assert.  I think the developer intended to somehow assert that the
> > input
> > arg, a ptr to struct Class, is valid.  In other words the original
> intent
> > is
> > to do something like:
> >
> >
> > assert(c);
> >
> > ManagedObject** hjlc = c->get_class_handle();
> >
> > assert(hjlc);
> >
> > ManagedObject* jlc = *hjlc;
> >
> > assert(jlc != NULL);
> >
> > assert(jlc->vt());
> >
> > assert(jlc->vt()->clss ==
> > VM_Global_State::loader_env->JavaLangClass_Class);
> >
> > assert(java_lang_Class_to_struct_Class(jlc) == clss); // else clss's
> > java.lang.Class had a bad "back" pointer
> > Note that I stole all the above code from the existing function called,
> >
> > ManagedObject *struct_Class_to_java_lang_Class(Class *clss) {...}
> >
> > Rather than cut/paste the body of struct_Class_to_java_lang_Class into
> > class_alloc_new_object(), how about simply calling
> > struct_Class_to_java_lang_Class()?  The only unknown is if we can assume
> > the condition assert(!hythread_is_suspend_enabled() );  will be OK from
> > the
> > body of class_alloc_new_object().  Thoughts?
> >
> >
> > --
> > Weldon Washburn
> > Intel Enterprise Solutions Software Division
> >
>
>
>
> --
> Pavel Pervov,
> Intel Enterprise Solutions Software Division
>



-- 
Weldon Washburn
Intel Enterprise Solutions Software Division

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