El proyecto LLVM ha promovido su backend de DirectX a objetivo oficial del compilador, tras cuatro años de desarrollo respaldados por Microsoft. La tecnología traduce el código intermedio de LLVM al lenguaje DXIL, el que ejecutan los controladores gráficos DirectX 12 de Windows. Hasta ahora era un objetivo experimental que no venía activado por defecto, y esa etapa queda atrás con esta decisión.
El ingeniero de compiladores HLSL de Microsoft, Farzon Lotfi, confirmó el cambio al presentar el parche que formaliza la promoción. Según explicó, esta decisión saca el backend de DirectX de su estado experimental y suma el frontend clang-dxc, de forma que la comunidad cuenta ya con un camino claro para probar el nuevo backend. Vamos a ver qué implica esto para quienes trabajan con HLSL y DirectX 12. La decisión llega después de un mes de debate en el foro LLVM Discourse, donde se discutió si el backend estaba lo bastante maduro para dar el salto.
De objetivo experimental a pieza estable del compilador
Durante los últimos cuatro años, el backend de DirectX dentro de LLVM convivía en un limbo técnico: existía y funcionaba, pero había que activarlo de forma manual porque las compilaciones por defecto no lo incluían. Esa etiqueta de experimental limitaba su adopción fuera de los equipos que ya seguían de cerca el desarrollo del proyecto.
Con la promoción a objetivo oficial, el backend pasaría a recibir el mismo trato que otras arquitecturas consolidadas dentro de LLVM, lo que en la práctica del proyecto suele traducirse en mantenimiento continuado y pruebas de regresión periódicas. El frontend clang-dxc, hasta ahora una pieza secundaria, queda ya incorporado al proyecto para compilar código HLSL, el lenguaje en el que los estudios escriben sus shaders para DirectX. Eso sí, como os contamos más adelante, la activación por defecto de clang-dxc y HLSL no llegará hasta LLVM 24. LLVM, conviene recordarlo, es el conjunto de herramientas de compilación de código abierto que también usan proyectos como Clang, Rust o Swift para traducir código fuente en instrucciones que entiende cada tipo de hardware.
Ray tracing y los próximos Shader Models, en el punto de mira
En la misma discusión de LLVM Discourse, Microsoft detalló hacia dónde apunta el trabajo a partir de ahora. La compañía señaló que el desarrollo futuro se centrará en dar soporte a los shaders gráficos y de ray tracing, a los Shader Models más recientes, y en estrechar la integración entre las capacidades del frontend HLSL de Clang y la generación de código del backend. Los Shader Models son las especificaciones que determinan qué instrucciones puede ejecutar una tarjeta gráfica compatible con DirectX, y cada nueva versión añade funciones que los desarrolladores de videojuegos y aplicaciones 3D pueden aprovechar.
Microsoft también explicó por qué le interesa que el backend sea oficial: con él convertido en objetivo oficial y clang-dxc activado por defecto, la compañía espera recibir más comentarios de los usuarios, algo que impulsaría la conformidad, el ajuste de rendimiento y la definición de futuras funcionalidades. Ese soporte de clang-dxc y HLSL activado por defecto llegará con LLVM 24, la versión prevista para el próximo año.
Qué puede significar fuera del ecosistema Windows
Aunque el anuncio oficial se centra en la ejecución sobre controladores DirectX 12 de Windows, que es el destino final para el que se diseñó DXIL, LLVM es una infraestructura de compiladores compartida por proyectos de muy distinta naturaleza y sistemas operativos.
Dar estabilidad oficial a este backend podría reducir la fricción para cualquier herramienta que necesite trabajar con código HLSL o generar DXIL fuera del flujo tradicional de Windows, aunque esto no es algo que Microsoft haya planteado explícitamente. Motores gráficos, herramientas de desarrollo y proyectos multiplataforma que ya usan LLVM podrían beneficiarse de esa estabilidad si en algún momento decidieran generar código DXIL.
No hay, de momento, ningún anuncio específico sobre soporte para Linux u otras plataformas ligado a esta promoción: el foco declarado por Microsoft es el ray tracing, los nuevos Shader Models y la integración entre Clang y el backend. Si trabajáis con motores gráficos multiplataforma, el dato que más os interesará es el calendario: LLVM 24, prevista para 2027, será la primera versión con clang-dxc y HLSL activados por defecto de serie.
