https://bugs.winehq.org/show_bug.cgi?id=54544
--- Comment #1 from Nikolay Sivov bunglehead@gmail.com --- KW_VERTEXSHADER is about "fx" syntax that we don't generally support yet, and I'm looking at improving this. Depending on how this is compiled, for regular targets such constructs are parsed, validated, but not too much, and then discarded. About not too much, there are degrees of how calls in "pass {}" are checked, we probably could defer deeper checks until writing phase, but keep surface validation for all targets.
Could you please attach full logs for hlsl reports, or just a main argument trace line from D3DCompile2() that shows target name (ps_3_0, ps_4_0, etc) would be enough to know how far it is from working.