mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-28 14:00:30 +01:00
r300: Cleaned up the AOS code in r300_render.c.
This commit is contained in:
parent
b8813572ae
commit
7c893e98a3
1 changed files with 14 additions and 21 deletions
|
|
@ -221,12 +221,9 @@ static void r300FireEB(r300ContextPtr rmesa, unsigned long addr,
|
|||
|
||||
start_packet3(RADEON_CP_PACKET3_3D_DRAW_INDX_2, 0);
|
||||
if (elt_size == 4) {
|
||||
e32(R300_VAP_VF_CNTL__PRIM_WALK_INDICES |
|
||||
(vertex_count << 16) | type |
|
||||
R300_VAP_VF_CNTL__INDEX_SIZE_32bit);
|
||||
e32(R300_VAP_VF_CNTL__PRIM_WALK_INDICES | (vertex_count << 16) | type | R300_VAP_VF_CNTL__INDEX_SIZE_32bit);
|
||||
} else {
|
||||
e32(R300_VAP_VF_CNTL__PRIM_WALK_INDICES |
|
||||
(vertex_count << 16) | type);
|
||||
e32(R300_VAP_VF_CNTL__PRIM_WALK_INDICES | (vertex_count << 16) | type);
|
||||
}
|
||||
|
||||
start_packet3(RADEON_CP_PACKET3_INDX_BUFFER, 2);
|
||||
|
|
@ -268,24 +265,21 @@ static void r300EmitAOS(r300ContextPtr rmesa, GLuint nr, GLuint offset)
|
|||
|
||||
start_packet3(RADEON_CP_PACKET3_3D_LOAD_VBPNTR, sz - 1);
|
||||
e32(nr);
|
||||
|
||||
for (i = 0; i + 1 < nr; i += 2) {
|
||||
e32((rmesa->state.aos[i].aos_size << 0)
|
||||
| (rmesa->state.aos[i].aos_stride << 8)
|
||||
| (rmesa->state.aos[i + 1].aos_size << 16)
|
||||
| (rmesa->state.aos[i + 1].aos_stride << 24)
|
||||
);
|
||||
e32(rmesa->state.aos[i].aos_offset +
|
||||
offset * 4 * rmesa->state.aos[i].aos_stride);
|
||||
e32(rmesa->state.aos[i + 1].aos_offset +
|
||||
offset * 4 * rmesa->state.aos[i + 1].aos_stride);
|
||||
e32((rmesa->state.aos[i].aos_size << 0) |
|
||||
(rmesa->state.aos[i].aos_stride << 8) |
|
||||
(rmesa->state.aos[i + 1].aos_size << 16) |
|
||||
(rmesa->state.aos[i + 1].aos_stride << 24));
|
||||
|
||||
e32(rmesa->state.aos[i].aos_offset + offset * 4 * rmesa->state.aos[i].aos_stride);
|
||||
e32(rmesa->state.aos[i + 1].aos_offset + offset * 4 * rmesa->state.aos[i + 1].aos_stride);
|
||||
}
|
||||
|
||||
if (nr & 1) {
|
||||
e32((rmesa->state.aos[nr - 1].aos_size << 0)
|
||||
| (rmesa->state.aos[nr - 1].aos_stride << 8)
|
||||
);
|
||||
e32(rmesa->state.aos[nr - 1].aos_offset +
|
||||
offset * 4 * rmesa->state.aos[nr - 1].aos_stride);
|
||||
e32((rmesa->state.aos[nr - 1].aos_size << 0) |
|
||||
(rmesa->state.aos[nr - 1].aos_stride << 8));
|
||||
e32(rmesa->state.aos[nr - 1].aos_offset + offset * 4 * rmesa->state.aos[nr - 1].aos_stride);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -296,8 +290,7 @@ static void r300FireAOS(r300ContextPtr rmesa, int vertex_count, int type)
|
|||
drm_radeon_cmd_header_t *cmd = NULL;
|
||||
|
||||
start_packet3(RADEON_CP_PACKET3_3D_DRAW_VBUF_2, 0);
|
||||
e32(R300_VAP_VF_CNTL__PRIM_WALK_VERTEX_LIST | (vertex_count << 16)
|
||||
| type);
|
||||
e32(R300_VAP_VF_CNTL__PRIM_WALK_VERTEX_LIST | (vertex_count << 16) | type);
|
||||
}
|
||||
|
||||
static void r300RunRenderPrimitive(r300ContextPtr rmesa, GLcontext * ctx,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue