vlc | branch: master | Steve Lhomme <[email protected]> | Thu Jul 28 14:45:39 2016 +0200| [1bea49c20dfff725bf238f336c7b9d8c82d7408d] | committer: Jean-Baptiste Kempf
copy: do one big memcpy when possible > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1bea49c20dfff725bf238f336c7b9d8c82d7408d --- modules/video_chroma/copy.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/modules/video_chroma/copy.c b/modules/video_chroma/copy.c index cdeb96c..fa0a212 100644 --- a/modules/video_chroma/copy.c +++ b/modules/video_chroma/copy.c @@ -270,6 +270,9 @@ static void SSE_CopyPlane(uint8_t *dst, size_t dst_pitch, const unsigned hstep = cache_size / w16; assert(hstep > 0); + if (src_pitch == dst_pitch) + memcpy(dst, src, width * height); + else for (unsigned y = 0; y < height; y += hstep) { const unsigned hblock = __MIN(hstep, height - y); @@ -407,6 +410,9 @@ static void CopyPlane(uint8_t *dst, size_t dst_pitch, const uint8_t *src, size_t src_pitch, unsigned width, unsigned height) { + if (src_pitch == dst_pitch) + memcpy(dst, src, width * height); + else for (unsigned y = 0; y < height; y++) { memcpy(dst, src, width); src += src_pitch; _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
