[fpc-devel] Forwarded message about FPC status

Michael Van Canneyt michael at freepascal.org
Tue Dec 25 12:38:29 CET 2012

On Tue, 25 Dec 2012, Martin Schreiber wrote:

> On Tuesday 25 December 2012 11:20:02 Michael Van Canneyt wrote:
>> Everybody is aware of the speed difference between Delphi and FPC.
>> The compiling itself (parsing/producing assembler code) is not slow.
>>> From what I remember, the problems you (and everyone else) experience
>> with smartlinking and so on are largely due to the GNU linker being
>> slow and memory hungry.
> AFAIK there are significant differences in parsing and code producing too.

I suggest that Florian answers this, he has more exact numbers.

> Last time I checked on Windows with the internal FPC linker Delphi 7 compiled
> and linked about 10 times as fast as FPC.

AFAIK it is still linker related: the assembler files are on disk, 
the structure of the files is geared towards the GNU toolchain etc.

>> What concerns produced code: I think that the largest speed gain there
>> will come from a reorganisation of the exception handling.
>> What concerns 'stripping the unnecessary' : if you are talking
>> about language features, I doubt you will gain much speed by that.
> The goal here is to reduce the count of the used different concepts so one has
> not to learn much to tap the full potential of the language.

This is a goal I fully support.

And I consider it a perfect fit for a mode switch.

>> I am also fairly confident that if you would create a patch to
>> introduce a new compiler mode switch {$MODE D7} which would
>> selectively enable/disable some language features to "go back
>> to the roots", it would be accepted. (I myself would use it ;))
> It would unfortunately blow up the code base again.

By about 10 lines in the compiler, so this is hardly an argument.

And - assuming you don't insist on forking - there will be more 
people to manage these 10 lines.

As we've explained elsewhere, not breaking things is always an 
important thing, so no-one would take this switch away.


More information about the fpc-devel mailing list