Thanks, i understand all of this. This what i call plugin system and i know for what it need. In conclusion:
Dynamic Packages needs for smooth plugin system in FreePascal.
04/13/17 23:27:06, Sven Barth via fpc-devel <fpc-devel@lists.freepascal.org>:
No, those changes are not optional, though in those cases where theThis why i start this discussion. Because i think this is bad and i hope than this can be avoided.
compiler can avoid them (e.g. inside the same unit) it already tries to.
And for global variables you can use {$importdata off}.Compiler says that "Warning: Illegal compiler directive "$IMPORTDATA"". How to use it?
Please not that our threadvars are *not* allocated by the linker. EachI know it. I say about action before calling fpc_relocate_threadvar.
access to a threadvar goes through the fpc_relocate_threadvar function
(just check the assembler code to see what I mean)
Delphi uses these indirect accesses from the beginning. Do you hearI even dont know about Delphi have it. I just use logic and my knowledge about how processor and memory works. So i try make my code faster.
anyone really complain about performance problems due to indirect accesses?
And it's not about saving RAM or disk memory! It's about *binary codeHm... Ok, i dont think that this in usefull at all, but thanks, not i know your vision of problem.
reuse*, the ability to fix a bug in multiple executables by merely
fixing the one bug in a package.
These special sections are executed by the C runtime.Interesting. I think its done by OS-part (on Windows, where i see it).
We don't link against the C runtime at least on Windows and on Linux however whichOn Windows we in anycase have ntdll.dll and kernel32.dll, i mean rel on their functional and think than this sections processed by them. On Linux, if you use any SO - you use libdl, that use libc. In 99% of programs we have it linked.
reduces the dependencies.
No. This will needlessly complicate things.Ok. I understand. I make proposal, you rejected it. Thanks for you, and all other guys, that spent their time for this discussion.
Regards,
Roman
_______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel