Looking into LLVM

Kevin Kofler kevin.kofler at chello.at
Wed Oct 28 10:24:51 UTC 2009


Jud Craft wrote:

> On Mon, Oct 26, 2009 at 12:31 PM, Kevin Kofler wrote:
>> But this is about C++.
> 
> I don't mean to misunderstand, but if I recall from your very first
> post in this thread...
> 
>> Actually, the ABI issue is only if you use the C code generator, not the
>> native ones.
> 
> Hence I thought you were talking about ABI issues with C.

You misunderstood me. The C code generator is an LLVM *back*end, not a 
frontend. The frontend is what recognizes the input language, the backend is 
what defines the output LLVM generates.

> I'm not up on how LLVM frontend integration works, so I actually don't
> understand the distinction between "the LLVM C Backend" and "the
> native LLVM backends".

LLVM can either directly output machine code (native backend) for some 
architectures or it can output preoptimized C code (especially for those 
architectures which don't have a native backend). The latter is what the "C 
code generator" or "C backend" does.

The ABI issues are when using one of the C++ frontends with the C backend.

> Simply, can I write and compile a GTK program with LLVM?

Yes.

        Kevin Kofler




More information about the fedora-devel-list mailing list