Учитывая этот код:
using vec = uint32_t __attribute__ ((vector_size (16)));
Как это можно переписать для MSVC 2015?
Это специальное расширение GCC для создания целых чисел & типы с плавающей запятой, размер которых превышает 64 бита, и, насколько я знаю, в VC ++ нет прямой замены, но есть тип __m128d, который вы можете использовать вместо этого.
Это пример GCC векторные расширения которые являются абстракцией над инструкциями SIMD.
Эта конкретная строка создает псевдоним типа vec
для вектора длиной всего 16 байтов, состоящего из 32-разрядных беззнаковых итераторов.
MSVC не имеет эквивалентного расширения. Использование SIMD поддерживается через процедуры выравнивания и встроенная сборка. Таким образом, нет возможности точно переписать строку, и недостаточно просто переписать эта линия, но также и строки, в которых используются псевдонимы или объекты, использующие тип.