vkd3d-shader/hlsl: Introduce hlsl_ir_index, part 1/2.
- Apr 13, 2023
-
-
Co-authored-by:
Francisco Casas <fcasas@codeweavers.com>
-
-
-
-
From this point on, it is no longer true that only hlsl_ir_loads can return objects, because an object can also come from chain of hlsl_ir_indexes that ends in an hlsl_ir_load. The lower_index_loads pass takes care of lowering all hlsl_ir_indexes into hlsl_ir_loads. For this reason, hlsl_resource_load_params now expects both the resource as the sampler to be just an hlsl_ir_node pointer instead of a pointer to a more specific hlsl_ir_load.
-
This node type is intended for use during parse-time. While we parse an indexing expression such as "a[3]", we don't know if it will end up as part of an expression (in which case it must be folded into a load) or it is for the lhs of a store (in which case it must be folded into the store's deref).
-
-
Co-authored-by:
Francisco Casas <fcasas@codeweavers.com>
-
-
-