/**************************************************************************
*
- * Copyright 2007 VMware, Inc.
+ * Copyright 2007-2023 VMware, Inc.
* All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
unsigned elt,
unsigned start_instance,
unsigned instance_id,
- void *vert)
+ void *vert,
+ unsigned index_size)
{
unsigned nr_attrs = tg->nr_attrib;
unsigned attr;
}
else {
index = elt;
- /* clamp to avoid going out of bounds */
- index = MIN2(index, tg->attrib[attr].max_index);
+ if (index_size > 0) {
+ /* clamp to avoid going out of bounds */
+ index = MIN2(index, tg->attrib[attr].max_index);
+ }
}
src = tg->attrib[attr].input_ptr +
unsigned i;
for (i = 0; i < count; i++) {
- generic_run_one(tg, *elts++, start_instance, instance_id, vert);
+ generic_run_one(tg, *elts++, start_instance, instance_id, vert, 4);
vert += tg->translate.key.output_stride;
}
}
unsigned i;
for (i = 0; i < count; i++) {
- generic_run_one(tg, *elts++, start_instance, instance_id, vert);
+ generic_run_one(tg, *elts++, start_instance, instance_id, vert, 2);
vert += tg->translate.key.output_stride;
}
}
unsigned i;
for (i = 0; i < count; i++) {
- generic_run_one(tg, *elts++, start_instance, instance_id, vert);
+ generic_run_one(tg, *elts++, start_instance, instance_id, vert, 1);
vert += tg->translate.key.output_stride;
}
}
unsigned i;
for (i = 0; i < count; i++) {
- generic_run_one(tg, start + i, start_instance, instance_id, vert);
+ generic_run_one(tg, start + i, start_instance, instance_id, vert, 0);
vert += tg->translate.key.output_stride;
}
}