llvm-d

Moritz Maxeiner moritz at ucworks.org
Sat Mar 23 06:39:13 PDT 2013


On Saturday, 23 March 2013 at 08:53:47 UTC, Jens Mueller wrote:
> Moritz Maxeiner wrote:
>> I could add support for it via a version flag. E.g. set
>> -version=DEIMOS_LLVM or something similar. That way someone 
>> using
>> llvm-d can choose to either use the included C bindings or use 
>> your
>> deimos compatible ones. My only concern would be that the LLVM 
>> C
>> function signatures would have to be translated in the same, 
>> or at
>> least a compatible way in both my C bindings and the deimos 
>> ones, so
>> using either of them would just be a matter of which import
>> statement to use.
>> Since I've translated them pretty much strictly according to 
>> the
>> "interfacing with c" guideline that's probably the case 
>> already, but
>> I'd have to try it out first.
>
> I would like that. Probably the signatures are already the 
> same. There
> is not much freedom when translating them.

I've updated llvm-d to do just that. When compiling with 
-version=DEIMOS_LLVM the D API will import the deimos-llvm 
bindings instead of llvm-d's own ones. I've not yet tested it 
fully, but it should work. One thing, though: Your
https://github.com/jkm/deimos-llvm/blob/master/deimos/llvm/c/executionengine.d
should also have executionengine as the module name, not 
enhanceddisassembly.

-Moritz


More information about the Digitalmars-d-announce mailing list