Хотелось бы для сравнения посмотреть результаты такого же тестирования, используя интегрированную графику и вынув видеокарту.
Самому интересен бесшумный компьютер, а интегрированной графики уже несколько лет хватает за глаза :)
В каком-то смысле это не совсем перевод, так как я сам являюсь активным участником данного процесса и могу ответить на некоторые вопросы в комментариях; просто вместо того чтобы придумывать свой велосипед текст, я решил перевести краткий и ёмкий пост Chandler'а. Надеюсь, это частично искупает мою вину.
С++ Mingw тоже не совместим с С++ ABI студии, ничего особо страшного в этом нет.
Всяко бывает, в каких-то проектах интерфейсы между библиотеками протянуты C++ные.
С-ABI и COM работают.
Что Вы подразумеваете под C-ABI? Например, передача и возврат POD структур по значению в Itanium ABI и msvc организованы по-разному. Да и сам layout структур, кажется, тоже разный (просто передачей по указателю не обойтись).
Если что-то можно собрать, то это не значит, что оно работает, верно?
Раньше можно было использовать только Itanium C++ ABI (вроде mingw, насколько я понимаю). Использование скомпилированных для msvc библиотек с C++ным интерфейсом (и «стандартным» виндовым ABI) было невозможным.
Возможно, я не совсем понимаю чего именно Вы хотите, но по идее отдельной сборки/поддержки для clang не потребуется, так как clang как раз и старается быть настолько совместимым с msvc, чтобы лишних телодвижений не требовалось :)
Самая максимальная цикломатическая сложность, равная 2782, принадлежит функции ValidateChunkAMD64() в проекте Chromium. Но её пришлось дисквалифицировать из состязания. Функция находится в файле validator_x86_64.c, который является автогенерируемым. Жаль. А то был бы эпичный рекордсмен. Я и близко с такой цикломатической сложностью не сталкивался.
Это ещё не самая сложная её версия. Промежуточные версии, насколько я знаю, в trunk так и не попали, так как требовали 10+ минут на компиляцию… или просто сносили крышу компилятору и он крэшился :)
Самому интересен бесшумный компьютер, а интегрированной графики уже несколько лет хватает за глаза :)
Под CL всё ок:
CL + MinGW — увы:
В каком-то смысле это не совсем перевод, так как я сам являюсь активным участником данного процесса и могу ответить на некоторые вопросы в комментариях; просто вместо того чтобы придумывать свой
велосипедтекст, я решил перевести краткий и ёмкий пост Chandler'а. Надеюсь, это частично искупает мою вину.Попробуйте воспроизвести с gcc llvm.org/PR15556?
struct S { int x, y; };
и
struct S { int x, y, z; };
Что Вы подразумеваете под C-ABI? Например, передача и возврат POD структур по значению в Itanium ABI и msvc организованы по-разному. Да и сам layout структур, кажется, тоже разный (просто передачей по указателю не обойтись).
Раньше можно было использовать только Itanium C++ ABI (вроде mingw, насколько я понимаю). Использование скомпилированных для msvc библиотек с C++ным интерфейсом (и «стандартным» виндовым ABI) было невозможным.
Это ещё не самая сложная её версия. Промежуточные версии, насколько я знаю, в trunk так и не попали, так как требовали 10+ минут на компиляцию… или просто сносили крышу компилятору и он крэшился :)