So, Microsoft was making an opensource HLSL-TO-ALMOST-LLVM compiler, and Khronos are making an opensource hlsl/glsl-to-almos T-LLVM compiler.
Apple METALSL is almost C + + (and new HLSL would get closer to C + +). Although Apple's compiler is not open-source.
https://twitter.com/zeuxcg/status/710698923216621568
Https://www.pcper.com/news/Graphics-Cards/Microsoft-Publishes-HLSL-Shader-Model-60-MSDN-Docs
Https://msdn.microsoft.com/en-us/library/windows/desktop/mt733232%28v=vs.85%29.aspx#hardware_capability
Microsoft publishes HLSL Shader Model 6.0 MSDN Docs
Subject:graphics Cards | August 2, 2016-07:37 AM | Scott Michaud
Tagged:windows, Vulkan, Microsoft, DirectX 12
Update (August 3rd @ 4:30pm): Turns out Khronos Group announced at SIGGRAPH that subgroup instructions has been recently Added to Spir-v (skip video to 21:30), and is a "top priority" for "Vulkan Next". Some (like Waveballot) is already ARB (multi-vendor) OpenGL extensions, too.
Original Post below:
DirectX ' s shading language would receive some new functionality with the new Shader Model 6.0. According to their GDC talks, it's looking like it'll be structured similar to spir-v on how it ' s compiled and ingested . Code'll is compiled and optimized as an llvm-style bytecode, which the driver would accept and execute on the GPU. This could make it easy-to-write dx12-compatible shader code in other languages, like C + +, which is a direction that Vulka N is heading, but the Microsoft hasn ' t seemed to announce that yet.
View Full Size
This news shows a bit more of the nitty gritty details. It looks like they added 16-bit signed (short) and unsigned (ushort) integers, which might provide a performance improveme NT on certain architectures (although I's not sure that it's new and/or GPUs exist the natively operate upon them) because They operate on half of the data as a, 32-bit integer. They has also added more functionality, to both the pixel and compute shaders, to operate in multiple threads, called LAN ES, similar to OpenCL. This should allow algorithms to work more efficiently in blocks of pixels, rather than needing to use one of a handful of Fixed function calls (Ex:partial derivates DDX and Ddy) to see outside their thread.
When would this land? No idea, but it's conspicuously close to the anniversary Update. It has the been added to Feature level 12.0 and so its GPUs support should is pretty good. Also, Vulkan exists, doing its thing. Not sure how these functions overlap with Spir-v's feature set, but, since SPIR is original for OpenCL, it could be just Sitting there for all I know.
https://blogs.msdn.microsoft.com/chuckw/2012/05/07/hlsl-fxc-and-d3dcompile/
With Visual Studio or later, HLSL and the FXC. EXE tool is now integrated to build environment and the Windows 8.x sdk/windows SDK. If you add. HLSL and. fx extension files to your project, there was properties for controlling how the HLSL compiler was in Voked as part of your build including target profiles, entry point name, etc. The resulting compiled shader uses the default extension of. CSO (compiled shader Object). The texture editor supports HLSL colorization, and the Visual Studio Graphics Diagnostics feature provides support for Deb Ugging HLSL as well.
Microsoft's HLSL Shader Model 6.0 compiler to turn to LLVM, an open-source rhythm. Apple/khronos have their own plans.