<p dir="ltr"><br>
On 6 Mar 2015 23:30, "Joakim via Digitalmars-d" <<a href="mailto:digitalmars-d@puremagic.com">digitalmars-d@puremagic.com</a>> wrote:<br>
><br>
> The ground-up redesign of OpenGL, now called Vulkan, has been announced at GDC:<br>
><br>
> <a href="http://www.phoronix.com/scan.php?page=article&item=khronos-vulcan-spirv">http://www.phoronix.com/scan.php?page=article&item=khronos-vulcan-spirv</a><br>
><br>
> Both graphics shaders and the latest verson of OpenCL, which enables computation on the GPU, will target a new IR called SPIR-V:<br>
><br>
> <a href="http://www.anandtech.com/show/9039/khronos-announces-opencl-21-c-comes-to-opencl">http://www.anandtech.com/show/9039/khronos-announces-opencl-21-c-comes-to-opencl</a><br>
><br>
> Rather than being forced to use C-like languages like GLSL or OpenCL in the past, this new IR will allow writing graphics shaders and OpenCL code using any language, including a subset of C++14 stripped of exceptions, function pointers, and virtual functions.<br>
><br>
> This would be a good opportunity for D, if ldc or gdc could be made to target SPIR-V.  Ldc would seem to have a leg up, since SPIR was originally based on LLVM IR before diverging with SPIR-V.</p>
<p dir="ltr">Unlike LDC, GDC doesn't need to be *made* to target anything.  It's IR is high level enough that you don't need to think (nor care) about your backend target.</p>
<p dir="ltr">GCC itself will need a backend to support it though.  ;)</p>
<p dir="ltr">Iain</p>