harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mikhail Fursov" <mike.fur...@gmail.com>
Subject Re: [drlvm] Extending ‘org.vmmagic.unboxed’ package with native calls and TLS access
Date Wed, 11 Oct 2006 06:04:45 GMT
On 10/11/06, Rana Dasgupta <rdasgupt@gmail.com> wrote:
>
> Mikhail,
>
>      Please see inline.
>
> >2)  How will JIT know if to use "magic" helpers?
> > >The one option is to pass cmd-line parameter, like -
> > >Djit.use_magic_vmhelpers=on. This option could be placed into the EM
> > >configuration file as any other JIT option.
>
>
> >>> Could use both ?


Yes, all of the JIT options in EM configuration file are simple -Djit...
Java properties and could be overriden from the command line.

>
> >4)  How to detect native helper calling convention?
> > >We can use one of the approaches JUnit uses: a) check the prefix for
> the
> > >method: stdcall_new(..), cdecl_new(): b) check the Java annotation for
> > the
> > >method.
> > >I prefer to use approach a). But the only reason for that is that I'm
> not
> > >sure DRLVM has interface to access to the class annotations today.
> Could
> > VM
> > >gurus correct me?
>
>
> >>> We had discussed this elsewhere and annotations look cleaner.
> Annotations should be obtainable via reflection methods
> get/resolve_annotations() on the class, but Alexey V could confirm. We
> could
> have a default like cdecl and even use this exclusively initially, unless
> you want to use a custom platform independent JIT calling convention


Ok, I'll use annotation if we support them.

>
> > >6)  Where to keep and which classloader to use to load "unboxed" +
> > "helpers"
> > >Java code? Would it be part of the kernel classes and loaded by
> bootstrap
> > >classloader?
> > >I vote leave it outside of the kernel class. But this way could cause
> > >security problems in future. Any other opinion?
>
>
> >>> I did not really understand why you are recommending leaving them out
> of
> the boot loader set.


I changed my opinion after posting this proposal. Once VM helpers are
internals of VM we should protect them and use only boot classloader to load
them.


I'm going to implement the first helper today/tomorrow. I know that while
doing it there will more problems arise and I'll report them to discuss.

-- 
Mikhail Fursov

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