Я очень новичок в SIMD, поэтому прошу прощения, если это будет тривиальный вопрос.
У меня есть класс, который содержит (между прочим) два двухлокальных. Я хочу использовать эти два двойника и загрузить их в регистр __m128d
чтобы я мог выполнять некоторые арифметические операции. Т.е. Скажем, у меня есть экземпляры inst1
и inst2
моего класса. Теперь я хочу добавить inst1.double1
и inst1.double2
в свой первый регистр __m128d
и inst2.double1
и inst2.double2
ко второму __m128d
(в этом порядке в регистрах). Как я могу это сделать?
Вы можете использовать _mm_loadu_pd.
См. Объяснение по адресу: http://msdn.microsoft.com/en-us/library/s1bwk03a%28v=vs.90%29.aspx