Signed-off-by: Matteo Bruni mbruni@codeweavers.com --- I haven't reviewed the patch line-by-line, although the contents look pretty familiar (including some questionable comments :D). BTW I suspect some of those implicit type conversions might not be correct anymore in newer shader models.
At any rate, this should be as good a starting point as any. The only high-level point I have is that it's a bit unfortunate to introduce a non-reentrant parser now, but it should be possible to fix that afterwards with somewhat contained modifications (and FWIW, reducing the number of changes compared to the version currently in Wine to the bare minimum is a good enough reason for keeping it IMHO).
I have one specific comment:
+/* The general IR structure is inspired by Mesa GLSL hir, even though the code
- ends up being quite different in practice. Anyway, here comes the relevant
- licensing information.
FWIW, this was quite true at the time, but it's becoming less and less relevant. The current IR is much closer to e.g. SPIR-V than GLSL HIR and in particular, with the change to a flat IR, the way of manipulating the IR is also entirely different compared to Mesa GLSL HIR and related code. Probably the only "heritage" is some of the naming.
So I don't think the copyright blurb has much of a reason to be there anymore. That said, I don't think carrying the hunk over is a problem, or a big deal anyway.