gallivm/gs_iface: pass stream into end primitive interface.
authorDave Airlie <airlied@redhat.com>
Fri, 19 Jun 2020 05:02:25 +0000 (15:02 +1000)
committerDave Airlie <airlied@redhat.com>
Tue, 7 Jul 2020 20:06:05 +0000 (06:06 +1000)
This is just an API change for now

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5555>

src/gallium/auxiliary/draw/draw_llvm.c
src/gallium/auxiliary/gallivm/lp_bld_nir_soa.c
src/gallium/auxiliary/gallivm/lp_bld_tgsi.h
src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
src/gallium/drivers/swr/swr_shader.cpp

index 529b1b7f0c33525c20cb53bc4f4166c7c9906be3..49abd6434c772dd5d5f083e287af8f96dbc86ace 100644 (file)
@@ -1828,7 +1828,7 @@ draw_gs_llvm_end_primitive(const struct lp_build_gs_iface *gs_base,
                            LLVMValueRef total_emitted_vertices_vec_ptr,
                            LLVMValueRef verts_per_prim_vec,
                            LLVMValueRef emitted_prims_vec,
-                           LLVMValueRef mask_vec)
+                           LLVMValueRef mask_vec, unsigned stream)
 {
    const struct draw_gs_llvm_iface *gs_iface = draw_gs_llvm_iface(gs_base);
    struct draw_gs_llvm_variant *variant = gs_iface->variant;
index c6119c509f8f3ebdd3bfde5a7f207b0279f94f30..a8b7d0dd86e2d5f5608c702136b3e393e8178d02 100644 (file)
@@ -1633,7 +1633,7 @@ end_primitive_masked(struct lp_build_nir_context * bld_base,
    if (stream_id == 0)
       bld->gs_iface->end_primitive(bld->gs_iface, &bld->bld_base.base,
                                    total_emitted_vertices_vec,
-                                   emitted_vertices_vec, emitted_prims_vec, mask);
+                                   emitted_vertices_vec, emitted_prims_vec, mask, 0);
    increment_vec_ptr_by_mask(bld_base, bld->emitted_prims_vec_ptr[stream_id],
                              mask);
    clear_uint_vec_ptr_from_mask(bld_base, bld->emitted_vertices_vec_ptr[stream_id],
index 4333e6d8e94a4f281b4701a3748d1f3c8147bd44..42a01ec6a7701280182101ed830a79df0048e09d 100644 (file)
@@ -435,7 +435,7 @@ struct lp_build_gs_iface
                          LLVMValueRef total_emitted_vertices_vec,
                          LLVMValueRef verts_per_prim_vec,
                          LLVMValueRef emitted_prims_vec,
-                         LLVMValueRef mask_vec);
+                         LLVMValueRef mask_vec, unsigned stream);
    void (*gs_epilogue)(const struct lp_build_gs_iface *gs_iface,
                        LLVMValueRef total_emitted_vertices_vec,
                        LLVMValueRef emitted_prims_vec, unsigned stream);
index f61d05fded7f8b33e0a7b8c1fb3c5e2e2584f651..9e00726b35de93e8b358862def32abea74efb6ab 100644 (file)
@@ -4014,7 +4014,7 @@ end_primitive_masked(struct lp_build_tgsi_context * bld_base,
                                    total_emitted_vertices_vec,
                                    emitted_vertices_vec,
                                    emitted_prims_vec,
-                                   mask_vec(bld_base));
+                                   mask_vec(bld_base), 0);
 
 #if DUMP_GS_EMITS
       lp_build_print_value(bld->bld_base.base.gallivm,
index ab8b00a5d96dc6389e4469e410bf2415b9634d43..ea3701346aaf9def67d99feb5b07a660f12a6d01 100644 (file)
@@ -520,7 +520,7 @@ swr_gs_llvm_end_primitive(const struct lp_build_gs_iface *gs_base,
                              LLVMValueRef total_emitted_vertices_vec_ptr,
                              LLVMValueRef verts_per_prim_vec,
                              LLVMValueRef emitted_prims_vec,
-                             LLVMValueRef mask_vec)
+                             LLVMValueRef mask_vec, unsigned stream_id)
 {
     swr_gs_llvm_iface *iface = (swr_gs_llvm_iface*)gs_base;