Full range motion search for regular block sizes

Add a full range motion search for regular block sizes. This runs
exhaustive search within the given reference area. This commit further
optimizes the search process by combining 4 points test into one
pipeline, which gives 30% speed-up as compared to run each individual
point at a time.

This full range search serves as a best possible motion search reference.
When replacing the diamond search with full range search, the speed 0
runtime of bus CIF at 2000 kbps goes from 153872ms to 623051ms. The
compression performance compared to speed 0 setting gains 0.585% for
derf set.

Change-Id: Ieef1225216b0b86b4ac4872fa7fb9e18bf2eabb3
Clean-ups in diamond_search_sad

Use the pre-fetched stride value.

Change-Id: I8d4aaedab7a83a4870be51c110da27e55ca3bc85
Renaming vp9_get_pred_context_tx_size() function.

Change-Id: Ia6d6f4dfb1fd1ec0f8ba53796b59a802e9d7881d
Remove some dead code

Change-Id: I0953a3b28758811f9d6a85787850e77592bd7670
Further clean up of estimate_max_q.

Clean up and simplification of both estimate_max_q
variants and only call once per clip/section.

This leads to a more constrained range of Q values
across a clip / section.

Average gains across all 4 test sets:-

PSNR ~0.5%  SSIM ~0.3%

Change-Id: If77d5f7bb50939a464e117724f4da5b001c62d70
Add include guards to setupintrarecon.h and vpx_once.h

Change-Id: Ife17fc6369ce32f36d5c7f8a2ef5a3b7724d81b9
Removing max_uv_txsize_lookup lookup table.

Adding get_uv_tx_size_impl() with tx size selection logic, rewriting
get_uv_tx_size().

Change-Id: I3ecb108059a41be227a8c89a0710bd174f508951
Cleaning up read_inter_block_mode_info() function.

Change-Id: Ib4e215a80f00e342d857a54a4ca1b2dc82b6db1d
Merge "Renaming vp9_get_pred_context_tx_size() function."
Renaming comp_pred_mode to reference_mode.

Change-Id: I83ffed2b1878a35ac35f07f9ee74309adc9c7b11
Merge "Further clean up of estimate_max_q."
Merge "Full range motion search for regular block sizes"
Merge "Clean-ups in diamond_search_sad"
Implenment on demand border extension. In place extend
the border now. Next commit will totally remove the border.

Change-Id: Ic1e1ca9cc34f81c688715b3948689b47df63a151
Cleaning up vp9_get_pred_context_switchable_interp() functuion.

Change-Id: I67a45a41312ca0efd8fe00ccd8bdc0f97675d09f
Merge "Implenment on demand border extension. In place extend the border now. Next commit will totally remove the border."
Merge "Add include guards to setupintrarecon.h and vpx_once.h"
Merge "Cleaning up vp9_get_pred_context_switchable_interp() functuion."
avoid crash when using --best on cpus with SSE3 (but not SSE4) support

Change-Id: Ie100114a01b8b4da7248603c40676792cd06b32a
Refactor inter_predictor function.

Change-Id: Ic429b2f16462e926f30efb3af4da3080026359d8