mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-21 14:20:29 +01:00
anv: fixup 32bit build of internal shaders
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes:11b4c23d19("anv: add ring buffer mode to generated draw optimization") Fixes:db335d9b73("anv: factor out host/gpu internal shaders interfaces") Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10037 Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25870>
This commit is contained in:
parent
471942e06b
commit
3de5da7a5d
2 changed files with 14 additions and 13 deletions
|
|
@ -26,12 +26,9 @@
|
|||
|
||||
#include "shaders/interface.h"
|
||||
|
||||
struct anv_generated_indirect_params {
|
||||
struct PACKED anv_generated_indirect_params {
|
||||
struct anv_generated_indirect_draw_params draw;
|
||||
|
||||
/* Draw count value for non count variants of draw indirect commands */
|
||||
uint32_t draw_count;
|
||||
|
||||
/* Global address of binding 0 */
|
||||
uint64_t indirect_data_addr;
|
||||
|
||||
|
|
@ -44,6 +41,9 @@ struct anv_generated_indirect_params {
|
|||
/* Global address of binding 3 (points to the draw_count field above) */
|
||||
uint64_t draw_count_addr;
|
||||
|
||||
/* Draw count value for non count variants of draw indirect commands */
|
||||
uint32_t draw_count;
|
||||
|
||||
/* CPU side pointer to the previous item when number of draws has to be
|
||||
* split into smaller chunks, see while loop in
|
||||
* genX(cmd_buffer_emit_indirect_generated_draws)
|
||||
|
|
@ -51,7 +51,7 @@ struct anv_generated_indirect_params {
|
|||
struct anv_generated_indirect_params *prev;
|
||||
};
|
||||
|
||||
struct anv_query_copy_params {
|
||||
struct PACKED anv_query_copy_params {
|
||||
struct anv_query_copy_shader_params copy;
|
||||
|
||||
uint64_t query_data_addr;
|
||||
|
|
@ -63,12 +63,12 @@ struct anv_query_copy_params {
|
|||
*
|
||||
* layout(set = 0, binding = 2) uniform block
|
||||
*/
|
||||
struct anv_memcpy_shader_params {
|
||||
struct PACKED anv_memcpy_shader_params {
|
||||
uint32_t num_dwords;
|
||||
uint32_t pad;
|
||||
};
|
||||
|
||||
struct anv_memcpy_params {
|
||||
struct PACKED anv_memcpy_params {
|
||||
struct anv_memcpy_shader_params copy;
|
||||
|
||||
uint64_t src_addr;
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
#define BITFIELD_BIT(i) (1u << i)
|
||||
|
||||
#define uint32_t uint
|
||||
#define PACKED
|
||||
#else
|
||||
#include "util/macros.h"
|
||||
|
||||
|
|
@ -47,7 +48,7 @@
|
|||
/* Whether the generation shader writes to the ring buffer */
|
||||
#define ANV_GENERATED_FLAG_RING_MODE BITFIELD_BIT(5)
|
||||
|
||||
struct anv_generated_indirect_draw_params {
|
||||
struct PACKED anv_generated_indirect_draw_params {
|
||||
/* Draw ID buffer address (only used on Gfx9) */
|
||||
uint64_t draw_id_addr;
|
||||
/* Indirect data buffer address (only used on Gfx9) */
|
||||
|
|
@ -63,6 +64,10 @@ struct anv_generated_indirect_draw_params {
|
|||
* an indirect count)
|
||||
*/
|
||||
uint32_t max_draw_count;
|
||||
/* Number of draws to generate in the ring buffer (only useful in ring
|
||||
* buffer mode)
|
||||
*/
|
||||
uint32_t ring_count;
|
||||
/* Instance multiplier for multi view */
|
||||
uint32_t instance_multiplier;
|
||||
/* Address where to jump at to generate further draws (used with ring mode)
|
||||
|
|
@ -72,10 +77,6 @@ struct anv_generated_indirect_draw_params {
|
|||
* indirect draw count variants)
|
||||
*/
|
||||
uint64_t end_addr;
|
||||
/* Number of draws to generate in the ring buffer (only useful in ring
|
||||
* buffer mode)
|
||||
*/
|
||||
uint32_t ring_count;
|
||||
};
|
||||
|
||||
#define ANV_COPY_QUERY_FLAG_RESULT64 BITFIELD_BIT(0)
|
||||
|
|
@ -87,7 +88,7 @@ struct anv_generated_indirect_draw_params {
|
|||
*
|
||||
* layout(set = 0, binding = 2) uniform block
|
||||
*/
|
||||
struct anv_query_copy_shader_params {
|
||||
struct PACKED anv_query_copy_shader_params {
|
||||
/* ANV_COPY_QUERY_FLAG_* flags */
|
||||
uint32_t flags;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue