Zebediah Figura (@zfigura) commented about libs/vkd3d-shader/hlsl_codegen.c:
- if (!(load = hlsl_new_var_load(ctx, var, instr->loc)))
return false;
- list_add_before(&instr->entry, &load->node.entry);
- hlsl_replace_node(instr, &load->node);
- return true;
+}
+/* hlsl_ir_index nodes are a parse-time construct used to represent array indexing and struct
- record access before knowing if they will be used in the lhs of an assignment --in which case
- they are lowered into a deref-- or as the load of an element within a larger value.
- For the latter case, this pass takes care of lowering hlsl_ir_indexes (and index chains) into
- individual hlsl_ir_loads.
- It is worth noting that the generated hlsl_ir_loads don't load from a copy of the variable loaded
- at the beggining of the index chain, but from the same variable instead, because it is assumed
Spelling error, "beginning".