• fbarchard@google.com's avatar
    Change rectangle low level functions to use more conventional row functions… · b2a6af1b
    fbarchard@google.com authored
    Change rectangle low level functions to use more conventional row functions including 'any' variations.  Previously the yuv function SetPlane stored 32 bit values. Now a more conventional memset() style function is used for YUV that stores bytes.  On Haswell a rep stosb is used for YUV.  Overall benefit of this CL is improved performance for 'any' width, and simpler row assembly instead of full image assembly.  Previously ARGBRect used a low level function that supported a rectangle in assembly.  Now it uses a row function, and relies on row coalesce to combine into a single low level call.
    BUG=371
    TESTED=untested
    R=brucedawson@google.com, harryjin@google.com
    
    Review URL: https://webrtc-codereview.appspot.com/35689004
    
    git-svn-id: http://libyuv.googlecode.com/svn/trunk@1222 16f28f9a-4ce2-e073-06de-1de4eb20be90
    b2a6af1b
planar_functions.cc 68 KB