dotgnu-libjit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Dotgnu-libjit] using Libjit with boehm collector


From: Tommaso Tagliapietra
Subject: Re: [Dotgnu-libjit] using Libjit with boehm collector
Date: Thu, 27 Sep 2012 09:33:55 +0200

> If you keep the bytecode (in GC allocated & reachable memory),
> and if it is allocated with GC_malloc not GC_malloc_atomic,
> and if the addresses 0xABCDEF01 or 0x01EFCDAB appearing inside are word 
> aligned,
> they will be followed by the GC.
>
> I just think that you should understand a bit better how Boehm's GC actually 
> work.
> Did you read some documentation (or code comments) about it?

Sure. I know how it's work. And I know that I cannot mix pointer
allocated with malloc and GC_malloc. Probably I'm doing the wrong
questions. I'm sorry but English is not my language and I'm unable to
explain me well.

I'm asking your help because my intention is to use replace bytecoded
functions with a JIT-ed functions. But, since I've wasted time for a
lot of other things, I don't want to go in the wrong direction. I
thought that the DotGNU Portable.NET project was using some strange
solution to allocate everything with the Boehm collector, and the
libjit was provided as is, with a standard malloc, to be indipendent
from other libraries.

Tecnically the interpreter is for a pure object-oriented version of a
Lisp/Scheme-like language and the collector work very well with my
solution. Functions are objects allocated with Boehm. However, with
the new specifications I think will be very slow and then I need a JIT
compiler.

The finally intention is not to produce a solution, but the faster
solution with the less amount of allocated memory as possible. This is
why I'm trying to not use closures. But probably this can be the only
usefull solution. Yes...I must redesign the architecture.

Now I have only few problems compiling libjit with cygwin, but this is
another story.

Thank you very much.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]