DirectX backend в LLVM получил статус официально поддерживаемой архитектурной цели
В LLVM завершён перевод
DirectX backend из экспериментального в официальный статус. Соответствующий
pull request #214066 был влит в основную ветку llvm-project 31 августа. DirectX перенесён из
LLVM_ALL_EXPERIMENTAL_TARGETS в обычный
LLVM_ALL_TARGETS, поэтому теперь backend будет
собираться по умолчанию вместе с другими штатными целями LLVM.
Ранее для его включения требовалось явно добавлять
DirectX через CMake-параметр
LLVM_EXPERIMENTAL_TARGETS_TO_BUILD. В принятом изменении
DirectX добавлен в стандартный список targets и удалён из экспериментального.
Речь идёт не о реализации Direct3D или графическом драйвере.
DirectX backend преобразует LLVM IR в DXIL — DirectX Intermediate Language, используемый DirectX 12 для представления скомпилированных шейдеров. Согласно
документации LLVM, DXIL основан на bitcode старого LLVM 3.7, дополненного специфичными для DirectX операциями, ограничениями и метаданными. Результат помещается в контейнер
DXContainer, содержащий DXIL и дополнительную информацию о шейдере.
(
читать дальше... )
directx,
llvm