индексация в массив с помощью SSE

Предположим, у меня есть массив:

uint8_t arr[256];

и элемент

__m128i x

, содержащий 16 байтов,

x_1, x_2, ... x_16

Я хотел бы эффективно заполнить новый элемент __ m128i

__m128i y

со значениями из arr в зависимости от значений в x , так что:

y_1  = arr[x_1]
y_2  = arr[x_2]
   .
   .
   .
y_16 = arr[x_16]

Команда для достижения этого будет по существу загрузка регистра из несмежного набора ячеек памяти. У меня болезненно смутное воспоминание о том, что я видел документацию по такой команде, но сейчас не могу ее найти. Он существует? Заранее благодарим за помощь.

12
задан Matteo Italia 19 December 2010 в 16:23
поделиться