[fpc-pascal] Object pascal language compatiblity - was: Does FPC 2.8.0 can actually still be called Pascal ?

Sven Barth pascaldragon at googlemail.com
Fri Mar 1 11:04:13 CET 2013


On 01.03.2013 10:50, Henry Vermaak wrote:
> On Fri, Mar 01, 2013 at 09:23:29AM +0000, Mark Morgan Lloyd wrote:
>> Sven Barth wrote:
>>
>>>> An llvm target will move the optimisation burden away from fpc, which
>>>> would be very interesting.
>>>
>>> While we would welcome a LLVM backend it is basically a consent in
>>> the development team that this would only be an additional
>>> alternative to the normal backends FPC provides.
>>
>> LLVM's target list doesn't look particularly brilliant compared with
>> FPC's :-/
>
> How do you mean?  It supports more architectures than FPC, as far as I
> can see (http://llvm.org/Features.html).  They also have a C backend
> that you can use for targets that they don't support.

Targets supported by FPC and LLVM:

i386
x86_64
PowerPC
PowerPC64
ARM (including Thumb)
Sparc
MIPS (in how far does LLVM support LE and BE and 32 and 64 bit variants 
here?)

Targets supported by LLVM only:

Alpha
CellSPU
MSP430
SystemZ
XCore

Targets supported by FPC only:

AVR
(AVR32 [in a branch])
M68k
(JVM [in brackets, because JVM uses a high level code generator like 
LLVM would do])

And you should also not forget that LLVM needs to be able to generate 
code that's fitting for the target operating system. Think about the 
more exotic ones supported by FPC: DOS, OS/2, GBA, NDS, etc. Also there 
are only Windows binaries provided for Win32 and these are considered 
experimental...

But even if LLVM would support all targets that FPC supports the core 
developers don't *want* to make LLVM the default.

Regards,
Sven



More information about the fpc-pascal mailing list