On 05/08/2015 10:50 AM, Joseph Myers wrote:

Note that however the dynamic linker does properly need to save and
restore call-clobbered registers used for argument passing (because of
IFUNCs, user-provided malloc, audit hooks etc. that might affect them even
if the dynamic linker itself doesn't); see
<https://sourceware.org/ml/libc-alpha/2014-01/msg00673.html>.  So any
floating-point-agnostic dynamic linker would, if fixing the bugs around
not saving / restoring such registers, need to have runtime-conditional
code to save and restore them rather than simple compile-time
conditionals.
Right. So there has to be some reasonable cost way to find out if you have FPU registers at runtime, then select between the code paths at runtime.


Jeff

Reply via email to