mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-09-12 18:50:22 -07:00
vkd3d-shader/ir: Use vsir_program_append() in vsir_program_ensure_ret().
I think this is slightly nicer. It also happens to avoid a -Warray-bounds warning on some versions of gcc that suggests the "ins" pointer returned by vsir_program_iterator_next() may be NULL.
This commit is contained in:
Notes:
Henri Verbeet
2025-07-31 15:06:57 +02:00
Approved-by: Francisco Casas (@fcasas) Approved-by: Giovanni Mascellani (@giomasce) Approved-by: Elizabeth Figura (@zfigura) Approved-by: Henri Verbeet (@hverbeet) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1665
@@ -1752,14 +1752,11 @@ static enum vkd3d_result vsir_program_ensure_ret(struct vsir_program *program,
|
||||
struct vkd3d_shader_instruction *ins;
|
||||
|
||||
ins = vsir_program_iterator_tail(&it);
|
||||
|
||||
if (ins && ins->opcode == VSIR_OP_RET)
|
||||
return VKD3D_OK;
|
||||
|
||||
if (!vsir_program_iterator_insert_after(&it, 1))
|
||||
if (!(ins = vsir_program_append(program)))
|
||||
return VKD3D_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
ins = vsir_program_iterator_next(&it);
|
||||
vsir_instruction_init(ins, &no_loc, VSIR_OP_RET);
|
||||
|
||||
return VKD3D_OK;
|
||||
|
Reference in New Issue
Block a user