SIMD целочисленный магазин

Я пишу программу с использованием инструкций SSE для умножения и добавления целочисленных значений. Я сделал ту же программу с плавающей точкой, но мне не хватает инструкции для моей целочисленной версии.

С помощью float, после того, как я завершил все свои операции, я возвращаю значения de обратно в обычный массив float, выполняя:

_mm_store_ps(temp4,temp3);

temp4 - это число с плавающей точкой *, а temp3 - __m128.

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

Большое спасибо за ваши ответы;)

1 ответ

Увидеть _mm_load_si128, _mm_store_si128 (выровненный) и _mm_loadu_si128_mm_storeu_si128 (Выровненный).

Возможно, вы упустили это из виду, потому что по какой-то причине типы отличаются от внутренних. Это то, что ниже movdqa/movdqu что ты хочешь.

Другие вопросы по тегам