mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-09-13 09:16:14 -07:00
vkd3d-shader/dxil: Implement DX intrinsic WaveReadLaneFirst.
This commit is contained in:
parent
936d8e4f61
commit
47f0483267
Notes:
Alexandre Julliard
2024-05-14 23:00:18 +02:00
Approved-by: Giovanni Mascellani (@giomasce) Approved-by: Henri Verbeet (@hverbeet) Approved-by: Alexandre Julliard (@julliard) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/863
@ -346,6 +346,7 @@ static const char * const shader_opcode_names[] =
|
||||
[VKD3DSIH_WAVE_OP_UMIN ] = "wave_op_umin",
|
||||
[VKD3DSIH_WAVE_PREFIX_BIT_COUNT ] = "wave_prefix_bit_count",
|
||||
[VKD3DSIH_WAVE_READ_LANE_AT ] = "wave_read_lane_at",
|
||||
[VKD3DSIH_WAVE_READ_LANE_FIRST ] = "wave_read_lane_first",
|
||||
[VKD3DSIH_XOR ] = "xor",
|
||||
};
|
||||
|
||||
|
@ -454,6 +454,7 @@ enum dx_intrinsic_opcode
|
||||
DX_WAVE_ACTIVE_ALL_EQUAL = 115,
|
||||
DX_WAVE_ACTIVE_BALLOT = 116,
|
||||
DX_WAVE_READ_LANE_AT = 117,
|
||||
DX_WAVE_READ_LANE_FIRST = 118,
|
||||
DX_WAVE_ACTIVE_OP = 119,
|
||||
DX_WAVE_ACTIVE_BIT = 120,
|
||||
DX_WAVE_PREFIX_OP = 121,
|
||||
@ -4586,6 +4587,8 @@ static enum vkd3d_shader_opcode map_dx_unary_op(enum dx_intrinsic_opcode op)
|
||||
return VKD3DSIH_WAVE_ANY_TRUE;
|
||||
case DX_WAVE_PREFIX_BIT_COUNT:
|
||||
return VKD3DSIH_WAVE_PREFIX_BIT_COUNT;
|
||||
case DX_WAVE_READ_LANE_FIRST:
|
||||
return VKD3DSIH_WAVE_READ_LANE_FIRST;
|
||||
default:
|
||||
vkd3d_unreachable();
|
||||
}
|
||||
@ -6271,6 +6274,7 @@ static const struct sm6_dx_opcode_info sm6_dx_op_table[] =
|
||||
[DX_WAVE_PREFIX_BIT_COUNT ] = {"i", "1", sm6_parser_emit_dx_unary},
|
||||
[DX_WAVE_PREFIX_OP ] = {"n", "Rcc", sm6_parser_emit_dx_wave_op},
|
||||
[DX_WAVE_READ_LANE_AT ] = {"n", "Ri", sm6_parser_emit_dx_binary},
|
||||
[DX_WAVE_READ_LANE_FIRST ] = {"n", "R", sm6_parser_emit_dx_unary},
|
||||
};
|
||||
|
||||
static bool sm6_parser_validate_operand_type(struct sm6_parser *sm6, const struct sm6_value *value, char info_type,
|
||||
|
@ -547,6 +547,7 @@ enum vkd3d_shader_opcode
|
||||
VKD3DSIH_WAVE_OP_UMIN,
|
||||
VKD3DSIH_WAVE_PREFIX_BIT_COUNT,
|
||||
VKD3DSIH_WAVE_READ_LANE_AT,
|
||||
VKD3DSIH_WAVE_READ_LANE_FIRST,
|
||||
VKD3DSIH_XOR,
|
||||
|
||||
VKD3DSIH_INVALID,
|
||||
|
Loading…
Reference in New Issue
Block a user