Есть ли разница между логическими SSE-функциями для разных типов? Например, если мы берем операцию ИЛИ, есть три свойства: _mm_or_ps, _mm_or_pd и _mm_or_si128, все из которых выполняют одно и то же: вычисляют побитовое ИЛИ их операндов. Мои вопросы:
-
Существует ли какая-либо разница между использованием одного или другого встроенного (с соответствующим типом). Не будет ли скрытых затрат, таких как более длительное выполнение в какой-то конкретной ситуации?
-
Эти внутренности отображаются в трех разных командах x86 (por, orps, orpd). У кого-нибудь есть идеи, почему Intel тратит драгоценное пространство opcode на несколько инструкций, которые делают то же самое?