harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rana Dasgupta" <rdasg...@gmail.com>
Subject Re: [drlvm][classlib] thread library - let there be one!
Date Thu, 21 Sep 2006 06:23:18 GMT
I am not very familiar with this section of the code. But if this is in
general true, and the classlib dependency on the hythread_XXX api's is
small, what Andrey says above makes sense to me. Why not replace them(
monitor enter/exit, TLS access etc. ) with the portability layer macrodefs
from thrdsup.h and hymutex.h? And just keep the hythread_XXX around
seperately for optional usage by any JVM that may wish to and revisit the
issue later?

That way we know what is the code we are using and needs to be tested,
optimized etc.

Thanks,
Rana


> On 9/20/06, Weldon Washburn <weldonwjw@gmail.com> wrote:
> >
> > All,
> > Is there something missing from the below analysis?  I did a grep for
> > "hythread_" in all of the classlib directory.  There were 1300 hits of
> > which
> > 1200++ where inside the code that implements classlib hythread
> > itself.  In
> > other words, 1200++ hits are most likely irrelevant to a VM developer.
> > As
> > far as I can tell, only the following source files containing
> > hythread_xxx
> > APIs are actually used by Harmony Classlib.  Is this accurate?
> >
> >
> > C:\t_harmony\classlib\trunk\modules\archive\src\main\native\zip\shared\zipsup.c(116):#define
> > ENTER()
> > hythread_monitor_enter(hythread_global_monitor())C:\t_harmony\classlib\trunk\modules\archive\src\main\native\zip\shared\zipsup.c(117):#define
> >
> > EXIT() hythread_monitor_exit(hythread_global_monitor())
> >
> > from
> > c:\t_harmony\classlib\trunk\modules\luni\arc\main\port\shared\hynls.c
> > hythread_monitor_enter (nls->monitor); hythread_monitor_exit
> > (nls->monitor);
> >
> >
> > C:\t_harmony\classlib\trunk\modules\luni\src\main\native\vmls\shared\vmls.c(82):
> > hythread_monitor_enter(globalMonitor);
> >
> > C:\t_harmony\classlib\trunk\modules\luni\src\main\native\vmls\shared\vmls.c(103):
> > hythread_monitor_exit(globalMonitor);
> >
> >
> >
>

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