From: Henri Verbeet Subject: Re: [PATCH vkd3d 6/9] vkd3d-shader: Implement DMOV, DMOVC, DADD, DDIV, DMUL and DRCP. Message-Id: Date: Tue, 15 Jun 2021 23:54:04 +0200 In-Reply-To: <20210614032643.14994-6-cmccarthy@codeweavers.com> References: <20210614032643.14994-1-cmccarthy@codeweavers.com> <20210614032643.14994-6-cmccarthy@codeweavers.com> On Mon, 14 Jun 2021 at 05:27, Conor McCarthy wrote: > diff --git a/libs/vkd3d-shader/dxbc.c b/libs/vkd3d-shader/dxbc.c > index 782aed13..d23dfcad 100644 > --- a/libs/vkd3d-shader/dxbc.c > +++ b/libs/vkd3d-shader/dxbc.c > @@ -310,9 +310,15 @@ enum vkd3d_sm4_opcode > VKD3D_SM5_OP_IMM_ATOMIC_UMAX = 0xbc, > VKD3D_SM5_OP_IMM_ATOMIC_UMIN = 0xbd, > VKD3D_SM5_OP_SYNC = 0xbe, > + VKD3D_SM5_OP_DADD = 0xbf, > + VKD3D_SM5_OP_DMUL = 0xc2, > + VKD3D_SM5_OP_DMOV = 0xc7, > + VKD3D_SM5_OP_DMOVC = 0xc8, > VKD3D_SM5_OP_EVAL_SAMPLE_INDEX = 0xcc, > VKD3D_SM5_OP_EVAL_CENTROID = 0xcd, > VKD3D_SM5_OP_DCL_GS_INSTANCES = 0xce, > + VKD3D_SM5_OP_DDIV = 0xd2, > + VKD3D_SM5_OP_DRCP = 0xd4, > }; > One instruction per patch, please. > @@ -1236,6 +1242,12 @@ static const struct vkd3d_sm4_opcode_info opcode_table[] = > {VKD3D_SM5_OP_EVAL_CENTROID, VKD3DSIH_EVAL_CENTROID, "f", "f"}, > {VKD3D_SM5_OP_DCL_GS_INSTANCES, VKD3DSIH_DCL_GS_INSTANCES, "", "", > shader_sm4_read_declaration_count}, > + {VKD3D_SM5_OP_DADD, VKD3DSIH_DADD, "d", "dd"}, > + {VKD3D_SM5_OP_DMUL, VKD3DSIH_DMUL, "d", "dd"}, > + {VKD3D_SM5_OP_DMOV, VKD3DSIH_DMOV, "d", "d"}, > + {VKD3D_SM5_OP_DMOVC, VKD3DSIH_DMOVC, "d", "udd"}, > + {VKD3D_SM5_OP_DDIV, VKD3DSIH_DDIV, "d", "dd"}, > + {VKD3D_SM5_OP_DRCP, VKD3DSIH_DRCP, "d", "d"}, > }; > This table is ordered by vkd3d_sm4_opcode value, please keep it that way. > diff --git a/libs/vkd3d-shader/vkd3d_shader_private.h b/libs/vkd3d-shader/vkd3d_shader_private.h > index f7a3c60e..d0fd25ee 100644 > --- a/libs/vkd3d-shader/vkd3d_shader_private.h > +++ b/libs/vkd3d-shader/vkd3d_shader_private.h > @@ -354,6 +354,13 @@ enum vkd3d_shader_opcode > VKD3DSIH_UTOF, > VKD3DSIH_XOR, > > + VKD3DSIH_DADD, > + VKD3DSIH_DMUL, > + VKD3DSIH_DMOV, > + VKD3DSIH_DMOVC, > + VKD3DSIH_DDIV, > + VKD3DSIH_DRCP, > + > VKD3DSIH_INVALID, > }; > The elements in this enumeration are ordered, please keep them that way.