[Python-Dev] Python-acceleration instructions on ARM
Cesare Di Mauro
cesare.dimauro at a-tono.com
Wed Feb 11 13:56:21 CET 2009
Antoine Pitrou <solipsis at pitrou.net> wrote:
> Martin v. Löwis <martin <at> v.loewis.de> writes:
>> - efficient array indexing: they give shift-and-index back to
>> Thumb mode, for a shift by 2, allowing to index arrays with
>> 4-byte elements in a single instruction (rather than requiring
>> a separate multipy-by-four). Again useful for JIT of array
>> access instructions, not applicable to Python - although it
>> would be nice if the C compiler knew how to emit that.
>
> This could be used in PyTuple_GetItem and PyList_GetItem, no?
Yes, but it's a compiler (Thumb-EE specific back-end) burden.
Otherwise, we can introduce Thumb-EE assembly code were
needed, but the same can happen for a wide range of ISAs.
At least IA32 and AMD64 have specific addressing modes where
it's possibile to use a multiplying factor of 1, 2, 4 or 8 for the
index register.
I hope that compilers were smart enough to already used them.
> (assuming Thumb has 4-byte pointers)
Yes, it does.
Cesare
More information about the Python-Dev
mailing list