Я пытаюсь выяснить, как установить флаг "mode" для встроенной функции _mm_cmpistrm SSE4.2.У меня есть обычная строка C (char *), которую я загружаю в тип __m128i с помощью _mm_lddqu_si128.Я собирался использовать неподписанные байты при обычном сравнении строк:
_SIDD_UBYTE_OPS | _SIDD_CMP_EQUAL_EACH
Но я не совсем понимаю, что нужно установить для единицы измерения против битовой маски.Вот макросы из smmintrin.h в GCC 4.3.2:
/* These macros specify the output selection in _mm_cmpXstrm (). */
#define _SIDD_BIT_MASK 0x00
#define _SIDD_UNIT_MASK 0x40
Мне кажется, я понимаю, что такое битовая маска: я получу 1 в битах 0.15отличается между двумя строками.Но что делает маска модуля?