Add miscompilation check for x264_clz
Running a Phenom-optimized build of x264 (e.g. -march=amdfam10) on a non-Phenom CPU didn't SIGILL; instead it would silently produce incorrect output.
Now, instead, it will error out loudly.
Add faster mv0 special case for macroblock-tree
Improves performance on low-motion video.
Cosmetics: VLC tables
Special case in qpel refine for subme=1
~15-20% faster qpel refine with subme=1.
Some minor cleanups in refine_supel.
Faster mv predictor checking at subme < 3
Simplify the predicted MV cost check.
Make keyint_min auto by default
Gives more reasonable default settings when using short GOPs.
Fix a use of sad_x4 that had non-mod64 stride
Minimal speed improvement, but fixes a violation of internal api.
Set psy=0 in lossless mode
Doesn't actually affect output, just what's written in the SEI.
Make interlaced detection in avisynth only apply to field-based input
Fixes improper flagging of progressive sources.
Enable --fast-pskip on fast firstpass
Fix various early terminations with slices
Neighbouring type values (type_top, etc) are now loaded even if the MB isn't available for prediction.
Significant overall performance increase (as high as 5-10%+) with lots of slices (e.g. with slice-max-size).
Add CP128/M128 macros using SSE
Fix a ton of pessimization caused by aliasing in cache_save and cache_load
Prefetch MB data in cache_load
Dramatically reduces L1 cache misses.
~10% faster cache_load.
Move deblocking/hpel into sliced threads
Instead of doing both as a separate pass, do them during the main encode.
This requires disabling deblocking between slices (disable_deblock_idc == 2).
Overall performance gain is about 11% on --preset superfast with sliced threads.
Doesn't reduce the amount of actual computation done: only better parallelizes it.
Fix four minor bugs found by Clang
MMX code for predictor rounding/clipping
Faster predictor checking at subme < 3.
Fix issues with extremely large timebases
With timebase denominators >= 2^30 , x264 would silently overflow and cause odd issues.
Now x264 will explicitly fail with timebase denominators >= 2^31 and work with timebase denominators 2^31 > x >= 2^30.
Faster chroma CBP handling
Faster deblock reference frame checks
Use a lookup table to simplify logic