Ошибка лягушки не исправлена ​​более 5 лет. Что делать? - PullRequest
4 голосов
/ 28 марта 2019

x86 В Clang есть ошибка, о которой я сообщил еще в 2013 году. Она подтверждена, но они так и не исправили ее. Что я могу сделать, чтобы они это исправили?

Отчет об ошибке здесь: https://bugs.llvm.org/show_bug.cgi?id=17164

Описание:

__m128  x;  // vector of four float
__m128i y;  // vector of four int
x = y;      // does not convert int to float but preserves the bits

Внутренние типы векторов, такие как __m128, __m128i, __m128d, бесшумно приводятся друг к другу в битах, что дает странные результаты. Все остальные компиляторы рассматривают эти векторные типы как разные типы. Нет никакой опции, которая делает Clang совместимым с другими компиляторами для встроенных векторных типов.

Это большая проблема для библиотеки классов Vector (https://www.agner.org/optimize/#vectorclass). Я не знаю, что делать, чтобы они исправили эту ошибку. Пожалуйста, помогите.

...