octave-maintainers
[Top][All Lists]
Advanced

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

Re: refactoring variable storage


From: Julien Bect
Subject: Re: refactoring variable storage
Date: Fri, 1 Feb 2019 22:45:53 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0

Le 01/02/2019 à 22:20, John W. Eaton a écrit :
On 2/1/19 3:35 PM, Julien Bect wrote:
Le 31/01/2019 à 23:44, John W. Eaton a écrit :
I pushed a series of changesets to default to make the change described in the quoted message below.

Hi John,

I can no longer build with --enable-jit.  Here are the errors that I get :

I can probably help fix these, but I'm not sure that it matters. As you know, the current implementation doesn't do much of anything useful. Are you working on making it do more?  If so, instead of working with the current framework (and old versions of LLVM) maybe we should work toward updating it to a more modern way of using LLVM?

Until recently it was only working with LLVM 3.8, but I made changes recently that makes it work with 3.9 too (they have been pushed to stable by Rik : see https://savannah.gnu.org/patch/?9741).

Of course, as you say it doesn't do much, but at least it can can (could) be built and compiles some simple for loops.  I would like to try to make it do more, but first I need to understand better what it already does and how it does it...  (and fix existing problems with complex numbers, exceptions, etc.)

It can (could) also be built with LLVM 4.0, but there is something wrong with the memory manager (https://savannah.gnu.org/bugs/?55492), so it doesn't really work.  This is what I was currently trying to solve.  I also have patches that make it build with LLVM 5.0, but the same problem exists there.

You're talking about "old versions" of LLVM, but LLVM 3.8 -- 4.0 are in fact the version currently available in Debian stretch.  (I know, not in fedora...)

Concerning more "modern ways of using LLVM", we already jumped from the "old JIT" to MCJIT when I adapted the code to work with LLVM 3.8 almost one year ago.  From what I have read, the most "modern" way would prbably be to use the "ORC" framework, but since our current JIT implementation is very limited, I am not sure that switching from MCJIT to ORC is very important right now.

@++



reply via email to

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