[PATCH vkd3d 00/41] Add support for DXIL shaders

Rémi Bernon rbernon at codeweavers.com
Wed Jan 29 08:09:55 CST 2020

On 1/29/20 2:54 PM, Andrew Eikum wrote:
> On Wed, Jan 29, 2020 at 12:51:25PM +0100, Hans-Kristian Arntzen wrote:
>> Hans-Kristian Arntzen (41):
>>   16 files changed, 6544 insertions(+), 724 deletions(-)
> I can't speak to the content of the series, but this is a huuuuuge
> amount of code to dump all at once. I'd suggest sending series of
> about 4-5 patches at a time.
> Andrew


I wanted to have a look and the patches don't apply cleanly either (it 
fails at #02, but later as well).

Also I tried to build dxil-spirv on Debian, and it misses some LLVM 
include paths in the CMakeLists.txt. Fixing that is easy, but then it 
also requires another include fix to build with llvm-10. Then I tried 
several other version and LLVM 8, 9 and 10 seems to build fine, but it 
starts to fail compiling with earlier versions of LLVM.

In my experience, building a project using LLVM C++ API makes it very 
brittle, as they tend to change their API quite often. The projects fall 
behind very quickly as they cannot keep up with LLVM development speed, 
and it becomes very hard to build.

I'm not sure what's the target but I believe that since the LLVM IR 
format is advertised as stable since 3.7 -and DXIL format probably even 
more- depending on some unstable API to parse it goes a bit against it.

A better solution to this, IMHO, would be to have a custom parser for 
DXIL. Although it's a bit more work, the project would be more self 
contained and much more portable.

Rémi Bernon <rbernon at codeweavers.com>

More information about the wine-devel mailing list