summaryrefslogtreecommitdiff
path: root/src/r600_state.h
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2010-04-01 10:45:52 +1000
committerDave Airlie <airlied@redhat.com>2010-04-01 12:37:04 +1000
commit478319e55d52fce241d040912fea952071e3b742 (patch)
tree7ad27bb6d5fd2993836950f7a04288d9664d8d92 /src/r600_state.h
parentbc93395b3eb5e3511c1b62af90693269f4fa6e13 (diff)
r600: reduce function call overhead.
Create a small accel object that can be used to reduce the amount of parameters passed to SetAccelState. This can be cleaned up a lot more. Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'src/r600_state.h')
-rw-r--r--src/r600_state.h22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/r600_state.h b/src/r600_state.h
index 837e2f5e..1b0c03f3 100644
--- a/src/r600_state.h
+++ b/src/r600_state.h
@@ -328,17 +328,21 @@ int
r600_cp_start(ScrnInfoPtr pScrn);
void r600_finish_op(ScrnInfoPtr pScrn, int vtx_size);
+struct accel_object {
+ uint32_t pitch;
+ uint32_t width;
+ uint32_t height;
+ uint32_t offset;
+ int bpp;
+ uint32_t domain;
+ struct radeon_bo *bo;
+};
+
Bool
R600SetAccelState(ScrnInfoPtr pScrn,
- int src_pitch0, int src_width0, int src_height0,
- uint32_t src_offset0, struct radeon_bo *src_bo0, int src_bpp0,
- uint32_t src_domain0,
- int src_pitch1, int src_width1, int src_height1,
- uint32_t src_offset1, struct radeon_bo *src_bo1, int src_bpp1,
- uint32_t src_domain1,
- int dst_pitch, int dst_width, int dst_height,
- uint32_t dst_offset, struct radeon_bo *dst_bo, int dst_bpp,
- uint32_t dst_domain,
+ struct accel_object *src0,
+ struct accel_object *src1,
+ struct accel_object *dst,
uint32_t vs_offset, uint32_t ps_offset,
int rop, Pixel planemask);