On Thu, Dec 03, 2009 at 02:28:36PM +0000, Thomas Klein wrote:
> Dose anyone know the reason why they are not clobbered?

So that they don't have to be saved.  This function is supposed to be
very fast.  If you want to use a slow implementation, write an
assembly wrapper which saves additional registers.

> The next point is that the __builtin_thread_pointer() call isn't
> ARM/Thumb interwork save.
> To use the "hard" Coprocessor fetch instruction the calling function
> must run in ARM mode.

True (or Thumb-2, I think).

> To use "soft" implementation caller and __aeabi_read_tp() must run in
> the same mode.

I don't believe that this is true.  In what way is it not safe?

-- 
Daniel Jacobowitz
CodeSourcery

Reply via email to