Module: vkd3d Branch: master Commit: ae6bc398d6f2d90bc6bf87bdfc8e5096df7669f7 URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/ae6bc398d6f2d90bc6bf87bdfc8e50...
Author: Francisco Casas fcasas@codeweavers.com Date: Mon May 29 17:34:03 2023 -0400
vkd3d-shader/hlsl: Allow derefs to provide the data_type.
After lowering the derefs path to a single offset node, there was no way of knowing the type of the referenced part of the variable. This little modification allows to avoid having to pass the data type everywhere and it is required for supporting instructions that reference objects components within struct types.
Since deref->data_type allows us to retrieve the type of the deref, deref->offset_regset is no longer necessary.
---
libs/vkd3d-shader/hlsl.c | 4 ++- libs/vkd3d-shader/hlsl.h | 6 ++-- libs/vkd3d-shader/hlsl_codegen.c | 14 +++++---- libs/vkd3d-shader/tpf.c | 61 ++++++++++++++++++++-------------------- 4 files changed, 46 insertions(+), 39 deletions(-)