Jun. 23rd, 2009

vitus_wagner: My photo 2005 (Default)
Когда-то давно портировали мы криптоядро на первый не-интеловский процессор - спарк.
И завели там два дефайна STRICT_OFFSET и WORDS_BIGENDIAN.
Первый означает, что нельзя обращаться к 32-битным словам по адресу не кратному четырем (а к 16-битным - по нечетному), второй - понятно что означает.

Сейчас возникла задача портировать это дело еще на кучку процессоров и выяснилось, что
1. на Nokia N800, процессор ARM11 архитектура armel (ARM Extended ABI) не нужно ни того ни другого
2. на ARM9 будь бинарник собран для arm или для armel (т.е. без extended ABI) нужен STRICT_OFFSET
3. на mips (big endian) STRICT_OFFSET не нужен, но нужен, как нетрудно догадаться WORDS_BIGENDIAN. Правда, похоже, со STRICT_OFFSET оно заметно быстрее. Впрочем, openssl speed пока не гонял.
4. на mipsel (mips little endian) еще не пробовал. Надо эмулятор отсетапить. Но похоже, тоже ничего не нужно.
На mipsel без STRICT_OFFSET работает правильно, но в 6 раз медленнее чем с ним

А вот с AVR32 незадача вышла. В ТЗ его вписали, а какой Linux туда ставить - непонятно. Debian порт какой-то неживой. Ну и эмулятора нормального нет.
vitus_wagner: My photo 2005 (Default)
Когда-то давно портировали мы криптоядро на первый не-интеловский процессор - спарк.
И завели там два дефайна STRICT_OFFSET и WORDS_BIGENDIAN.
Первый означает, что нельзя обращаться к 32-битным словам по адресу не кратному четырем (а к 16-битным - по нечетному), второй - понятно что означает.

Сейчас возникла задача портировать это дело еще на кучку процессоров и выяснилось, что
1. на Nokia N800, процессор ARM11 архитектура armel (ARM Extended ABI) не нужно ни того ни другого
2. на ARM9 будь бинарник собран для arm или для armel (т.е. без extended ABI) нужен STRICT_OFFSET
3. на mips (big endian) STRICT_OFFSET не нужен, но нужен, как нетрудно догадаться WORDS_BIGENDIAN. Правда, похоже, со STRICT_OFFSET оно заметно быстрее. Впрочем, openssl speed пока не гонял.
4. на mipsel (mips little endian) еще не пробовал. Надо эмулятор отсетапить. Но похоже, тоже ничего не нужно.
На mipsel без STRICT_OFFSET работает правильно, но в 6 раз медленнее чем с ним

А вот с AVR32 незадача вышла. В ТЗ его вписали, а какой Linux туда ставить - непонятно. Debian порт какой-то неживой. Ну и эмулятора нормального нет.

Profile

vitus_wagner: My photo 2005 (Default)
vitus_wagner

May 2025

S M T W T F S
    1 2 3
4 56 7 8 9 10
11 12 131415 1617
1819202122 2324
252627 28293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 28th, 2025 11:51 am
Powered by Dreamwidth Studios