Как это с помощью SSE2 ?

Тема в разделе "WASM.A&O", создана пользователем mitar, 15 сен 2004.

  1. mitar

    mitar New Member

    Публикаций:
    0
    Регистрация:
    15 сен 2004
    Сообщения:
    1
    Хочу оптимизировать кусок кода при помощи SEE2, но не совсем понимаю как это сделать.



    BYTE * Dst;

    BYTE * SrcHi;

    BYTE * SrcLo;

    BYTE * Xlat;



    for ( unsigned y = 0; y != rect.Height; ++y )

    {

    for ( unsigned x = 0; x != rect.Width; ++x )

    {

    Dst [ Shift ] = Xlat [ ( ( SrcHi [ Shift ] ) << 8 ) + SrcLo [ Shift ] ];

    ++Shift;

    }



    Shift += rect.Step;

    }



    Не понятно, как произвести операциию Xlat [c] в векторном виде. И как лучше делать операцию (a<<8 + b)?



    Как вообще оптимизируется работа с предрасчитанными таблицами?



    Заранее спасибо,

    Миша
     
  2. emergenter

    emergenter New Member

    Публикаций:
    0
    Регистрация:
    11 июн 2003
    Сообщения:
    16
    Адрес:
    СПб
    Да тут реально оптимизировать с помощью SSE2