<div style="line-height:1.7;color:#000000;font-size:14px;font-family:arial"><DIV>This version is right<BR><BR>At 2013-11-18 21:45:41,praveen@multicorewareinc.com wrote:<BR>># HG changeset patch<BR>># User Praveen Tiwari<BR>># Date 1384782332 -19800<BR>># Node ID 68d8ca28ac05b93accc6931abd576a56b621a492<BR>># Parent  024d6ddf57596b6f77100b3bdcac555ddbec7c0a<BR>>TComYuv::copyPartToPartYuv, blockcopy_pp asm integration<BR>><BR>>diff -r 024d6ddf5759 -r 68d8ca28ac05 source/Lib/TLibCommon/TComYuv.cpp<BR>>--- a/source/Lib/TLibCommon/TComYuv.cpp       Mon Nov 18 18:44:32 2013 +0530<BR>>+++ b/source/Lib/TLibCommon/TComYuv.cpp       Mon Nov 18 19:15:32 2013 +0530<BR>>@@ -246,10 +246,12 @@<BR>> <BR>> void TComYuv::copyPartToPartYuv(TComYuv* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height, bool bLuma, bool bChroma)<BR>> {<BR>>+    int part = partitionFromSizes(width, height);<BR>>+<BR>>     if (bLuma)<BR>>-        copyPartToPartLuma(dstPicYuv, partIdx, width, height);<BR>>+        copyPartToPartLuma(dstPicYuv, partIdx, part);<BR>>     if (bChroma)<BR>>-        copyPartToPartChroma(dstPicYuv, partIdx, width >> m_hChromaShift, height >> m_vChromaShift);<BR>>+        copyPartToPartChroma(dstPicYuv, partIdx, part);<BR>> }<BR>> <BR>> void TComYuv::copyPartToPartYuv(TShortYUV* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height, bool bLuma, bool bChroma)<BR>>@@ -260,7 +262,7 @@<BR>>         copyPartToPartChroma(dstPicYuv, partIdx, width >> m_hChromaShift, height >> m_vChromaShift);<BR>> }<BR>> <BR>>-void TComYuv::copyPartToPartLuma(TComYuv* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height)<BR>>+void TComYuv::copyPartToPartLuma(TComYuv* dstPicYuv, uint32_t partIdx, uint32_t part)<BR>> {<BR>>     Pel* src = getLumaAddr(partIdx);<BR>>     Pel* dst = dstPicYuv->getLumaAddr(partIdx);<BR>>@@ -270,7 +272,6 @@<BR>>     uint32_t srcstride = getStride();<BR>>     uint32_t dststride = dstPicYuv->getStride();<BR>> <BR>>-    int part = partitionFromSizes(width, height);<BR>>     primitives.luma_copy_pp[part](dst, dststride, src, srcstride);<BR>> }<BR>> <BR>>@@ -286,7 +287,7 @@<BR>>     primitives.luma_copy_ps[part](dst, dststride, src, srcstride);<BR>> }<BR>> <BR>>-void TComYuv::copyPartToPartChroma(TComYuv* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height)<BR>>+void TComYuv::copyPartToPartChroma(TComYuv* dstPicYuv, uint32_t partIdx, uint32_t part)<BR>> {<BR>>     Pel* srcU = getCbAddr(partIdx);<BR>>     Pel* srcV = getCrAddr(partIdx);<BR>>@@ -298,8 +299,8 @@<BR>>     uint32_t srcstride = getCStride();<BR>>     uint32_t dststride = dstPicYuv->getCStride();<BR>> <BR>>-    primitives.blockcpy_pp(width, height, dstU, dststride, srcU, srcstride);<BR>>-    primitives.blockcpy_pp(width, height, dstV, dststride, srcV, srcstride);<BR>>+    primitives.chroma_copy_pp[m_csp][part](dstU, dststride, srcU, srcstride);<BR>>+    primitives.chroma_copy_pp[m_csp][part](dstV, dststride, srcV, srcstride);<BR>> }<BR>> <BR>> void TComYuv::copyPartToPartChroma(TShortYUV* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height)<BR>>diff -r 024d6ddf5759 -r 68d8ca28ac05 source/Lib/TLibCommon/TComYuv.h<BR>>--- a/source/Lib/TLibCommon/TComYuv.h       Mon Nov 18 18:44:32 2013 +0530<BR>>+++ b/source/Lib/TLibCommon/TComYuv.h Mon Nov 18 19:15:32 2013 +0530<BR>>@@ -139,9 +139,9 @@<BR>>     //  Copy YUV partition buffer to other YUV partition buffer<BR>>     void    copyPartToPartYuv(TComYuv* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height, bool bLuma = true, bool bChroma = true);<BR>>     void    copyPartToPartYuv(TShortYUV* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height, bool bLuma = true, bool bChroma = true);<BR>>-    void    copyPartToPartLuma(TComYuv* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height);<BR>>+    void    copyPartToPartLuma(TComYuv* dstPicYuv, uint32_t partIdx, uint32_t part);<BR>>     void    copyPartToPartLuma(TShortYUV* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height);<BR>>-    void    copyPartToPartChroma(TComYuv* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height);<BR>>+    void    copyPartToPartChroma(TComYuv* dstPicYuv, uint32_t partIdx, uint32_t part);<BR>>     void    copyPartToPartChroma(TShortYUV* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height);<BR>> <BR>>     void    copyPartToPartChroma(TComYuv* dstPicYuv, uint32_t partIdx, uint32_t width, uint32_t height, uint32_t chromaId);<BR>>_______________________________________________<BR>>x265-devel mailing list<BR>>x265-devel@videolan.org<BR>>https://mailman.videolan.org/listinfo/x265-devel<BR></DIV></div>