vkd3d-shader/ir: Run validation after each VSIR pass, part 1/N.
The idea is that VSIR should validate after each step, so that it's easier to catch problems. At some point that will require introducing VSIR dialects, but I'd say that's something we want anyway.
Normally validation is never run, so that shouldn't add any meaningful runnig time to end users. It might increase running times for developers and the CI; if that's found to be excessive we can add another compilation option to run validation only at the end, similarly to what happens now, but still leave the option to run it after each step when that's useful.
Adding more structure to the VSIR passes might also enable other interesting debugging features, like dumping VSIR after each pass (to the log, or to a file).
What's the feeling about this?