Shell64 / llvm-lua

Exported from code.google.com/p/llvm-lua ; Just a mirror.
Other
0 stars 0 forks source link

LLVM 3.1 support #16

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
llvm-lua-1.3.1 does not compile with llvm-3.1 - it would be nice if that could 
be supported.

(Only one version of llvm can be installed at the same time on Gentoo. Mesa 8.0 
requires llvm-3.1 or newer, so that version is used.)

Original issue reported on code.google.com by devuran...@gmx.net on 31 May 2012 at 6:28

GoogleCodeExporter commented 9 years ago
I was busy and ported it myself. It works with a small lualdap example, which I 
already used to test the previous versions of llvm-lua (1.3.1 and b5046ad2f3e6 
compiled against llvm-2.8 and 2.9) with.

Original comment by devuran...@gmx.net on 2 Jun 2012 at 9:11

Attachments:

GoogleCodeExporter commented 9 years ago
P.S: That patch is actually a set of patches - exported Mercurial revisions.

Original comment by devuran...@gmx.net on 2 Jun 2012 at 9:13

GoogleCodeExporter commented 9 years ago
I am starting to review the patch now.  Thanks for working on this.

Original comment by rjakabo...@gmail.com on 2 Jun 2012 at 10:18

GoogleCodeExporter commented 9 years ago
Patch set applied.  Some of the test scripts that I tried either fail to build 
or crash somewhere inside LLVM.  I don't think these bugs are related to your 
changes.  After recompiling LLVM with assertions and debug info turned on, I 
will see if I can fix these bugs.

Many thanks for doing this port.

Original comment by rjakabo...@gmail.com on 3 Jun 2012 at 1:00

GoogleCodeExporter commented 9 years ago
llvm-lua now passes my test suite (with both JIT & static compile).

Original comment by rjakabo...@gmail.com on 3 Jun 2012 at 8:19

GoogleCodeExporter commented 9 years ago
Thanks a lot for doing the work an reviewing and importing the patches!

Original comment by devuran...@gmx.net on 3 Jun 2012 at 10:10

GoogleCodeExporter commented 9 years ago
If you are interested I can add you as a committer.  Your patches where very 
high quality.  I liked how you separated different changes into multiple 
commits instead of one large commit.  I couldn't find a simple way to import 
the patch set as multiple patches, so I created a little Lua script to split 
the one patch file into multiple files each with only one commit.
Then I was able to use: git am -s <patch1> <patch2>...
to do the import.

Again many thanks for doing this work.

Original comment by rjakabo...@gmail.com on 3 Jun 2012 at 9:25

GoogleCodeExporter commented 9 years ago
I am flattered by your praise and would be honoured to get commit rights!

But first I would have to learn a lot about the architecture of the code - 
currently it still seems like a very complex piece, passing data from one part 
to the other in non-obvious ways, apparently even going through the Lua 
interpreter at times...? Is there a document that explains what is going on and 
how the different parts play together?

Original comment by devuran...@gmx.net on 3 Jun 2012 at 9:53

GoogleCodeExporter commented 9 years ago
I will add you as soon as I get my owner role back.  I was messing around with 
the roles testing with one of my non-gmail addresses and locked my self out.

I will try to add a wiki page about the architecture of the code sometime this 
week.  Today I will be busy and I will need my owner role back before I can 
create/edit wiki pages again.

For now you can take a look at this wiki page to get an idea of what the 
LLVMCompiler class is doing:
http://code.google.com/p/llvm-lua/wiki/JITExample

Also I have some logs of the #llvm-lua channel where I talked to other users 
about how llvm-lua worked.  I will cut out the useful bits and put that up as 
soon as I can.

I really need to re-think the design of the LLVMCompiler class, since it has 
grown far too large.

Original comment by rjakabo...@gmail.com on 3 Jun 2012 at 10:27