gallium: Add a cap bit for integer multiplication between 32-bit and 16-bit
Driver supports integer multiplication between a 32-bit integer and a 16-bit integer. If the second operand is 32-bits, the upper 16-bits are ignored, and the low 16-bits are possibly sign extended as necessary. Iris will eventually enable this. Not sure about other drivers. v2: Add default value to u_screen.c. Suggested by Caio. Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/767>
This commit is contained in:
parent
9db20748fd
commit
b14e718e68
|
@ -405,6 +405,7 @@ u_pipe_screen_get_param_defaults(struct pipe_screen *pscreen,
|
||||||
return 16;
|
return 16;
|
||||||
|
|
||||||
case PIPE_CAP_OPENCL_INTEGER_FUNCTIONS:
|
case PIPE_CAP_OPENCL_INTEGER_FUNCTIONS:
|
||||||
|
case PIPE_CAP_INTEGER_MULTIPLY_32X16:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -566,6 +566,7 @@ The integer capabilities:
|
||||||
* ``PIPE_CAP_CLIP_PLANES``: Driver supports user-defined clip-planes.
|
* ``PIPE_CAP_CLIP_PLANES``: Driver supports user-defined clip-planes.
|
||||||
* ``PIPE_CAP_MAX_VERTEX_BUFFERS``: Number of supported vertex buffers.
|
* ``PIPE_CAP_MAX_VERTEX_BUFFERS``: Number of supported vertex buffers.
|
||||||
* ``PIPE_CAP_OPENCL_INTEGER_FUNCTIONS``: Driver supports extended OpenCL-style integer functions. This includes averge, saturating additiong, saturating subtraction, absolute difference, count leading zeros, and count trailing zeros.
|
* ``PIPE_CAP_OPENCL_INTEGER_FUNCTIONS``: Driver supports extended OpenCL-style integer functions. This includes averge, saturating additiong, saturating subtraction, absolute difference, count leading zeros, and count trailing zeros.
|
||||||
|
* ``PIPE_CAP_INTEGER_MULTIPLY_32X16``: Driver supports integer multiplication between a 32-bit integer and a 16-bit integer. If the second operand is 32-bits, the upper 16-bits are ignored, and the low 16-bits are possibly sign extended as necessary.
|
||||||
|
|
||||||
.. _pipe_capf:
|
.. _pipe_capf:
|
||||||
|
|
||||||
|
|
|
@ -911,6 +911,7 @@ enum pipe_cap
|
||||||
PIPE_CAP_CLIP_PLANES,
|
PIPE_CAP_CLIP_PLANES,
|
||||||
PIPE_CAP_MAX_VERTEX_BUFFERS,
|
PIPE_CAP_MAX_VERTEX_BUFFERS,
|
||||||
PIPE_CAP_OPENCL_INTEGER_FUNCTIONS,
|
PIPE_CAP_OPENCL_INTEGER_FUNCTIONS,
|
||||||
|
PIPE_CAP_INTEGER_MULTIPLY_32X16,
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue