Assembly optimized 4 blittering related functions:

S32A_D565_Opaque
S32A_Opaque_BlitRow32
nofilter_gether
S32A_Blend_BlitRow32

* S32A_D565_Opaque:

Use neon instructions to optimize BLIT routine which operates on
32-bit source ARGB pixel and 16-bit destination RGB pixel. Here,
we process 16-pixels in an iteration. We use regular (32-bit)
arm instructions when number of pixels is less than 16 or the
architecture doesn't support SIMD/NEON instructions. When alpha
value is 255, this version of BLIT routine performs 35% better
in comparison to S32A_D565_Opaque_neon routine.

* S32A_Opaque_BlitRow32 and nofilter_gether:

Use neon instructions to optimize BlitRow32 and nofilter_gether
functions for 32-bit source and destination pixel arrays. An improvement
of 76% is observed with neon optimized BlitRow32 function and 6%
improvement is observed with nofilter_gether function.

* S32A_Blend_BlitRow32:

Optimize S32A_Blend_BlitRow32 using neon instructions for armv7
based targets and using regular arm instructions for armv6 based
targets.

This is the consolidated commit from several patches.

Change-Id: Id5aab49656247b9a69b43cfb22fe7a8608f847e5
Apply PLD to blittering functions

Extend software pipelining for S32A_Blending to process 16 points
perloop and per-read points of next loop

Change-Id: Ib7a6a6efb8249b96578e75613683099251dc2a82