Что такое __attribute__ vector_size?

Учитывая этот код:

using vec = uint32_t __attribute__ ((vector_size (16)));

Как это можно переписать для MSVC 2015?

-1

Решение

Это специальное расширение GCC для создания целых чисел & типы с плавающей запятой, размер которых превышает 64 бита, и, насколько я знаю, в VC ++ нет прямой замены, но есть тип __m128d, который вы можете использовать вместо этого.

3

Другие решения

Это пример GCC векторные расширения которые являются абстракцией над инструкциями SIMD.

Эта конкретная строка создает псевдоним типа vec для вектора длиной всего 16 байтов, состоящего из 32-разрядных беззнаковых итераторов.

MSVC не имеет эквивалентного расширения. Использование SIMD поддерживается через процедуры выравнивания и встроенная сборка. Таким образом, нет возможности точно переписать строку, и недостаточно просто переписать эта линия, но также и строки, в которых используются псевдонимы или объекты, использующие тип.

1

По вопросам рекламы [email protected]