(FPU issue) Re: more patches for newlib-1.16.0 : setjmp & longjmp for 4.9 branch
Kate Feng
feng1 at bnl.gov
Tue Mar 3 16:27:57 UTC 2009
Ralf Corsepius wrote:
> Till Straumann wrote:
>
>> IIRC I had contributed a (maybe similar) patch in the past
>> which addressed saving/restoring FP context as part of
>> setjmp/longjmp.
>>
>
> I vaguely recall you patches - IIRC, they lacked generality because of
> the same issues as being raised here.
>
>
>
>> Indeed, there were __rtems__ specific pieces:
>>
>> - on rtems not all threads are necessarily FP-enabled
>> - on rtems lazy-FP context switching is possible
>> - on rtems we can read MSR to find out if the FPU is
>> enabled or not (since we run in supervisory mode).
>>
>
> This doesn't parse to anything I understand.
>
Sometimes, one can disable the FPU in some threads to improve
the performance of the applications. I tried it before on the mvme5500.
It did not seem to be significant on this processor based on the
application I tested. I never tried further to see the impact on an
overloaded
system. However, I believe that it is useful to have this option,
especially
for some slower processors. I still vote for this patch. The entire
patch should be applied to the newlib-1.16.0 and up.
Cheers,
Kate
>
>> -> my patch (#ifdef __rtems__ only) used the MSR[FE]
>> information to dump/load FP registers when possible/necessary.
>>
>> Under these premises the test for __rtems__ seems to
>> make sense but you might have a better idea.
>>
> First of all, I need to understand these patches. So far, even with your
> attempts to explain, this hasn't happened.
>
> Ralf
> _______________________________________________
> rtems-users mailing list
> rtems-users at rtems.com
> http://rtems.rtems.org/mailman/listinfo/rtems-users
>
More information about the users
mailing list