mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 13:10:10 +01:00
i965/gen6: Add state dumping for the VS constants.
This is quite a bit of spam, but I think it's useful to have in a full INTEL_DEBUG=batch dump. And a lot of this spam on glxgears is just because we're awful at handling our constants :/ Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
parent
6e17a01e42
commit
a1226bcd20
3 changed files with 22 additions and 1 deletions
|
|
@ -211,6 +211,7 @@ enum state_struct_type {
|
|||
AUB_TRACE_NO_TYPE = 0x100,
|
||||
AUB_TRACE_BINDING_TABLE = 0x101,
|
||||
AUB_TRACE_SURFACE_STATE = 0x102,
|
||||
AUB_TRACE_VS_CONSTANTS = 0x103,
|
||||
};
|
||||
|
||||
/** Subclass of Mesa vertex program */
|
||||
|
|
|
|||
|
|
@ -367,6 +367,23 @@ dump_scissor(struct brw_context *brw, uint32_t offset)
|
|||
scissor->xmax, scissor->ymax);
|
||||
}
|
||||
|
||||
static void
|
||||
dump_vs_constants(struct brw_context *brw, uint32_t offset, uint32_t size)
|
||||
{
|
||||
const char *name = "VS_CONST";
|
||||
struct intel_context *intel = &brw->intel;
|
||||
uint32_t *as_uint = intel->batch.bo->virtual + offset;
|
||||
float *as_float = intel->batch.bo->virtual + offset;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < size / 4; i += 4) {
|
||||
batch_out(brw, name, offset, i, "%3d: (% f % f % f % f) (0x%08x 0x%08x 0x%08x 0x%08x)\n",
|
||||
i / 4,
|
||||
as_float[i], as_float[i + 1], as_float[i + 2], as_float[i + 3],
|
||||
as_uint[i], as_uint[i + 1], as_uint[i + 2], as_uint[i + 3]);
|
||||
}
|
||||
}
|
||||
|
||||
static void dump_binding_table(struct brw_context *brw, uint32_t offset,
|
||||
uint32_t size)
|
||||
{
|
||||
|
|
@ -493,6 +510,9 @@ dump_state_batch(struct brw_context *brw)
|
|||
case AUB_TRACE_SCISSOR_STATE:
|
||||
dump_scissor(brw, offset);
|
||||
break;
|
||||
case AUB_TRACE_VS_CONSTANTS:
|
||||
dump_vs_constants(brw, offset, size);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ gen6_prepare_vs_push_constants(struct brw_context *brw)
|
|||
float *param;
|
||||
int i;
|
||||
|
||||
param = brw_state_batch(brw, AUB_TRACE_NO_TYPE,
|
||||
param = brw_state_batch(brw, AUB_TRACE_VS_CONSTANTS,
|
||||
(MAX_CLIP_PLANES + nr_params) *
|
||||
4 * sizeof(float),
|
||||
32, &brw->vs.push_const_offset);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue