[fpc-devel] LLVM Backend?

Jonas Maebe jonas.maebe at elis.ugent.be
Mon Nov 16 23:11:55 CET 2009

Matej Spiller-Muys wrote on Mon, 16 Nov 2009:

>> C interfacing works today and has been very thoroughly tested. cppclass
>> only works, for very basic things, since 2 days ago or so. Unless someone
>> enjoys
>> debugging a new code generator and a new external language interfacing
>> paradigm at the same time, that does not sound like a very good idea to me.
> Absolutely you have a point here. But AFAIK "C++ linking" is part of FPC
> roadmap (not part of LLVM discussion at all).

There is no real "FPC roadmap" (the website page on future plans is  
just some random things that people picked up on the mailing lists, or  
that someone at one point intended to work on). There are only things  
that people submit/commit patches for.

Currently, someone appears to be interesting in adding such support,  
so it may well be implemented in the future. Or maybe he loses  
interest and starts working on something else instead, and then it may  
not be.

> And LLVM C++ support is at
> least currently more feature complete. Finish porting LLVM to C or
> supporting C++. The question is what is more maintainable in the end?

No, the question is what do people submit patches for.

> Having class VMT, exceptions the same as C++ could be a huge interop benefit
> :) And you get the C++ linking for free.

You also get breaking backwards compatibility with a lot of existing  
Delphi code for free. I repeat: you really cannot underestimate the  
amount of implementation details that existing Delphi code depends on,  
and people already complain about FPC's incompatibility with those  
implementation details.

> Currently LLVM is still quite
> evolving.

So is FPC.

> And it would be easier to start with code based on CLang (with
> some FPC features missing) and later add more FPC features when other
> projects "invent" features that C++ does not have (VMKit & Reflection,RTTI).
> It should be the faster way to implement LLVM frontend. With currently
> implemented clang we could already support 90% of FPC language.

So what is holding you back? Really, trying to convince other people  
to do something that you would like to see done (or even worse: to  
work on it in the way that you would prefer them to do it) in general  
just doesn't work. The only way to achieve your projects is to start  
working on them yourself, and hope that other people join in.

> http://www.linux-kongress.org/2009/slides/compiler_survey_felix_von_leitner.pdf
> Btw how does FPC or Delphi fare in comparison to LLVM, GCC, VC++?

I have no idea. All I know that's slightly related is the alioth  
computer language benchmark game (with the stress on "game"), where  
you have at least both FPC and GCC results.


This message was sent using IMP, the Internet Messaging Program.

More information about the fpc-devel mailing list