This repo hosts the source for the DirectX Shader Compiler which is based on LLVM/Clang.
This is a Patch Release for the March 2024 DirectX Compiler.
This release contains a high priority bug fix for a significant regression that impacted users.
This DX compiler release is also available as a NuGet package [Microsoft.Direct3D.DXC](https://www.nuget.org/packages/Microsoft.Direct3D.DXC/1.8.2403.24)
.
Full Changelog: https://github.com/microsoft/DirectXShaderCompiler/compare/v1.8.2403.1...v1.8.2403.2
This release version is considered v1.8.2403.2, and the commit is tagged as such. However, versioning for binaries and the NuGet package will have a different patch version number. This is expected at this time.
The main dxc executable and dxcompiler.dll have version 1.8.2403.37, and the DXIL.dll and NuGet package have version 1.8.2403.24.
This is a Patch Release for the March 2024 DirectX Compiler.
Issue #6410 was reported, where using literal arguments in the fmod
intrinsic would crash the compiler. This patch fixes the issue by reverting the commit that introduced the regression.
This DX compiler release is also available as a NuGet package Microsoft.Direct3D.DXC.
Full Changelog: https://github.com/microsoft/DirectXShaderCompiler/compare/v1.8.2403...v1.8.2403.1
This release version is considered v1.8.2403.1
, and the commit is tagged as such. However, versioning for binaries and the NuGet package will have a different patch version number. This is expected at this time.
The main dxc executable and dxcompiler.dll
have version 1.8.2403.36
, and the DXIL.dll
and NuGet package have version 1.8.2403.21
.
DX Compiler release for March 2024
This DX compiler release is also available as a NuGet package Microsoft.Direct3D.DXC.
The new DirectX 12 Agility SDK and a hardware driver with appropriate support are required to run shader model 6.8 shaders. Please see https://aka.ms/directx12agility for details.
The SPIR-V backend of the compiler has been enabled in this release.
DX Compiler release for August 2023.
This DX compiler release is also available as a NuGet package Microsoft.Direct3D.DXC.
The new DirectX 12 Agility SDK and a hardware driver with appropriate support are required to run shader model 6.7 shaders. Please see https://aka.ms/directx12agility for details.
The SPIR-V backend of the compiler has been enabled in this release.
DX Compiler preview release for June 2023.
Includes experimental support for Shader Model 6.8 features:
See the DirectX blog for more information about Shader Model 6.8 features: https://devblogs.microsoft.com/directx/
The Windows package includes dxc.exe, dxcompiler.dll, and corresponding lib and headers for x64 and arm64 platforms. The Linux package includes dxc, libdxcompiler.so, and corresponding headers for x86_64 Ubuntu LTS (22.04).
The DXIL signing library (dxil.dll/libdxil.so) is not provided with this preview release. DXIL generated with this compiler targeting Shader Model 6.8 is not final, cannot be validated, and is not supported for distribution or execution on machines not running in developer mode.
The new DirectX 12 Preview Agility SDK (Microsoft.Direct3D.D3D12 nuget package here), and a hardware driver with appropriate support are required to run shader model 6.8 shaders. Please see https://aka.ms/directx12agility for details. Nuget for Microsoft.Direct3D.DXC can be found here.
The SPIR-V backend of the compiler has been enabled in this release. Please note that Microsoft does not perform testing/verification of the SPIR-V backend.
DX Compiler release for December 2022.
and
, or
and select
intrinsics are now exposed in all language modes. This was done to ease porting codebases to HLSL2021, but may cause name conflicts in existing code.-ftime-report
flag prints a high level summary of compile time broken down by major phase or pass in the compiler. The DXC command line will print the output to stdout.-ftime-trace
flag prints a Chrome trace json file. The output can be routed to a specific file by providing a filename to the arguent using the format -ftime-trace=<filename>
. Chrome trace files can be opened in Chrome by loading the built-in tracing tool at chrome://tracing. The trace file captures hierarchial timing data with additional context enabling a much more in-depth profiling experience.DXC_OUT_TIME_REPORT
and DXC_OUT_TIME_TRACE
output kinds respectively.-P
flag will now behave as it does with cl using the file specified by -Fi
or a defaultThe package includes dxc.exe, dxcompiler.dll, corresponding lib and headers, and dxil.dll for x64 and arm64 platforms on Windows. For the first time the package also includes Linux version of the compiler with corresponding executable, libdxcompiler.so, headers, and libdxil.so for x64 platforms.
This DX compiler release is also available as a NuGet package Microsoft.Direct3D.DXC.
The new DirectX 12 Agility SDK and a hardware driver with appropriate support are required to run shader model 6.7 shaders. Please see https://aka.ms/directx12agility for details.
The SPIR-V backend of the compiler has been enabled in this release. Please note that Microsoft does not perform testing/verification of the SPIR-V backend.
DX Compiler release for July 2022. Contains shader model 6.7 and many bug fixes and improvements, such as:
The package includes dxc.exe, dxcompiler.dll, corresponding lib and headers, and dxil.dll for x64 and, for the first time, arm64 platforms!
The new DirectX 12 Agility SDK and a hardware driver with appropriate support are required to run shader model 6.7 shaders.
The SPIR-V backend of the compiler has been enabled in this release. Please note that Microsoft does not perform testing/verification of the SPIR-V backend.
Also available via vcpkg.
DirectX Compiler Release for December 2021.
Includes a preview of new HLSL 2021 language features. For details, see Announcing HLSL 2021.
Here are some highlights:
HLSL 2021 also introduces more subtle changes that we think will make shader authoring in HLSL more familiar and productive, but it might have unexpected impact in existing shaders:
for
loop scoping rulesThe new features are available by passing -HV 2021
flag to the compiler. The HLSL 2021 will become the default language version in a future release.
The package includes dxc.exe, dxcompiler.dll, corresponding lib and headers, and dxil.dll. The new DirectX 12 Agility SDK is required to run shader model 6.6 shaders.
SPIR-V: Per community request the SPIR-V backend of the compiler has been enabled in this release. Please note that Microsoft does not perform testing/verification of the SPIR-V backend.
DX Compiler release for June 2021. Contains bug fixes and improvements, such as:
The package includes dxc.exe, dxcompiler.dll, corresponding lib and headers, and dxil.dll.
The new DirectX 12 Agility SDK is required to run shader model 6.6 shaders.
SPIR-V: Per community request the SPIR-V backend of the compiler has been enabled in this release. Please note that Microsoft does not perform testing/verification of the SPIR-V backend.