Use memcpy directly in the common code
This alleviates the need for an additional symbol.
This commit is contained in:
@@ -676,19 +676,3 @@ void r600InitCmdBuf(context_t *r600) /* from rcommonInitCmdBuf */
|
||||
}
|
||||
}
|
||||
|
||||
void r600_sw_blit(char *srcp, int src_pitch, char *dstp, int dst_pitch,
|
||||
int x, int y, int w, int h, int cpp)
|
||||
{
|
||||
char *src = srcp;
|
||||
char *dst = dstp;
|
||||
|
||||
src += (y * src_pitch) + (x * cpp);
|
||||
dst += (y * dst_pitch) + (x * cpp);
|
||||
|
||||
while (h--) {
|
||||
memcpy(dst, src, w * cpp);
|
||||
src += src_pitch;
|
||||
dst += dst_pitch;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -618,7 +618,7 @@ static int bo_vram_validate(struct radeon_bo *bo,
|
||||
(bo_legacy->offset - boml->fb_location);
|
||||
|
||||
/* FIXME: alignment, pitch, etc. */
|
||||
r600_sw_blit(src, 0, dst, 0, 0, 0, 1, 1, bo->size);
|
||||
memcpy(dst, src, bo->size);
|
||||
} else {
|
||||
/* Copy to VRAM using a blit.
|
||||
* All memory is 4K aligned. We're using 1024 pixels wide blits.
|
||||
|
||||
@@ -476,8 +476,9 @@ void radeonCopyBuffer( __DRIdrawablePrivate *dPriv,
|
||||
continue;
|
||||
|
||||
if (IS_R600_CLASS(rmesa->radeonScreen)) {
|
||||
int src_pitch = rmesa->radeonScreen->backPitch * rmesa->radeonScreen->cpp;
|
||||
int dst_pitch = rmesa->radeonScreen->frontPitch * rmesa->radeonScreen->cpp;
|
||||
int cpp = rmesa->radeonScreen->cpp;
|
||||
int src_pitch = rmesa->radeonScreen->backPitch * cpp;
|
||||
int dst_pitch = rmesa->radeonScreen->frontPitch * cpp;
|
||||
char *src = (char *)rmesa->radeonScreen->driScreen->pFB + rmesa->radeonScreen->backOffset;
|
||||
char *dst = (char *)rmesa->radeonScreen->driScreen->pFB + rmesa->radeonScreen->frontOffset;
|
||||
int j;
|
||||
@@ -489,7 +490,14 @@ void radeonCopyBuffer( __DRIdrawablePrivate *dPriv,
|
||||
int w = pb[j].x2 - x;
|
||||
int h = pb[j].y2 - y;
|
||||
|
||||
r600_sw_blit(src, src_pitch, dst, dst_pitch, x, y, w, h, rmesa->radeonScreen->cpp);
|
||||
src += (y * src_pitch) + (x * cpp);
|
||||
dst += (y * dst_pitch) + (x * cpp);
|
||||
|
||||
while (h--) {
|
||||
memcpy(dst, src, w * cpp);
|
||||
src += src_pitch;
|
||||
dst += dst_pitch;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user