Re: [PATCH vkd3d 5/5] vkd3d-shader: Make the HLSL compiler reëntrant.

Matteo Bruni matteo.mystral at gmail.com
Tue Feb 9 10:23:31 CST 2021


On Thu, Feb 4, 2021 at 11:34 PM Zebediah Figura <zfigura at codeweavers.com> wrote:
>
> Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
> ---
> This is an unfortunately huge patch, but the majority of the line count is due
> to passing "ctx" to functions, or treating it as a pointer where it previously
> was not.

Sorry, took me a while to get at these. Yeah, not much you can do
about patch size, and as you mentioned most of it is obvious search
and replace so not particularly problematic.

Patch is great. I have a potential followup idea, although it's going
to be more churn for no real benefit, so feel free to dismiss it.

>  libs/vkd3d-shader/hlsl.c | 100 ++++-----
>  libs/vkd3d-shader/hlsl.h |  44 ++--
>  libs/vkd3d-shader/hlsl.l |  98 ++++----
>  libs/vkd3d-shader/hlsl.y | 466 ++++++++++++++++++++-------------------
>  4 files changed, 362 insertions(+), 346 deletions(-)
>
> diff --git a/libs/vkd3d-shader/hlsl.c b/libs/vkd3d-shader/hlsl.c
> index 43072c26..2b830a57 100644
> --- a/libs/vkd3d-shader/hlsl.c
> +++ b/libs/vkd3d-shader/hlsl.c
> @@ -25,19 +25,20 @@ void hlsl_message(const char *fmt, ...)
>      /* FIXME */
>  }
>
> -void hlsl_report_message(const struct source_location loc,
> +void hlsl_report_message(struct hlsl_ctx *ctx, const struct source_location loc,
>          enum hlsl_error_level level, const char *fmt, ...)

It feels like the "loc" argument was intended to be a pointer.



More information about the wine-devel mailing list