digitalmars.D - alternative D frontends should have a LLVM backend
- BLS <nanali nospam-wanadoo.fr> Oct 29 2007
- Christopher Wright <dhasenan gmail.com> Oct 29 2007
- Tomas Lindquist Olsen <tomas famolsen.dk> Oct 29 2007
- Clay Smith <clayasaurus gmail.com> Oct 29 2007
- 0ffh <spam frankhirsch.net> Oct 29 2007
- Clay Smith <clayasaurus gmail.com> Oct 30 2007
- 0ffh <spam frankhirsch.net> Oct 30 2007
LLVM advantages are well known, but IMO alternative D Frontends like DIL
should have a LLVM backend because this will open us a backdoor to DOT
NET via MSIL
Quote :
LLVM now has a new MSIL backend. llc -march=msil will now turn LLVM into
MSIL (".net") bytecode. This is still fairly early development with a
number of limitations.
End Quote
Problems? Yes indeed ...
http://lists.cs.uiuc.edu/pipermail/llvmdev/2007-March/008244.html
Your opinion ?
Bjoern
Oct 29 2007
BLS wrote:LLVM advantages are well known, but IMO alternative D Frontends like DIL should have a LLVM backend because this will open us a backdoor to DOT NET via MSIL Quote : LLVM now has a new MSIL backend. llc -march=msil will now turn LLVM into MSIL (".net") bytecode. This is still fairly early development with a number of limitations. End Quote Problems? Yes indeed ... http://lists.cs.uiuc.edu/pipermail/llvmdev/2007-March/008244.html Your opinion ? Bjoern
Unless you get your kicks from generating native RISC machine code, it's sensible. Though you still have to generate LLVM assembly, correct? I didn't see any higher-level means of interacting with LLVM. Granted, LLVM assembly is high level.
Oct 29 2007
You could take a look at my LLVMDC compiler. http://www.dsource.org/projects/llvmdc It's not yet a complete D 1.0 compiler, but it's getting there. I usually check in bugfixes etc. (mostly) every day. I'm not sure if there are any limitations to what the bitcode should look like when used with the MSIL backend, but probably it's doable. And of course... Any help is much appreciated. -Tomas Lindquist Olsen
Oct 29 2007
BLS wrote:LLVM advantages are well known, but IMO alternative D Frontends like DIL should have a LLVM backend because this will open us a backdoor to DOT NET via MSIL Quote : LLVM now has a new MSIL backend. llc -march=msil will now turn LLVM into MSIL (".net") bytecode. This is still fairly early development with a number of limitations. End Quote Problems? Yes indeed ... http://lists.cs.uiuc.edu/pipermail/llvmdev/2007-March/008244.html Your opinion ? Bjoern
http://www.dsource.org/projects/llvmdc Check it out.
Oct 29 2007
BLS wrote:LLVM advantages are well known, but IMO alternative D Frontends like DIL should have a LLVM backend because this will open us a backdoor to DOT NET via MSIL
I don't really know. Whenever I need to generate code, I go via C because it supports every architecture I could ever need (or in fact think of). For a D backend the LLVM might have it's advantages, but I really can't think of any. How is generating LLVM better than generating C source? Regards, Frank
Oct 29 2007
0ffh wrote:BLS wrote:LLVM advantages are well known, but IMO alternative D Frontends like DIL should have a LLVM backend because this will open us a backdoor to DOT NET via MSIL
I don't really know. Whenever I need to generate code, I go via C because it supports every architecture I could ever need (or in fact think of). For a D backend the LLVM might have it's advantages, but I really can't think of any. How is generating LLVM better than generating C source? Regards, Frank
I looked at the LLVM features page, and it says... "A C back-end useful for testing and for generating native code on targets other than the ones listed above." So, LLVM can generate C code, and it can do more. I suppose that's why it is better.
Oct 30 2007
Clay Smith wrote:0ffh wrote:I don't really know. Whenever I need to generate code, I go via C because it supports every architecture I could ever need (or in fact think of). For a D backend the LLVM might have it's advantages, but I really can't think of any. How is generating LLVM better than generating C source?
"A C back-end useful for testing and for generating native code on targets other than the ones listed above." So, LLVM can generate C code, and it can do more. I suppose that's why it is better.
Well, but there is also a C compiler with LLVM backend. So if you really want LLVM code, you can generate it from the C code... Regards, Frank
Oct 30 2007









Christopher Wright <dhasenan gmail.com> 