Mesa (main): mesa/st: Clean up a bit of st_prepare_vertex_program().

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu May 5 23:11:15 UTC 2022


Module: Mesa
Branch: main
Commit: 74056f635887ebcc9d24a67d9b2182dfef022bac
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=74056f635887ebcc9d24a67d9b2182dfef022bac

Author: Emma Anholt <emma at anholt.net>
Date:   Fri Apr  8 16:48:16 2022 -0700

mesa/st: Clean up a bit of st_prepare_vertex_program().

Now that the input attrib mapping is gone, this is simpler.

Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8044>

---

 src/mesa/state_tracker/st_program.c | 15 +++------------
 1 file changed, 3 insertions(+), 12 deletions(-)

diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c
index 29161c4d557..159658a2b8a 100644
--- a/src/mesa/state_tracker/st_program.c
+++ b/src/mesa/state_tracker/st_program.c
@@ -425,20 +425,11 @@ st_prepare_vertex_program(struct gl_program *prog)
 {
    struct gl_vertex_program *stvp = (struct gl_vertex_program *)prog;
 
-   stvp->num_inputs = 0;
-   stvp->vert_attrib_mask = 0;
-   memset(stvp->result_to_output, ~0, sizeof(stvp->result_to_output));
-
-   /* Determine number of inputs and input attrib semantic info.
-    */
-   for (unsigned attr = 0; attr < VERT_ATTRIB_MAX; attr++) {
-      if ((prog->info.inputs_read & BITFIELD64_BIT(attr)) != 0) {
-         stvp->vert_attrib_mask |= BITFIELD_BIT(attr);
-         stvp->num_inputs++;
-      }
-   }
+   stvp->num_inputs = util_bitcount64(prog->info.inputs_read);
+   stvp->vert_attrib_mask = prog->info.inputs_read;
 
    /* Compute mapping of vertex program outputs to slots. */
+   memset(stvp->result_to_output, ~0, sizeof(stvp->result_to_output));
    unsigned num_outputs = 0;
    for (unsigned attr = 0; attr < VARYING_SLOT_MAX; attr++) {
       if (prog->info.outputs_written & BITFIELD64_BIT(attr))



More information about the mesa-commit mailing list