[fpc-pascal] Re: making FPC more code optimized

Reinier Olislagers reinierolislagers at gmail.com
Sun Apr 29 11:58:58 CEST 2012


On 29-4-2012 11:40, ik wrote:
> Hello,
> 
> Here is something that I'm asking without really know anything about
> the subject, so please bear with me.
> 
> I'ved asked few places that works with Pascal (Delphi and FPC), why
> does they use C as the infrastructure, and they all say that there is
> not even one Pascal compiler that makes the code optimized and fast
> running with low resources, while many C compilers does have such
> features.
> For them it's not the language, but the compilers that are problematic.
> 
> I'm not talking about "killer feature" that never exists, but what
> stops FPC and/or other Pascal compilers to be more optimized, with
> lower footprint, and faster code like with C compilers for example ?
> Is there anything that can be done to make them "there" as well ?

Ido,

I don't quite understand what you mean.... perhaps you could expand a bit...

Are you saying:
1. FPC is using "C infrastructure" and you want to use something else.
What do you mean by that? I don't understand.
Oh, perhaps you mean that some companies/institutions are switching from
FPC/Delphi to C?
2. FPC does not generate small, fast code?
Are you describing some particular performance problems that might
perhaps be addressed or is this a general comment?
Are you talking about a specific embedded platform perhaps?

Anyway, to me as a user on a desktop platform, FPC is plenty fast enough.

With today's processors, having a compiler that works on Windows, OSX
and Linux is a much bigger advantage than perhaps getting the last ounce
of performance out of the compiler.... but I understand the needs of
embedded developers can be different.

IIRC, e.g. on the "Size Matters" wiki FAQ page, some strategies for
stripping FPC for embedded development are mentioned. Perhaps the people
you are talking to are not aware of those methods?

Regards,
Reinier



More information about the fpc-pascal mailing list