gallium: add PIPE_CAP_TGSI_BALLOT
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:
@@ -384,6 +384,8 @@ The integer capabilities:
|
|||||||
* ``PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE``: The page size of sparse buffers in
|
* ``PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE``: The page size of sparse buffers in
|
||||||
bytes, or 0 if sparse buffers are not supported. The page size must be at
|
bytes, or 0 if sparse buffers are not supported. The page size must be at
|
||||||
most 64KB.
|
most 64KB.
|
||||||
|
* ``PIPE_CAP_TGSI_BALLOT``: Whether the BALLOT and READ_* opcodes as well as
|
||||||
|
the SUBGROUP_* semantics are supported.
|
||||||
|
|
||||||
|
|
||||||
.. _pipe_capf:
|
.. _pipe_capf:
|
||||||
|
@@ -248,6 +248,7 @@ etna_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* Stream output. */
|
/* Stream output. */
|
||||||
|
@@ -305,6 +305,7 @@ fd_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
case PIPE_CAP_MAX_VIEWPORTS:
|
case PIPE_CAP_MAX_VIEWPORTS:
|
||||||
|
@@ -304,6 +304,7 @@ i915_get_param(struct pipe_screen *screen, enum pipe_cap cap)
|
|||||||
case PIPE_CAP_TGSI_TEX_TXF_LZ:
|
case PIPE_CAP_TGSI_TEX_TXF_LZ:
|
||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
case PIPE_CAP_MAX_VIEWPORTS:
|
case PIPE_CAP_MAX_VIEWPORTS:
|
||||||
|
@@ -350,6 +350,7 @@ llvmpipe_get_param(struct pipe_screen *screen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* should only get here on unhandled cases */
|
/* should only get here on unhandled cases */
|
||||||
|
@@ -214,6 +214,7 @@ nv30_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
case PIPE_CAP_VENDOR_ID:
|
case PIPE_CAP_VENDOR_ID:
|
||||||
|
@@ -266,6 +266,7 @@ nv50_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
case PIPE_CAP_VENDOR_ID:
|
case PIPE_CAP_VENDOR_ID:
|
||||||
|
@@ -289,6 +289,7 @@ nvc0_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_INT64_DIVMOD:
|
case PIPE_CAP_INT64_DIVMOD:
|
||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
case PIPE_CAP_VENDOR_ID:
|
case PIPE_CAP_VENDOR_ID:
|
||||||
|
@@ -236,6 +236,7 @@ static int r300_get_param(struct pipe_screen* pscreen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* SWTCL-only features. */
|
/* SWTCL-only features. */
|
||||||
|
@@ -384,6 +384,7 @@ static int r600_get_param(struct pipe_screen* pscreen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
case PIPE_CAP_DOUBLES:
|
case PIPE_CAP_DOUBLES:
|
||||||
|
@@ -503,6 +503,7 @@ static int si_get_param(struct pipe_screen* pscreen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_MUL_ZERO_WINS:
|
case PIPE_CAP_TGSI_MUL_ZERO_WINS:
|
||||||
case PIPE_CAP_UMA:
|
case PIPE_CAP_UMA:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
case PIPE_CAP_QUERY_BUFFER_OBJECT:
|
case PIPE_CAP_QUERY_BUFFER_OBJECT:
|
||||||
|
@@ -300,6 +300,7 @@ softpipe_get_param(struct pipe_screen *screen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
case PIPE_CAP_SHADER_BUFFER_OFFSET_ALIGNMENT:
|
case PIPE_CAP_SHADER_BUFFER_OFFSET_ALIGNMENT:
|
||||||
return 4;
|
return 4;
|
||||||
|
@@ -430,6 +430,7 @@ svga_get_param(struct pipe_screen *screen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -322,6 +322,7 @@ swr_get_param(struct pipe_screen *screen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
case PIPE_CAP_VENDOR_ID:
|
case PIPE_CAP_VENDOR_ID:
|
||||||
|
@@ -250,6 +250,7 @@ vc4_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* Stream output. */
|
/* Stream output. */
|
||||||
|
@@ -259,6 +259,7 @@ virgl_get_param(struct pipe_screen *screen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_CLOCK:
|
case PIPE_CAP_TGSI_CLOCK:
|
||||||
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
case PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE:
|
||||||
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE:
|
||||||
|
case PIPE_CAP_TGSI_BALLOT:
|
||||||
return 0;
|
return 0;
|
||||||
case PIPE_CAP_VENDOR_ID:
|
case PIPE_CAP_VENDOR_ID:
|
||||||
return 0x1af4;
|
return 0x1af4;
|
||||||
|
@@ -760,6 +760,7 @@ enum pipe_cap
|
|||||||
PIPE_CAP_TGSI_CLOCK,
|
PIPE_CAP_TGSI_CLOCK,
|
||||||
PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE,
|
PIPE_CAP_POLYGON_MODE_FILL_RECTANGLE,
|
||||||
PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE,
|
PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE,
|
||||||
|
PIPE_CAP_TGSI_BALLOT,
|
||||||
};
|
};
|
||||||
|
|
||||||
#define PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE_NV50 (1 << 0)
|
#define PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE_NV50 (1 << 0)
|
||||||
|
Reference in New Issue
Block a user