[fpc-devel] Another thread about the fact that official FPC releases are *unnecessarily* non-representative of the platforms it actually runs on

Nikolay Nikolov nickysn at gmail.com
Sun Sep 27 18:21:07 CEST 2020


On 9/27/20 7:03 PM, Martin Frb via fpc-devel wrote:
> On 27/09/2020 09:34, Sven Barth via fpc-devel wrote:
>> Ben Grasset via fpc-devel <fpc-devel at lists.freepascal.org 
>> <mailto:fpc-devel at lists.freepascal.org>> schrieb am So., 27. Sep. 
>> 2020, 07:50:
>>
>>     That last quote is absolute BS, to be very frank. There is no
>>     reason whatsoever not to use a natively-64-bit copy of FPC if
>>     running a natively-64-bit copy of Windows, and there hasn't been
>>     for well over half a decade at this point.
>>
>>
>> Yes, there is a reason: you can not build a i8086 or i386 cross 
>> compiler with the Win64 compiler (or any non-x86 compiler to be fair) 
>> due to missing Extended support. Thus the majority of the FPC Core 
>> team considers the Win64 compiler as inferior and also unnecessary 
>> cause the 32-bit one works just as well on that platform.
>>
> Just my 2 cents.
>
> Well, one the one hand, native 64 bit is only really important if it 
> can do something that 32 bit can not do. (faster, bigger sources, ....).
There's no known advantage of using a native win64 compiler, versus the 
win32 to win64 crosscompiler. There could be, if, while compiling very 
large programs, the 32-bit address space the compiler uses during 
compilation was exhausted (i.e. if the memory used by the compiler 
during compilation exceeds 4GB), and this happens AFAIK in C compilers, 
but, as far as we know, it just doesn't happen with FPC, because we 
don't use that much memory.
>
> On the other hand, not everyone needs a win64 to win32 cross compiler. 
> And if they do, a native 32bit compiler can be renamed and will 
> happily serve as such a cross compiler. (But that is not a must be 
> included / such workarounds may not be wanted, especially since they 
> might cause repeated extra work)

A win64 to win32 crosscompiler is crippled, because it doesn't support 
80-bit extended float. That's why only a native win32 compiler is used 
to target win32.

Nikolay

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20200927/fabe2124/attachment.htm>


More information about the fpc-devel mailing list