[fpc-devel][fpc-deve] fpc sparc port.

Jonas Maebe jonas at zeus.rug.ac.be
Tue Dec 3 10:24:58 CET 2002


On zondag, dec 1, 2002, at 02:19 Europe/Brussels, Sergey Korshunoff 
wrote:

>> Because this requires PIC support. And PIC support requires an extra
>> register to hold the pointer to the GOT table. And the current 
>> register
>> allocator will die with a lot of internalerror(10)'s if it loses a
>> register to work with. So first we need a new register allocator and
>> then it should be fairly easy to implement.
>> Jonas
>
> In Linux DLL (*.so) can be made without PIC. In most cases this is
> even more preferable -- this DLL use less RAM. PIC may be needed
> only for glibc.so -- a wide used by _different_ programs DLL, in which 
> case
> PIC give us a RAM saving. Reason: DLL in PIC format is bigger.
> If it not wide used (plugin for the only _one_  program ) -- we lost 
> RAM and
> time if we use PIC format.

Isn't PIC also necessary to support versioning? If you don't use PIC 
and you change a library, don't all programs that use that library have 
to be recompiled?

> Conclusion: there is a big need in DLL support even without PIC.
> Why not implement generation of DLL and use of it with
> FPC made main program under Linux without PIC?

If you use the "library" keyword, we already generate a .so file 
without PIC code, so I'm not sure what the problem is (I haven't tested 
such libraries rigorously, but simple ones seem to work).


Jonas





More information about the fpc-devel mailing list