summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjohannkoenig <johannkoenig@google.com>2015-09-18 15:35:25 -0700
committerCommit bot <commit-bot@chromium.org>2015-09-18 22:35:55 +0000
commit5238138a422157576799266228c0c9ee174936ae (patch)
treea112597714c67c981610341f2415456b5f13e63d
parentbaab86ff3d07870373266e101b0cf8916d4af188 (diff)
downloadchromium_src-5238138a422157576799266228c0c9ee174936ae.zip
chromium_src-5238138a422157576799266228c0c9ee174936ae.tar.gz
chromium_src-5238138a422157576799266228c0c9ee174936ae.tar.bz2
Copy libvpx from DEPS to src
Leaves the previous version in place but updates BUILD.gn and libvpx.gn to point to the new version. This allows decoupling the WebRTC update which is also in DEPS. libvpx DEPS changes ac1772e:0d6551 https://codereview.chromium.org/1339033002 https://chromium-review.googlesource.com/299759 https://codereview.chromium.org/1350853003 https://codereview.chromium.org/1353433003 Copy directory to libvpx_new to avoid breaking bisecting. This allows the user to move between and older and newer revision. A followup to rename libvpx_new to libvpx will come in some ~months because there are additional complications if one tries to sync directly from pre-move to post-rename or the other way around. Remove WATCHLISTS and codereview.settings from _new and use the parent versions. Add DEPS file to enumerate the #include paths. Check out third_party/libvpx_new/source/libvpx directly from upstream project Update all the easy clients of libvpx to depend on the new tree directly. https://chromium.googlesource.com/chromium/deps/libvpx/+/ac1772e3db5c885b554f6a72ca9dbac4245cb0e2 BUG=481034 R=tomfinegan@chromium.org,brettw@chromium.org,phajdan.jr@chromium.org Review URL: https://codereview.chromium.org/1323333002 Cr-Commit-Position: refs/heads/master@{#349789}
-rw-r--r--.gitignore1
-rw-r--r--DEPS5
-rw-r--r--WATCHLISTS5
-rw-r--r--build/common.gypi2
-rwxr-xr-xbuild/linux/unbundle/replace_gyp_files.py2
-rw-r--r--build/sanitizers/tsan_suppressions.cc6
-rw-r--r--content/content_tests.gypi4
-rw-r--r--content/renderer/BUILD.gn2
-rw-r--r--content/renderer/media/DEPS2
-rw-r--r--content/renderer/media/video_track_recorder.cc4
-rw-r--r--content/renderer/pepper/DEPS2
-rw-r--r--content/renderer/pepper/video_encoder_shim.cc4
-rw-r--r--content/test/BUILD.gn4
-rw-r--r--media/BUILD.gn2
-rw-r--r--media/DEPS2
-rw-r--r--media/capture/video/file_video_capture_device.cc2
-rw-r--r--media/cast/BUILD.gn8
-rw-r--r--media/cast/cast.gyp8
-rw-r--r--media/cast/receiver/video_decoder.cc4
-rw-r--r--media/cast/sender/vp8_encoder.cc2
-rw-r--r--media/cast/sender/vp8_encoder.h2
-rw-r--r--media/cdm/ppapi/external_clear_key/libvpx_cdm_video_decoder.cc4
-rw-r--r--media/filters/vpx_video_decoder.cc6
-rw-r--r--media/media.gyp2
-rw-r--r--media/media_cdm.gypi2
-rw-r--r--remoting/DEPS2
-rw-r--r--remoting/base/BUILD.gn2
-rw-r--r--remoting/codec/BUILD.gn2
-rw-r--r--remoting/codec/scoped_vpx_codec.cc2
-rw-r--r--remoting/codec/video_decoder_vpx.cc4
-rw-r--r--remoting/codec/video_encoder_vpx.cc4
-rw-r--r--remoting/remoting.gyp2
-rw-r--r--remoting/remoting_nacl.gyp2
-rw-r--r--third_party/libvpx_new/BUILD.gn276
-rw-r--r--third_party/libvpx_new/DEPS7
-rw-r--r--third_party/libvpx_new/OWNERS2
-rw-r--r--third_party/libvpx_new/README.chromium57
-rw-r--r--third_party/libvpx_new/ads2gas.gypi54
-rwxr-xr-xthird_party/libvpx_new/generate_gypi.sh559
-rw-r--r--third_party/libvpx_new/include/elf.h445
-rw-r--r--third_party/libvpx_new/libvpx.gyp291
-rw-r--r--third_party/libvpx_new/libvpx_nacl.gyp33
-rw-r--r--third_party/libvpx_new/libvpx_srcs.gni3387
-rw-r--r--third_party/libvpx_new/libvpx_srcs_arm.gypi359
-rw-r--r--third_party/libvpx_new/libvpx_srcs_arm64.gypi384
-rw-r--r--third_party/libvpx_new/libvpx_srcs_arm_neon.gypi413
-rw-r--r--third_party/libvpx_new/libvpx_srcs_arm_neon_cpu_detect.gypi359
-rw-r--r--third_party/libvpx_new/libvpx_srcs_arm_neon_cpu_detect_intrinsics.gypi87
-rw-r--r--third_party/libvpx_new/libvpx_srcs_generic.gypi327
-rw-r--r--third_party/libvpx_new/libvpx_srcs_mips.gypi329
-rw-r--r--third_party/libvpx_new/libvpx_srcs_nacl.gypi327
-rw-r--r--third_party/libvpx_new/libvpx_srcs_x86.gypi388
-rw-r--r--third_party/libvpx_new/libvpx_srcs_x86_64.gypi395
-rw-r--r--third_party/libvpx_new/libvpx_srcs_x86_64_intrinsics.gypi123
-rw-r--r--third_party/libvpx_new/libvpx_srcs_x86_intrinsics.gypi123
-rwxr-xr-xthird_party/libvpx_new/lint_config.sh109
-rwxr-xr-xthird_party/libvpx_new/run_perl.py28
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vp8_rtcd.h336
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vp9_rtcd.h174
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.asm91
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_dsp_rtcd.h947
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_scale_rtcd.h71
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon/vp8_rtcd.h272
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon/vp9_rtcd.h156
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.asm91
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon/vpx_dsp_rtcd.h765
-rw-r--r--third_party/libvpx_new/source/config/linux/arm-neon/vpx_scale_rtcd.h71
-rw-r--r--third_party/libvpx_new/source/config/linux/arm/vp8_rtcd.h240
-rw-r--r--third_party/libvpx_new/source/config/linux/arm/vp9_rtcd.h147
-rw-r--r--third_party/libvpx_new/source/config/linux/arm/vpx_config.asm91
-rw-r--r--third_party/libvpx_new/source/config/linux/arm/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/linux/arm/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/linux/arm/vpx_dsp_rtcd.h674
-rw-r--r--third_party/libvpx_new/source/config/linux/arm/vpx_scale_rtcd.h71
-rw-r--r--third_party/libvpx_new/source/config/linux/arm64/vp8_rtcd.h242
-rw-r--r--third_party/libvpx_new/source/config/linux/arm64/vp9_rtcd.h156
-rw-r--r--third_party/libvpx_new/source/config/linux/arm64/vpx_config.asm91
-rw-r--r--third_party/libvpx_new/source/config/linux/arm64/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/linux/arm64/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/linux/arm64/vpx_dsp_rtcd.h750
-rw-r--r--third_party/libvpx_new/source/config/linux/arm64/vpx_scale_rtcd.h71
-rw-r--r--third_party/libvpx_new/source/config/linux/generic/vp8_rtcd.h205
-rw-r--r--third_party/libvpx_new/source/config/linux/generic/vp9_rtcd.h142
-rw-r--r--third_party/libvpx_new/source/config/linux/generic/vpx_config.asm91
-rw-r--r--third_party/libvpx_new/source/config/linux/generic/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/linux/generic/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/linux/generic/vpx_dsp_rtcd.h660
-rw-r--r--third_party/libvpx_new/source/config/linux/generic/vpx_scale_rtcd.h66
-rw-r--r--third_party/libvpx_new/source/config/linux/ia32/vp8_rtcd.h430
-rw-r--r--third_party/libvpx_new/source/config/linux/ia32/vp9_rtcd.h238
-rw-r--r--third_party/libvpx_new/source/config/linux/ia32/vpx_config.asm87
-rw-r--r--third_party/libvpx_new/source/config/linux/ia32/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/linux/ia32/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/linux/ia32/vpx_dsp_rtcd.h1383
-rw-r--r--third_party/libvpx_new/source/config/linux/ia32/vpx_scale_rtcd.h69
-rw-r--r--third_party/libvpx_new/source/config/linux/mips64el/vp8_rtcd.h208
-rw-r--r--third_party/libvpx_new/source/config/linux/mips64el/vp9_rtcd.h142
-rw-r--r--third_party/libvpx_new/source/config/linux/mips64el/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/linux/mips64el/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/linux/mips64el/vpx_dsp_rtcd.h660
-rw-r--r--third_party/libvpx_new/source/config/linux/mips64el/vpx_scale_rtcd.h66
-rw-r--r--third_party/libvpx_new/source/config/linux/mipsel/vp8_rtcd.h208
-rw-r--r--third_party/libvpx_new/source/config/linux/mipsel/vp9_rtcd.h142
-rw-r--r--third_party/libvpx_new/source/config/linux/mipsel/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/linux/mipsel/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/linux/mipsel/vpx_dsp_rtcd.h660
-rw-r--r--third_party/libvpx_new/source/config/linux/mipsel/vpx_scale_rtcd.h66
-rw-r--r--third_party/libvpx_new/source/config/linux/x64/vp8_rtcd.h325
-rw-r--r--third_party/libvpx_new/source/config/linux/x64/vp9_rtcd.h193
-rw-r--r--third_party/libvpx_new/source/config/linux/x64/vpx_config.asm87
-rw-r--r--third_party/libvpx_new/source/config/linux/x64/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/linux/x64/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/linux/x64/vpx_dsp_rtcd.h1126
-rw-r--r--third_party/libvpx_new/source/config/linux/x64/vpx_scale_rtcd.h69
-rw-r--r--third_party/libvpx_new/source/config/mac/ia32/vp8_rtcd.h430
-rw-r--r--third_party/libvpx_new/source/config/mac/ia32/vp9_rtcd.h238
-rw-r--r--third_party/libvpx_new/source/config/mac/ia32/vpx_config.asm87
-rw-r--r--third_party/libvpx_new/source/config/mac/ia32/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/mac/ia32/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/mac/ia32/vpx_dsp_rtcd.h1383
-rw-r--r--third_party/libvpx_new/source/config/mac/ia32/vpx_scale_rtcd.h69
-rw-r--r--third_party/libvpx_new/source/config/mac/x64/vp8_rtcd.h325
-rw-r--r--third_party/libvpx_new/source/config/mac/x64/vp9_rtcd.h193
-rw-r--r--third_party/libvpx_new/source/config/mac/x64/vpx_config.asm87
-rw-r--r--third_party/libvpx_new/source/config/mac/x64/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/mac/x64/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/mac/x64/vpx_dsp_rtcd.h1126
-rw-r--r--third_party/libvpx_new/source/config/mac/x64/vpx_scale_rtcd.h69
-rw-r--r--third_party/libvpx_new/source/config/nacl/vp8_rtcd.h205
-rw-r--r--third_party/libvpx_new/source/config/nacl/vp9_rtcd.h142
-rw-r--r--third_party/libvpx_new/source/config/nacl/vpx_config.asm91
-rw-r--r--third_party/libvpx_new/source/config/nacl/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/nacl/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/nacl/vpx_dsp_rtcd.h660
-rw-r--r--third_party/libvpx_new/source/config/nacl/vpx_scale_rtcd.h66
-rw-r--r--third_party/libvpx_new/source/config/vpx_version.h7
-rw-r--r--third_party/libvpx_new/source/config/win/ia32/vp8_rtcd.h430
-rw-r--r--third_party/libvpx_new/source/config/win/ia32/vp9_rtcd.h238
-rw-r--r--third_party/libvpx_new/source/config/win/ia32/vpx_config.asm87
-rw-r--r--third_party/libvpx_new/source/config/win/ia32/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/win/ia32/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/win/ia32/vpx_dsp_rtcd.h1383
-rw-r--r--third_party/libvpx_new/source/config/win/ia32/vpx_scale_rtcd.h69
-rw-r--r--third_party/libvpx_new/source/config/win/x64/vp8_rtcd.h325
-rw-r--r--third_party/libvpx_new/source/config/win/x64/vp9_rtcd.h193
-rw-r--r--third_party/libvpx_new/source/config/win/x64/vpx_config.asm87
-rw-r--r--third_party/libvpx_new/source/config/win/x64/vpx_config.c10
-rw-r--r--third_party/libvpx_new/source/config/win/x64/vpx_config.h100
-rw-r--r--third_party/libvpx_new/source/config/win/x64/vpx_dsp_rtcd.h1126
-rw-r--r--third_party/libvpx_new/source/config/win/x64/vpx_scale_rtcd.h69
-rwxr-xr-xthird_party/libvpx_new/update_libvpx.sh137
-rwxr-xr-xtools/checklicenses/checklicenses.py3
-rw-r--r--tools/copyright_scanner/third_party_files_whitelist.txt2
157 files changed, 32616 insertions, 50 deletions
diff --git a/.gitignore b/.gitignore
index 13197f3..f503e79 100644
--- a/.gitignore
+++ b/.gitignore
@@ -339,6 +339,7 @@ v8.log
/third_party/libphonenumber/src
/third_party/libsrtp
/third_party/libvpx
+/third_party/libvpx_new/source/libvpx
/third_party/libwebm/source
/third_party/libyuv
/third_party/lighttpd
diff --git a/DEPS b/DEPS
index e0f7f8d..91df6fa 100644
--- a/DEPS
+++ b/DEPS
@@ -33,7 +33,7 @@ vars = {
'googlecode_url': 'http://%s.googlecode.com/svn',
'webkit_revision': '10b2b4a9ad7f76e4104978bc83d391d07e5fd58a', # from svn revision 202548
'chromium_git': 'https://chromium.googlesource.com',
- 'libvpx_revision': 'ac1772e3db5c885b554f6a72ca9dbac4245cb0e2',
+ 'libvpx_revision': '0d6551cd1e1359423a7f4af503472d280437e9bb',
'sfntly_revision': '1bdaae8fc788a5ac8936d68bf24f37d977a13dac',
'skia_revision': 'd32087a613fde2623bbe0abfe551164fdf3d633e',
# Three lines of non-changing comments so that
@@ -188,6 +188,9 @@ deps = {
'src/third_party/libvpx':
Var('chromium_git') + '/chromium/deps/libvpx.git' + '@' + Var('libvpx_revision'),
+ 'src/third_party/libvpx_new/source/libvpx':
+ Var('chromium_git') + '/webm/libvpx.git' + '@' + 'c5f11912ae328a912ef087fdcd074ff07e96d8f9',
+
'src/third_party/ffmpeg':
Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '67cde45fbfa5145bd7ebfe0fb811ae7a80902d43',
diff --git a/WATCHLISTS b/WATCHLISTS
index 09a3e59..08b4f9a 100644
--- a/WATCHLISTS
+++ b/WATCHLISTS
@@ -447,6 +447,9 @@
'libwebp': {
'filepath': 'third_party/libwebp'
},
+ 'libvpx': {
+ 'filepath': 'third_party/libvpx_new'
+ },
'linux_fonts': {
'filepath': 'ui/gfx/font_render_params_.*|'\
'ui/gfx/platform_font_linux.*|'\
@@ -1030,6 +1033,8 @@
'ipc': ['jam@chromium.org', 'darin-cc@chromium.org'],
'libwebp': ['urvang@chromium.org', 'jzern@chromium.org',
'skal@google.com', 'vikasa@google.com'],
+ 'libvpx': ['tomfinegan@chromium.org', 'jzern@chromium.org',
+ 'fgalligan@chromium.org', 'johannkoenig@chromium.org'],
'linux_fonts': ['derat+watch@chromium.org'],
'linux_sandboxing': ['jln+watch@chromium.org'],
'linux_seccomp_bpf': ['jln+watch@chromium.org'],
diff --git a/build/common.gypi b/build/common.gypi
index 78e8eff..159ee25 100644
--- a/build/common.gypi
+++ b/build/common.gypi
@@ -4755,7 +4755,7 @@
# so forking it's deps seems like overkill.
# But this variable need defined to properly run gyp.
# A proper solution is to have an OS==android conditional
- # in third_party/libvpx/libvpx.gyp to define it.
+ # in third_party/libvpx_new/libvpx.gyp to define it.
'libvpx_path': 'lib/linux/arm',
},
'target_defaults': {
diff --git a/build/linux/unbundle/replace_gyp_files.py b/build/linux/unbundle/replace_gyp_files.py
index f534ee4..13f7ba9 100755
--- a/build/linux/unbundle/replace_gyp_files.py
+++ b/build/linux/unbundle/replace_gyp_files.py
@@ -26,7 +26,7 @@ REPLACEMENTS = {
'use_system_libjpeg': 'third_party/libjpeg/libjpeg.gyp',
'use_system_libpng': 'third_party/libpng/libpng.gyp',
'use_system_libusb': 'third_party/libusb/libusb.gyp',
- 'use_system_libvpx': 'third_party/libvpx/libvpx.gyp',
+ 'use_system_libvpx': 'third_party/libvpx_new/libvpx.gyp',
'use_system_libwebp': 'third_party/libwebp/libwebp.gyp',
'use_system_libxml': 'third_party/libxml/libxml.gyp',
'use_system_libxnvctrl' : 'third_party/libXNVCtrl/libXNVCtrl.gyp',
diff --git a/build/sanitizers/tsan_suppressions.cc b/build/sanitizers/tsan_suppressions.cc
index cca88d0..305bc0c5 100644
--- a/build/sanitizers/tsan_suppressions.cc
+++ b/build/sanitizers/tsan_suppressions.cc
@@ -50,7 +50,7 @@ char kTSanDefaultSuppressions[] =
"race:base/threading/watchdog.cc\n"
// http://crbug.com/157586
-"race:third_party/libvpx/source/libvpx/vp8/decoder/threading.c\n"
+"race:third_party/libvpx_new/source/libvpx/vp8/decoder/threading.c\n"
// http://crbug.com/158718
"race:third_party/ffmpeg/libavcodec/pthread.c\n"
@@ -62,8 +62,8 @@ char kTSanDefaultSuppressions[] =
"race:media::ReleaseData\n"
// http://crbug.com/158922
-"race:third_party/libvpx/source/libvpx/vp8/encoder/*\n"
-"race:third_party/libvpx/source/libvpx/vp9/encoder/*\n"
+"race:third_party/libvpx_new/source/libvpx/vp8/encoder/*\n"
+"race:third_party/libvpx_new/source/libvpx/vp9/encoder/*\n"
// http://crbug.com/189177
"race:thread_manager\n"
diff --git a/content/content_tests.gypi b/content/content_tests.gypi
index 293c581..68622c8 100644
--- a/content/content_tests.gypi
+++ b/content/content_tests.gypi
@@ -984,7 +984,7 @@
],
'dependencies': [
'../ui/compositor/compositor.gyp:compositor',
- '../third_party/libvpx/libvpx.gyp:libvpx',
+ '../third_party/libvpx_new/libvpx.gyp:libvpx_new',
],
}],
['OS=="android"', {
@@ -1188,7 +1188,7 @@
}],
['OS != "android" and OS != "ios"', {
'dependencies': [
- '../third_party/libvpx/libvpx.gyp:libvpx',
+ '../third_party/libvpx_new/libvpx.gyp:libvpx_new',
],
}],
['use_aura!=1 and OS!="android"', {
diff --git a/content/renderer/BUILD.gn b/content/renderer/BUILD.gn
index 6ce9aa0..45d6f38 100644
--- a/content/renderer/BUILD.gn
+++ b/content/renderer/BUILD.gn
@@ -168,7 +168,7 @@ source_set("renderer") {
"//ppapi/host",
"//ppapi/proxy",
"//ppapi/shared_impl",
- "//third_party/libvpx",
+ "//third_party/libvpx_new",
"//third_party/libyuv",
]
}
diff --git a/content/renderer/media/DEPS b/content/renderer/media/DEPS
index e39c8f1..e8f1ace 100644
--- a/content/renderer/media/DEPS
+++ b/content/renderer/media/DEPS
@@ -1,5 +1,5 @@
include_rules = [
- "+third_party/libvpx",
+ "+third_party/libvpx_new",
# For video copying, cropping and scaling.
# TODO(wuchengli): remove this when RTCVideoEncoder supports zero copy.
"+third_party/libyuv",
diff --git a/content/renderer/media/video_track_recorder.cc b/content/renderer/media/video_track_recorder.cc
index da2b1c2..79b2258 100644
--- a/content/renderer/media/video_track_recorder.cc
+++ b/content/renderer/media/video_track_recorder.cc
@@ -16,8 +16,8 @@ extern "C" {
// VPX_CODEC_DISABLE_COMPAT excludes parts of the libvpx API that provide
// backwards compatibility for legacy applications using the library.
#define VPX_CODEC_DISABLE_COMPAT 1
-#include "third_party/libvpx/source/libvpx/vpx/vp8cx.h"
-#include "third_party/libvpx/source/libvpx/vpx/vpx_encoder.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vp8cx.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h"
}
using media::VideoFrame;
diff --git a/content/renderer/pepper/DEPS b/content/renderer/pepper/DEPS
index 0f254f5..719545f 100644
--- a/content/renderer/pepper/DEPS
+++ b/content/renderer/pepper/DEPS
@@ -6,7 +6,7 @@ include_rules = [
"+media/audio",
"+media/base",
"+media/video",
- "+third_party/libvpx",
+ "+third_party/libvpx_new",
"+third_party/libyuv",
"+ui/base/ime",
"+ui/base/range",
diff --git a/content/renderer/pepper/video_encoder_shim.cc b/content/renderer/pepper/video_encoder_shim.cc
index 94c4ee7..8f97df7 100644
--- a/content/renderer/pepper/video_encoder_shim.cc
+++ b/content/renderer/pepper/video_encoder_shim.cc
@@ -15,8 +15,8 @@
#include "base/thread_task_runner_handle.h"
#include "content/renderer/pepper/pepper_video_encoder_host.h"
#include "content/renderer/render_thread_impl.h"
-#include "third_party/libvpx/source/libvpx/vpx/vp8cx.h"
-#include "third_party/libvpx/source/libvpx/vpx/vpx_encoder.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vp8cx.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h"
#include "ui/gfx/geometry/size.h"
namespace content {
diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn
index 75c16e8..a2d7a23 100644
--- a/content/test/BUILD.gn
+++ b/content/test/BUILD.gn
@@ -148,7 +148,7 @@ source_set("test_support") {
]
deps += [
"//ui/compositor",
- "//third_party/libvpx",
+ "//third_party/libvpx_new",
]
}
@@ -658,7 +658,7 @@ test("content_unittests") {
deps += [ "//testing/android/native_test:native_test_native_code" ]
}
if (!is_android && !is_ios) {
- deps += [ "//third_party/libvpx" ]
+ deps += [ "//third_party/libvpx_new" ]
}
if (use_aura) {
diff --git a/media/BUILD.gn b/media/BUILD.gn
index 78c5310..eafcc1e 100644
--- a/media/BUILD.gn
+++ b/media/BUILD.gn
@@ -354,7 +354,7 @@ component("media") {
"filters/vpx_video_decoder.cc",
"filters/vpx_video_decoder.h",
]
- deps += [ "//third_party/libvpx" ]
+ deps += [ "//third_party/libvpx_new" ]
}
if (media_use_libwebm) {
diff --git a/media/DEPS b/media/DEPS
index 08abb1d..c3a4f49 100644
--- a/media/DEPS
+++ b/media/DEPS
@@ -9,7 +9,7 @@ include_rules = [
"+skia/ext",
"+third_party/ffmpeg",
"+third_party/libwebm",
- "+third_party/libvpx",
+ "+third_party/libvpx_new",
"+third_party/libyuv",
"+third_party/opus",
"+third_party/skia",
diff --git a/media/capture/video/file_video_capture_device.cc b/media/capture/video/file_video_capture_device.cc
index b7c902e..073c0a1 100644
--- a/media/capture/video/file_video_capture_device.cc
+++ b/media/capture/video/file_video_capture_device.cc
@@ -44,7 +44,7 @@ void ParseY4MRational(const base::StringPiece& token,
// character, however all examples mentioned in the Y4M header description end
// with a newline character instead. Also, some headers do _not_ specify pixel
// format, in this case it means I420.
-// This code was inspired by third_party/libvpx/.../y4minput.* .
+// This code was inspired by third_party/libvpx_new/.../y4minput.* .
void ParseY4MTags(const std::string& file_header,
media::VideoCaptureFormat* video_format) {
media::VideoCaptureFormat format;
diff --git a/media/cast/BUILD.gn b/media/cast/BUILD.gn
index 1505436..61452ea 100644
--- a/media/cast/BUILD.gn
+++ b/media/cast/BUILD.gn
@@ -144,7 +144,7 @@ source_set("sender") {
":net",
"//media",
"//media:shared_memory_support",
- "//third_party/libvpx",
+ "//third_party/libvpx_new",
"//third_party/opus",
"//ui/gfx/geometry",
]
@@ -154,7 +154,7 @@ source_set("sender") {
deps += [ "//media:media_for_cast_ios" ]
deps -= [
"//media",
- "//third_party/libvpx",
+ "//third_party/libvpx_new",
"//third_party/opus",
]
sources -= [
@@ -201,7 +201,7 @@ source_set("receiver") {
":net",
"//media",
"//media:shared_memory_support",
- "//third_party/libvpx",
+ "//third_party/libvpx_new",
"//third_party/opus",
"//ui/gfx",
]
@@ -211,7 +211,7 @@ source_set("receiver") {
deps += [ "//media:media_for_cast_ios" ]
deps -= [
"//media",
- "//third_party/libvpx",
+ "//third_party/libvpx_new",
"//third_party/opus",
]
}
diff --git a/media/cast/cast.gyp b/media/cast/cast.gyp
index 71ba2f0..044ad2d 100644
--- a/media/cast/cast.gyp
+++ b/media/cast/cast.gyp
@@ -94,7 +94,7 @@
'<(DEPTH)/media/media.gyp:media',
'<(DEPTH)/media/media.gyp:shared_memory_support',
'<(DEPTH)/third_party/opus/opus.gyp:opus',
- '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
+ '<(DEPTH)/third_party/libvpx_new/libvpx.gyp:libvpx_new',
'<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
],
'sources': [
@@ -125,7 +125,7 @@
'dependencies!': [
'<(DEPTH)/media/media.gyp:media',
'<(DEPTH)/third_party/opus/opus.gyp:opus',
- '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
+ '<(DEPTH)/third_party/libvpx_new/libvpx.gyp:libvpx_new',
],
}], # OS=="ios"
], # conditions
@@ -143,7 +143,7 @@
'<(DEPTH)/media/media.gyp:media',
'<(DEPTH)/media/media.gyp:shared_memory_support',
'<(DEPTH)/third_party/opus/opus.gyp:opus',
- '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
+ '<(DEPTH)/third_party/libvpx_new/libvpx.gyp:libvpx_new',
'<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
], # dependencies
'sources': [
@@ -186,7 +186,7 @@
'dependencies!': [
'<(DEPTH)/media/media.gyp:media',
'<(DEPTH)/third_party/opus/opus.gyp:opus',
- '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
+ '<(DEPTH)/third_party/libvpx_new/libvpx.gyp:libvpx_new',
],
'sources!': [
'sender/external_video_encoder.cc',
diff --git a/media/cast/receiver/video_decoder.cc b/media/cast/receiver/video_decoder.cc
index 5c87233..f9b24a420 100644
--- a/media/cast/receiver/video_decoder.cc
+++ b/media/cast/receiver/video_decoder.cc
@@ -16,8 +16,8 @@
// VPX_CODEC_DISABLE_COMPAT excludes parts of the libvpx API that provide
// backwards compatibility for legacy applications using the library.
#define VPX_CODEC_DISABLE_COMPAT 1
-#include "third_party/libvpx/source/libvpx/vpx/vp8dx.h"
-#include "third_party/libvpx/source/libvpx/vpx/vpx_decoder.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vp8dx.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h"
#include "ui/gfx/geometry/size.h"
namespace media {
diff --git a/media/cast/sender/vp8_encoder.cc b/media/cast/sender/vp8_encoder.cc
index 97139e8..7bb2f11 100644
--- a/media/cast/sender/vp8_encoder.cc
+++ b/media/cast/sender/vp8_encoder.cc
@@ -7,7 +7,7 @@
#include "base/logging.h"
#include "media/base/video_frame.h"
#include "media/cast/cast_defines.h"
-#include "third_party/libvpx/source/libvpx/vpx/vp8cx.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vp8cx.h"
namespace media {
namespace cast {
diff --git a/media/cast/sender/vp8_encoder.h b/media/cast/sender/vp8_encoder.h
index fe2c54c..8888097 100644
--- a/media/cast/sender/vp8_encoder.h
+++ b/media/cast/sender/vp8_encoder.h
@@ -10,7 +10,7 @@
#include "base/threading/thread_checker.h"
#include "media/cast/cast_config.h"
#include "media/cast/sender/software_video_encoder.h"
-#include "third_party/libvpx/source/libvpx/vpx/vpx_encoder.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h"
#include "ui/gfx/geometry/size.h"
namespace media {
diff --git a/media/cdm/ppapi/external_clear_key/libvpx_cdm_video_decoder.cc b/media/cdm/ppapi/external_clear_key/libvpx_cdm_video_decoder.cc
index b45e622..7aed711 100644
--- a/media/cdm/ppapi/external_clear_key/libvpx_cdm_video_decoder.cc
+++ b/media/cdm/ppapi/external_clear_key/libvpx_cdm_video_decoder.cc
@@ -14,8 +14,8 @@
#define VPX_CODEC_DISABLE_COMPAT 1
extern "C" {
// Note: vpx_decoder.h must be first or compile will fail.
-#include "third_party/libvpx/source/libvpx/vpx/vp8dx.h"
-#include "third_party/libvpx/source/libvpx/vpx/vpx_decoder.h" // NOLINT
+#include "third_party/libvpx_new/source/libvpx/vpx/vp8dx.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h" // NOLINT
}
// Enable USE_COPYPLANE_WITH_LIBVPX to use |CopyPlane()| instead of memcpy to
diff --git a/media/filters/vpx_video_decoder.cc b/media/filters/vpx_video_decoder.cc
index 3abb781..31b3a37 100644
--- a/media/filters/vpx_video_decoder.cc
+++ b/media/filters/vpx_video_decoder.cc
@@ -37,9 +37,9 @@
// backwards compatibility for legacy applications using the library.
#define VPX_CODEC_DISABLE_COMPAT 1
extern "C" {
-#include "third_party/libvpx/source/libvpx/vpx/vpx_decoder.h"
-#include "third_party/libvpx/source/libvpx/vpx/vpx_frame_buffer.h"
-#include "third_party/libvpx/source/libvpx/vpx/vp8dx.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vp8dx.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vpx_frame_buffer.h"
}
namespace media {
diff --git a/media/media.gyp b/media/media.gyp
index 21b9ece..804024c 100644
--- a/media/media.gyp
+++ b/media/media.gyp
@@ -682,7 +682,7 @@
}],
['media_use_libvpx==1', {
'dependencies': [
- '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
+ '<(DEPTH)/third_party/libvpx_new/libvpx.gyp:libvpx_new',
],
}, { # media_use_libvpx==0
'defines': [
diff --git a/media/media_cdm.gypi b/media/media_cdm.gypi
index 53abddd..0dd6a35 100644
--- a/media/media_cdm.gypi
+++ b/media/media_cdm.gypi
@@ -54,7 +54,7 @@
['use_libvpx_in_clear_key_cdm == 1 and use_fake_video_decoder == 0' , {
'defines': ['CLEAR_KEY_CDM_USE_LIBVPX_DECODER'],
'dependencies': [
- '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
+ '<(DEPTH)/third_party/libvpx_new/libvpx.gyp:libvpx_new',
],
'sources': [
'cdm/ppapi/external_clear_key/libvpx_cdm_video_decoder.cc',
diff --git a/remoting/DEPS b/remoting/DEPS
index 675c1c2..0975efc 100644
--- a/remoting/DEPS
+++ b/remoting/DEPS
@@ -15,7 +15,7 @@ include_rules = [
"+remoting/proto",
"+third_party/google_toolbox_for_mac/src",
"+third_party/libjingle",
- "+third_party/libvpx",
+ "+third_party/libvpx_new",
"+third_party/libyuv",
"+third_party/webrtc/base",
"+third_party/webrtc/libjingle",
diff --git a/remoting/base/BUILD.gn b/remoting/base/BUILD.gn
index 917cfab..dc9b658d 100644
--- a/remoting/base/BUILD.gn
+++ b/remoting/base/BUILD.gn
@@ -19,7 +19,7 @@ source_set("base") {
]
deps = [
"//base/third_party/dynamic_annotations",
- "//third_party/libvpx",
+ "//third_party/libvpx_new",
"//third_party/libyuv",
"//third_party/webrtc/modules/desktop_capture:primitives",
]
diff --git a/remoting/codec/BUILD.gn b/remoting/codec/BUILD.gn
index d08d83c..4a2cd73 100644
--- a/remoting/codec/BUILD.gn
+++ b/remoting/codec/BUILD.gn
@@ -16,7 +16,7 @@ source_set("codec") {
"//media",
"//media:shared_memory_support",
"//remoting/proto",
- "//third_party/libvpx",
+ "//third_party/libvpx_new",
"//third_party/libyuv",
"//third_party/opus",
"//third_party/webrtc/modules/desktop_capture:primitives",
diff --git a/remoting/codec/scoped_vpx_codec.cc b/remoting/codec/scoped_vpx_codec.cc
index dda986e..dd5c739 100644
--- a/remoting/codec/scoped_vpx_codec.cc
+++ b/remoting/codec/scoped_vpx_codec.cc
@@ -8,7 +8,7 @@
extern "C" {
#define VPX_CODEC_DISABLE_COMPAT 1
-#include "third_party/libvpx/source/libvpx/vpx/vpx_codec.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vpx_codec.h"
}
namespace remoting {
diff --git a/remoting/codec/video_decoder_vpx.cc b/remoting/codec/video_decoder_vpx.cc
index cba3b20..5c766a0 100644
--- a/remoting/codec/video_decoder_vpx.cc
+++ b/remoting/codec/video_decoder_vpx.cc
@@ -16,8 +16,8 @@
extern "C" {
#define VPX_CODEC_DISABLE_COMPAT 1
-#include "third_party/libvpx/source/libvpx/vpx/vpx_decoder.h"
-#include "third_party/libvpx/source/libvpx/vpx/vp8dx.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vp8dx.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h"
}
namespace remoting {
diff --git a/remoting/codec/video_encoder_vpx.cc b/remoting/codec/video_encoder_vpx.cc
index 80df935..1fa19a4 100644
--- a/remoting/codec/video_encoder_vpx.cc
+++ b/remoting/codec/video_encoder_vpx.cc
@@ -16,8 +16,8 @@
extern "C" {
#define VPX_CODEC_DISABLE_COMPAT 1
-#include "third_party/libvpx/source/libvpx/vpx/vpx_encoder.h"
-#include "third_party/libvpx/source/libvpx/vpx/vp8cx.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vp8cx.h"
+#include "third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h"
}
namespace remoting {
diff --git a/remoting/remoting.gyp b/remoting/remoting.gyp
index a2dcac8..7d7b992 100644
--- a/remoting/remoting.gyp
+++ b/remoting/remoting.gyp
@@ -199,7 +199,7 @@
'../media/media.gyp:media',
'../media/media.gyp:shared_memory_support',
'../net/net.gyp:net',
- '../third_party/libvpx/libvpx.gyp:libvpx',
+ '../third_party/libvpx_new/libvpx.gyp:libvpx_new',
'../third_party/libyuv/libyuv.gyp:libyuv',
'../third_party/opus/opus.gyp:opus',
'../third_party/protobuf/protobuf.gyp:protobuf_lite',
diff --git a/remoting/remoting_nacl.gyp b/remoting/remoting_nacl.gyp
index ab27674..6604231 100644
--- a/remoting/remoting_nacl.gyp
+++ b/remoting/remoting_nacl.gyp
@@ -106,7 +106,7 @@
'../third_party/expat/expat_nacl.gyp:expat_nacl',
'../third_party/khronos/khronos.gyp:khronos_headers',
'../third_party/libjingle/libjingle_nacl.gyp:libjingle_nacl',
- '../third_party/libvpx/libvpx_nacl.gyp:libvpx_nacl',
+ '../third_party/libvpx_new/libvpx_nacl.gyp:libvpx_nacl',
'../third_party/libyuv/libyuv_nacl.gyp:libyuv_nacl',
'../third_party/opus/opus_nacl.gyp:opus_nacl',
'remoting_proto_nacl',
diff --git a/third_party/libvpx_new/BUILD.gn b/third_party/libvpx_new/BUILD.gn
new file mode 100644
index 0000000..bfa4854
--- /dev/null
+++ b/third_party/libvpx_new/BUILD.gn
@@ -0,0 +1,276 @@
+# Copyright 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import("//build/config/arm.gni")
+import("//build/config/android/config.gni")
+import("//build/config/chrome_build.gni")
+import("//build/config/sanitizers/sanitizers.gni")
+import("//third_party/libvpx_new/libvpx_srcs.gni")
+import("//third_party/yasm/yasm_assemble.gni")
+
+# Sets the architecture name for building libvpx.
+if (current_cpu == "x86") {
+ cpu_arch_full = "ia32"
+} else if (current_cpu == "x64") {
+ if (is_msan) {
+ cpu_arch_full = "generic"
+ } else {
+ cpu_arch_full = "x64"
+ }
+} else if (current_cpu == "arm") {
+ if (arm_use_neon) {
+ cpu_arch_full = "arm-neon"
+ } else if (is_android) {
+ cpu_arch_full = "arm-neon-cpu-detect"
+ } else {
+ cpu_arch_full = "arm"
+ }
+} else {
+ cpu_arch_full = current_cpu
+}
+
+if (is_nacl) {
+ platform_include_dir = "//third_party/libvpx_new/source/config/nacl"
+} else {
+ if (is_posix && !is_mac) {
+ os_category = "linux"
+ } else {
+ os_category = current_os
+ }
+ platform_include_dir =
+ "//third_party/libvpx_new/source/config/$os_category/$cpu_arch_full"
+}
+
+config("libvpx_config") {
+ include_dirs = [
+ "//third_party/libvpx_new/source/config",
+ platform_include_dir,
+ "//third_party/libvpx_new/source/libvpx",
+ "$root_gen_dir/third_party/libvpx_new", # Provides vpx_rtcd.h.
+ ]
+}
+
+# gn orders flags on a target before flags from configs. The default config
+# adds -Wall, and these flags have to be after -Wall -- so they need to come
+# from a config and can't be on the target directly.
+config("libvpx_warnings") {
+ if (is_clang) {
+ cflags = [
+ # libvpx heavily relies on implicit enum casting.
+ "-Wno-conversion",
+ # libvpx does `if ((a == b))` in some places.
+ "-Wno-parentheses-equality",
+ # libvpx has many static functions in header, which trigger this warning.
+ "-Wno-unused-function",
+ ]
+ } else if (!is_win) {
+ cflags = [ "-Wno-unused-function", "-Wno-sign-compare" ]
+ }
+}
+
+# This config is applied to targets that depend on libvpx.
+config("libvpx_external_config") {
+ include_dirs = [
+ "//third_party/libvpx_new/source/libvpx",
+ ]
+}
+
+if (current_cpu == "x86" || current_cpu == "x64") {
+ yasm_assemble("libvpx_yasm") {
+ if (current_cpu == "x86") {
+ sources = libvpx_srcs_x86_assembly
+ } else if (current_cpu == "x64") {
+ sources = libvpx_srcs_x86_64_assembly
+ }
+
+ defines = [ "CHROMIUM" ]
+ include_dirs = [
+ platform_include_dir,
+ "//third_party/libvpx_new/source/config",
+ "//third_party/libvpx_new/source/libvpx",
+ target_gen_dir
+ ]
+ }
+}
+
+static_library("libvpx_intrinsics_mmx") {
+ configs += [ ":libvpx_config" ]
+ configs -= [ "//build/config/compiler:chromium_code" ]
+ configs += [ "//build/config/compiler:no_chromium_code" ]
+ configs += [ ":libvpx_warnings" ]
+ if (!is_win) {
+ cflags = [ "-mmmx" ]
+ }
+ if (current_cpu == "x86") {
+ sources = libvpx_srcs_x86_mmx
+ } else if (current_cpu == "x64") {
+ sources = libvpx_srcs_x86_64_mmx
+ }
+}
+
+static_library("libvpx_intrinsics_sse2") {
+ configs += [ ":libvpx_config" ]
+ configs -= [ "//build/config/compiler:chromium_code" ]
+ configs += [ "//build/config/compiler:no_chromium_code" ]
+ configs += [ ":libvpx_warnings" ]
+ if (!is_win || is_clang) {
+ cflags = [ "-msse2" ]
+ }
+ if (current_cpu == "x86") {
+ sources = libvpx_srcs_x86_sse2
+ } else if (current_cpu == "x64") {
+ sources = libvpx_srcs_x86_64_sse2
+ }
+}
+
+static_library("libvpx_intrinsics_ssse3") {
+ configs += [ ":libvpx_config" ]
+ configs -= [ "//build/config/compiler:chromium_code" ]
+ configs += [ "//build/config/compiler:no_chromium_code" ]
+ configs += [ ":libvpx_warnings" ]
+ if (!is_win || is_clang) {
+ cflags = [ "-mssse3" ]
+ }
+ if (current_cpu == "x86") {
+ sources = libvpx_srcs_x86_ssse3
+ } else if (current_cpu == "x64") {
+ sources = libvpx_srcs_x86_64_ssse3
+ }
+}
+
+static_library("libvpx_intrinsics_sse4_1") {
+ configs += [ ":libvpx_config" ]
+ configs -= [ "//build/config/compiler:chromium_code" ]
+ configs += [ "//build/config/compiler:no_chromium_code" ]
+ configs += [ ":libvpx_warnings" ]
+ if (!is_win || is_clang) {
+ cflags = [ "-msse4.1" ]
+ }
+ if (current_cpu == "x86") {
+ sources = libvpx_srcs_x86_sse4_1
+ } else if (current_cpu == "x64") {
+ sources = libvpx_srcs_x86_64_sse4_1
+ }
+}
+
+static_library("libvpx_intrinsics_avx2") {
+ configs += [ ":libvpx_config" ]
+ configs -= [ "//build/config/compiler:chromium_code" ]
+ configs += [ "//build/config/compiler:no_chromium_code" ]
+ configs += [ ":libvpx_warnings" ]
+ if (is_win) {
+ cflags = [ "/arch:AVX2" ]
+ } else {
+ cflags = [ "-mavx2" ]
+ }
+ if (current_cpu == "x86") {
+ sources = libvpx_srcs_x86_avx2
+ } else if (current_cpu == "x64") {
+ sources = libvpx_srcs_x86_64_avx2
+ }
+}
+
+if (cpu_arch_full == "arm-neon-cpu-detect") {
+ static_library("libvpx_intrinsics_neon") {
+ configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
+ configs += [ ":libvpx_config" ]
+ configs += [ ":libvpx_warnings" ]
+ cflags = [ "-mfpu=neon" ]
+ sources = libvpx_srcs_arm_neon_cpu_detect_neon
+ }
+}
+
+# Converts ARM assembly files to GAS style.
+if (current_cpu == "arm") {
+ action_foreach("convert_arm_assembly") {
+ script = "//third_party/libvpx_new/run_perl.py"
+ if (cpu_arch_full == "arm-neon") {
+ sources = libvpx_srcs_arm_neon_assembly
+ } else if (cpu_arch_full == "arm-neon-cpu-detect") {
+ sources = libvpx_srcs_arm_neon_cpu_detect_assembly
+ } else {
+ sources = libvpx_srcs_arm_assembly
+ }
+ outputs = [ "$target_gen_dir/{{source_name_part}}.S" ]
+ args = [
+ "-s",
+ rebase_path("//third_party/libvpx_new/source/libvpx/build/make/ads2gas.pl",
+ root_build_dir),
+ "-i", "{{source}}",
+ "-o", rebase_path("$target_gen_dir/{{source_name_part}}.S")
+ ]
+ }
+
+ static_library("libvpx_assembly_arm") {
+ sources = get_target_outputs(":convert_arm_assembly")
+ configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
+ configs += [ ":libvpx_config" ]
+ configs += [ ":libvpx_warnings" ]
+ if (cpu_arch_full == "arm-neon" ||
+ cpu_arch_full == "arm-neon-cpu-detect") {
+ cflags = [ "-mfpu=neon" ]
+ }
+ deps = [
+ ":convert_arm_assembly",
+ ]
+ }
+}
+
+static_library("libvpx_new") {
+ if (!is_debug && is_win && is_official_build) {
+ configs -= [ "//build/config/compiler:optimize" ]
+ configs += [ "//build/config/compiler:optimize_max" ]
+ }
+
+ if (is_nacl) {
+ sources = libvpx_srcs_generic
+ } else if (current_cpu == "x86") {
+ sources = libvpx_srcs_x86
+ } else if (current_cpu == "x64") {
+ if (is_msan) {
+ sources = libvpx_srcs_generic
+ } else {
+ sources = libvpx_srcs_x86_64
+ }
+ } else if (current_cpu == "mipsel") {
+ sources = libvpx_srcs_mips
+ } else if (current_cpu == "arm") {
+ if (arm_use_neon) {
+ sources = libvpx_srcs_arm_neon
+ } else if (is_android) {
+ sources = libvpx_srcs_arm_neon_cpu_detect
+ } else {
+ sources = libvpx_srcs_arm
+ }
+ } else if (current_cpu == "arm64") {
+ sources = libvpx_srcs_arm64
+ }
+
+ configs += [ ":libvpx_config" ]
+ configs -= [ "//build/config/compiler:chromium_code" ]
+ configs += [ "//build/config/compiler:no_chromium_code" ]
+ configs += [ ":libvpx_warnings" ]
+ deps = []
+ if (current_cpu == "x86" || (current_cpu == "x64" && !is_msan)) {
+ deps += [
+ ":libvpx_yasm",
+ ":libvpx_intrinsics_mmx",
+ ":libvpx_intrinsics_sse2",
+ ":libvpx_intrinsics_ssse3",
+ ":libvpx_intrinsics_sse4_1",
+ ":libvpx_intrinsics_avx2",
+ ]
+ }
+ if (cpu_arch_full == "arm-neon-cpu-detect") {
+ deps += [ ":libvpx_intrinsics_neon" ]
+ }
+ if (is_android) {
+ deps += [ "//third_party/android_tools:cpu_features" ]
+ }
+ if (current_cpu == "arm") {
+ deps += [ ":libvpx_assembly_arm" ]
+ }
+
+ public_configs = [ ":libvpx_external_config" ]
+}
diff --git a/third_party/libvpx_new/DEPS b/third_party/libvpx_new/DEPS
new file mode 100644
index 0000000..9065064
--- /dev/null
+++ b/third_party/libvpx_new/DEPS
@@ -0,0 +1,7 @@
+include_rules = [
+ '+vp8',
+ '+vp9',
+ '+vpx',
+ '+vpx_dsp',
+ '+vpx_ports',
+]
diff --git a/third_party/libvpx_new/OWNERS b/third_party/libvpx_new/OWNERS
new file mode 100644
index 0000000..c7e15fa
--- /dev/null
+++ b/third_party/libvpx_new/OWNERS
@@ -0,0 +1,2 @@
+tomfinegan@chromium.org
+johannkoenig@chromium.org
diff --git a/third_party/libvpx_new/README.chromium b/third_party/libvpx_new/README.chromium
new file mode 100644
index 0000000..bdb2ded
--- /dev/null
+++ b/third_party/libvpx_new/README.chromium
@@ -0,0 +1,57 @@
+Name: libvpx
+URL: http://www.webmproject.org
+Version: v1.4.0
+License: BSD
+License File: source/libvpx/LICENSE
+Security Critical: yes
+
+Date: Monday September 14 2015
+Branch: master
+Commit: c5f11912ae328a912ef087fdcd074ff07e96d8f9
+
+Description:
+Contains the sources used to compile libvpx binaries used by Google Chrome and
+Chromium.
+
+The libvpx source is from webmproject.org:
+ git://review.webmproject.org/libvpx
+
+Notes on updating libvpx source code.
+
+Please follow these steps to update libvpx source code:
+
+1. Update libvpx source tree. Look for "Current HEAD: <hash>" output to update
+ README.chromium. Look for "git log from upstream: <git log>" output to add
+ to the commit message.
+
+ ./update_libvpx.sh [branch name]
+
+2. Generate updated .gypi and config files.
+
+ ./generate_gypi.sh
+
+3. Update this README with any Version, Date, Branch, and Commit changes. The
+ version is in the file source/config/vpx_version.h
+
+4. Commit the changes in root (I.e README & .gypi files), source/libvpx, and
+ source/config directories. The commit message should look like this:
+ libvpx: Pull from upstream
+
+ Current HEAD: <hash>
+
+ git log from upstream:
+ a6b2070 <git commit message 1>
+ 08dabbc <git commit message 2>
+ c29fb02 <git commit message 3>
+
+Tools needed to build libvpx:
+
+- generate_gypi.sh
+
+Generate config and .gypi files that contain the source list for each platform.
+Configuration for the build is taken from vpx_config.h for each platform.
+
+- lint_config.sh
+
+A tool to verify vpx_config.h and vpx_config.asm are matched. This also
+prints the final configuration after checking.
diff --git a/third_party/libvpx_new/ads2gas.gypi b/third_party/libvpx_new/ads2gas.gypi
new file mode 100644
index 0000000..76ffae7
--- /dev/null
+++ b/third_party/libvpx_new/ads2gas.gypi
@@ -0,0 +1,54 @@
+# Copyright (c) 2015 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file is meant to be included into a target to provide a rule
+# for translating .asm files to .S files using ads2gas.
+#
+# To use this, create a gyp target with the following form:
+# {
+# 'target_name': 'my_lib',
+# 'sources': [
+# 'foo.asm',
+# 'bar.c',
+# ],
+# 'includes': [ 'ads2gas.gypi' ],
+# }
+{
+ 'variables': {
+ # Location of the intermediate output.
+ 'shared_generated_dir': '<(SHARED_INTERMEDIATE_DIR)/third_party/libvpx',
+ 'variables': {
+ 'libvpx_source%': 'source/libvpx',
+ 'conditions': [
+ ['OS=="ios"', {
+ 'ads2gas_script%': 'ads2gas_apple.pl',
+ }, {
+ 'ads2gas_script%': 'ads2gas.pl',
+ }],
+ ],
+ },
+ 'ads2gas_script%': '<(ads2gas_script)',
+ 'ads2gas_script_dir': '<(libvpx_source)/build/make',
+ },
+ 'rules': [
+ {
+ 'rule_name': 'convert_asm',
+ 'extension': 'asm',
+ 'inputs': [
+ '<(ads2gas_script_dir)/<(ads2gas_script)',
+ '<(ads2gas_script_dir)/thumb.pm',
+ ],
+ 'outputs': [
+ '<(shared_generated_dir)/<(RULE_INPUT_ROOT).S',
+ ],
+ 'action': [
+ 'bash',
+ '-c',
+ 'cat <(RULE_INPUT_PATH) | perl <(ads2gas_script_dir)/<(ads2gas_script) -chromium > <(shared_generated_dir)/<(RULE_INPUT_ROOT).S',
+ ],
+ 'process_outputs_as_sources': 1,
+ 'message': 'Convert libvpx asm file for ARM <(RULE_INPUT_PATH)',
+ },
+ ],
+}
diff --git a/third_party/libvpx_new/generate_gypi.sh b/third_party/libvpx_new/generate_gypi.sh
new file mode 100755
index 0000000..2b99bb8
--- /dev/null
+++ b/third_party/libvpx_new/generate_gypi.sh
@@ -0,0 +1,559 @@
+#!/bin/bash -e
+#
+# Copyright (c) 2012 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This script is used to generate .gypi, .gni files and files in the
+# config/platform directories needed to build libvpx.
+# Every time libvpx source code is updated just run this script.
+#
+# Usage:
+# $ ./generate_gypi.sh [--disable-avx] [--only-configs]
+#
+# The following optional flags are supported:
+# --disable-avx : AVX+AVX2 support is disabled.
+# --only-configs: Excludes generation of GN and GYP files (i.e. only
+# configuration headers are generated).
+#
+# !!! It's highly recommended to install yasm before running this script.
+
+export LC_ALL=C
+BASE_DIR=$(pwd)
+LIBVPX_SRC_DIR="source/libvpx"
+LIBVPX_CONFIG_DIR="source/config"
+unset DISABLE_AVX
+
+for i in "$@"
+do
+case $i in
+ --disable-avx)
+ DISABLE_AVX="--disable-avx --disable-avx2"
+ shift
+ ;;
+ --only-configs)
+ ONLY_CONFIGS=true
+ shift
+ ;;
+ *)
+ echo "Unknown option: $i"
+ exit 1
+ ;;
+esac
+done
+
+# Print license header.
+# $1 - Output base name
+function write_license {
+ echo "# This file is generated. Do not edit." >> $1
+ echo "# Copyright (c) 2014 The Chromium Authors. All rights reserved." >> $1
+ echo "# Use of this source code is governed by a BSD-style license that can be" >> $1
+ echo "# found in the LICENSE file." >> $1
+ echo "" >> $1
+}
+
+# Print gypi boilerplate header.
+# $1 - Output base name
+function write_gypi_header {
+ echo "{" >> $1
+}
+
+# Print gypi boilerplate footer.
+# $1 - Output base name
+function write_gypi_footer {
+ echo "}" >> $1
+}
+
+# Generate a gypi with a list of source files.
+# $1 - Array name for file list. This is processed with 'declare' below to
+# regenerate the array locally.
+# $2 - Output file
+function write_gypi {
+ # Convert the first argument back in to an array.
+ local readonly file_list=(${!1})
+
+ rm -rf "$2"
+ write_license "$2"
+ write_gypi_header "$2"
+
+ echo " 'sources': [" >> "$2"
+ for f in ${file_list[@]}
+ do
+ echo " '<(libvpx_source)/$f'," >> "$2"
+ done
+ echo " ]," >> "$2"
+
+ write_gypi_footer "$2"
+}
+
+# Generate a gni with a list of source files.
+# $1 - Array name for file list. This is processed with 'declare' below to
+# regenerate the array locally.
+# $2 - GN variable name.
+# $3 - Output file.
+function write_gni {
+ # Convert the first argument back in to an array.
+ declare -a file_list=("${!1}")
+
+ echo "$2 = [" >> "$3"
+ for f in $file_list
+ do
+ echo " \"//third_party/libvpx_new/source/libvpx/$f\"," >> "$3"
+ done
+ echo "]" >> "$3"
+}
+
+# Target template function
+# $1 - Array name for file list.
+# $2 - Output file
+# $3 - Target name
+# $4 - Compiler flag
+function write_target_definition {
+ declare -a sources_list=("${!1}")
+
+ echo " {" >> "$2"
+ echo " 'target_name': '$3'," >> "$2"
+ echo " 'type': 'static_library'," >> "$2"
+ echo " 'include_dirs': [" >> "$2"
+ echo " 'source/config/<(OS_CATEGORY)/<(target_arch_full)'," >> "$2"
+ echo " '<(libvpx_source)'," >> "$2"
+ echo " ]," >> "$2"
+ echo " 'sources': [" >> "$2"
+ for f in $sources_list
+ do
+ echo " '<(libvpx_source)/$f'," >> $2
+ done
+ echo " ]," >> "$2"
+ if [[ $4 == fpu=neon ]]; then
+ echo " 'includes': [ 'ads2gas.gypi' ]," >> "$2"
+ echo " 'cflags!': [ '-mfpu=vfpv3-d16' ]," >> "$2"
+ echo " 'conditions': [" >> $2
+ echo " # Disable GCC LTO in neon targets due to compiler bug" >> "$2"
+ echo " # crbug.com/408997" >> "$2"
+ echo " ['clang==0 and use_lto==1', {" >> "$2"
+ echo " 'cflags!': [" >> "$2"
+ echo " '-flto'," >> "$2"
+ echo " '-ffat-lto-objects'," >> "$2"
+ echo " ]," >> "$2"
+ echo " }]," >> "$2"
+ echo " ]," >> "$2"
+ fi
+ echo " 'cflags': [ '-m$4', ]," >> "$2"
+ echo " 'xcode_settings': { 'OTHER_CFLAGS': [ '-m$4' ] }," >> "$2"
+if [[ -z $DISABLE_AVX && $4 == avx2 ]]; then
+ echo " 'msvs_settings': {" >> "$2"
+ echo " 'VCCLCompilerTool': {" >> "$2"
+ echo " 'EnableEnhancedInstructionSet': '5', # /arch:AVX2" >> "$2"
+ echo " }," >> "$2"
+ echo " }," >> "$2"
+ elif [[ $4 == ssse3 || $4 == sse4.1 ]]; then
+ echo " 'conditions': [" >> "$2"
+ echo " ['OS==\"win\" and clang==1', {" >> "$2"
+ echo " # cl.exe's /arch flag doesn't have a setting for SSSE3/4, and cl.exe" >> "$2"
+ echo " # doesn't need it for intrinsics. clang-cl does need it, though." >> "$2"
+ echo " 'msvs_settings': {" >> "$2"
+ echo " 'VCCLCompilerTool': { 'AdditionalOptions': [ '-m$4' ] }," >> "$2"
+ echo " }," >> "$2"
+ echo " }]," >> "$2"
+ echo " ]," >> "$2"
+ fi
+ echo " }," >> "$2"
+}
+
+
+# Generate a gypi which applies additional compiler flags based on the file
+# name.
+# $1 - Array name for file list.
+# $2 - Output file
+function write_intrinsics_gypi {
+ declare -a file_list=("${!1}")
+
+ local mmx_sources=$(echo "$file_list" | grep '_mmx\.c$')
+ local sse2_sources=$(echo "$file_list" | grep '_sse2\.c$')
+ local sse3_sources=$(echo "$file_list" | grep '_sse3\.c$')
+ local ssse3_sources=$(echo "$file_list" | grep '_ssse3\.c$')
+ local sse4_1_sources=$(echo "$file_list" | grep '_sse4\.c$')
+ local avx_sources=$(echo "$file_list" | grep '_avx\.c$')
+ local avx2_sources=$(echo "$file_list" | grep '_avx2\.c$')
+ local neon_sources=$(echo "$file_list" | grep '_neon\.c$\|\.asm$')
+
+ # Intrinsic functions and files are in flux. We can selectively generate them
+ # but we can not selectively include them in libvpx.gyp. Throw some errors
+ # when new targets are needed.
+
+ rm -rf "$2"
+ write_license "$2"
+ write_gypi_header "$2"
+
+ echo " 'targets': [" >> "$2"
+
+ # x86[_64]
+ if [ 0 -ne ${#mmx_sources} ]; then
+ write_target_definition mmx_sources[@] "$2" libvpx_intrinsics_mmx mmx
+ fi
+ if [ 0 -ne ${#sse2_sources} ]; then
+ write_target_definition sse2_sources[@] "$2" libvpx_intrinsics_sse2 sse2
+ fi
+ if [ 0 -ne ${#sse3_sources} ]; then
+ #write_target_definition sse3_sources[@] "$2" libvpx_intrinsics_sse3 sse3
+ echo "ERROR: Uncomment sse3 sections in libvpx.gyp"
+ exit 1
+ fi
+ if [ 0 -ne ${#ssse3_sources} ]; then
+ write_target_definition ssse3_sources[@] "$2" libvpx_intrinsics_ssse3 ssse3
+ fi
+ if [ 0 -ne ${#sse4_1_sources} ]; then
+ write_target_definition sse4_1_sources[@] "$2" libvpx_intrinsics_sse4_1 sse4.1
+ fi
+ if [[ -z $DISABLE_AVX && 0 -ne ${#avx_sources} ]]; then
+ #write_target_definition avx_sources[@] "$2" libvpx_intrinsics_avx avx
+ echo "ERROR: Uncomment avx sections in libvpx.gyp"
+ exit 1
+ fi
+ if [[ -z $DISABLE_AVX && 0 -ne ${#avx2_sources} ]]; then
+ write_target_definition avx2_sources[@] "$2" libvpx_intrinsics_avx2 avx2
+ fi
+
+ # arm neon
+ if [ 0 -ne ${#neon_sources} ]; then
+ write_target_definition neon_sources[@] "$2" libvpx_intrinsics_neon fpu=neon
+ fi
+
+ echo " ]," >> "$2"
+
+ write_gypi_footer "$2"
+}
+
+# Convert a list of source files into gypi and gni files.
+# $1 - Input file.
+# $2 - Output gypi file base. Will generate additional .gypi files when
+# different compilation flags are required.
+function convert_srcs_to_project_files {
+ # Do the following here:
+ # 1. Filter .c, .h, .s, .S and .asm files.
+ # 2. Move certain files to a separate include to allow applying different
+ # compiler options.
+ # 3. Replace .asm.s to .asm because gyp will do the conversion.
+
+ local source_list=$(grep -E '(\.c|\.h|\.S|\.s|\.asm)$' $1)
+
+ # Not sure why vpx_config is not included.
+ source_list=$(echo "$source_list" | grep -v 'vpx_config\.c')
+
+ # The actual ARM files end in .asm. We have rules to translate them to .S
+ source_list=$(echo "$source_list" | sed s/\.asm\.s$/.asm/)
+
+ # Select all x86 files ending with .c
+ local intrinsic_list=$(echo "$source_list" | \
+ egrep '(mmx|sse2|sse3|ssse3|sse4|avx|avx2).c$')
+
+ # Select all neon files ending in C but only when building in RTCD mode
+ if [ "libvpx_srcs_arm_neon_cpu_detect" == "$2" ]; then
+ # Select all arm neon files ending in _neon.c and all asm files.
+ # The asm files need to be included in the intrinsics target because
+ # they need the -mfpu=neon flag.
+ # the pattern may need to be updated if vpx_scale gets intrinics
+ local intrinsic_list=$(echo "$source_list" | \
+ egrep 'neon.*(\.c|\.asm)$')
+ fi
+
+ # Remove these files from the main list.
+ source_list=$(comm -23 <(echo "$source_list") <(echo "$intrinsic_list"))
+
+ local x86_list=$(echo "$source_list" | egrep '/x86/')
+
+ write_gypi source_list "$BASE_DIR/$2.gypi"
+
+ # All the files are in a single "element." Check if the first element has
+ # length 0.
+ if [ 0 -ne ${#intrinsic_list} ]; then
+ write_intrinsics_gypi intrinsic_list[@] "$BASE_DIR/$2_intrinsics.gypi"
+ fi
+
+ # Write a single .gni file that includes all source files for all archs.
+ if [ 0 -ne ${#x86_list} ]; then
+ local c_sources=$(echo "$source_list" | egrep '.(c|h)$')
+ local assembly_sources=$(echo "$source_list" | egrep '.asm$')
+ local mmx_sources=$(echo "$intrinsic_list" | grep '_mmx\.c$')
+ local sse2_sources=$(echo "$intrinsic_list" | grep '_sse2\.c$')
+ local sse3_sources=$(echo "$intrinsic_list" | grep '_sse3\.c$')
+ local ssse3_sources=$(echo "$intrinsic_list" | grep '_ssse3\.c$')
+ local sse4_1_sources=$(echo "$intrinsic_list" | grep '_sse4\.c$')
+ local avx_sources=$(echo "$intrinsic_list" | grep '_avx\.c$')
+ local avx2_sources=$(echo "$intrinsic_list" | grep '_avx2\.c$')
+
+ write_gni c_sources $2 "$BASE_DIR/libvpx_srcs.gni"
+ write_gni assembly_sources $2_assembly "$BASE_DIR/libvpx_srcs.gni"
+ write_gni mmx_sources $2_mmx "$BASE_DIR/libvpx_srcs.gni"
+ write_gni sse2_sources $2_sse2 "$BASE_DIR/libvpx_srcs.gni"
+ write_gni sse3_sources $2_sse3 "$BASE_DIR/libvpx_srcs.gni"
+ write_gni ssse3_sources $2_ssse3 "$BASE_DIR/libvpx_srcs.gni"
+ write_gni sse4_1_sources $2_sse4_1 "$BASE_DIR/libvpx_srcs.gni"
+ if [ -z "$DISABLE_AVX" ]; then
+ write_gni avx_sources $2_avx "$BASE_DIR/libvpx_srcs.gni"
+ write_gni avx2_sources $2_avx2 "$BASE_DIR/libvpx_srcs.gni"
+ fi
+ else
+ local c_sources=$(echo "$source_list" | egrep '.(c|h)$')
+ local assembly_sources=$(echo -e "$source_list\n$intrinsic_list" | \
+ egrep '.asm$')
+ local neon_sources=$(echo "$intrinsic_list" | grep '_neon\.c$')
+ write_gni c_sources $2 "$BASE_DIR/libvpx_srcs.gni"
+ write_gni assembly_sources $2_assembly "$BASE_DIR/libvpx_srcs.gni"
+ if [ 0 -ne ${#neon_sources} ]; then
+ write_gni neon_sources $2_neon "$BASE_DIR/libvpx_srcs.gni"
+ fi
+ fi
+}
+
+# Clean files from previous make.
+function make_clean {
+ make clean > /dev/null
+ rm -f libvpx_srcs.txt
+}
+
+# Lint a pair of vpx_config.h and vpx_config.asm to make sure they match.
+# $1 - Header file directory.
+function lint_config {
+ # mips does not contain any assembly so the header does not need to be
+ # compared to the asm.
+ if [[ "$1" != *mipsel && "$1" != *mips64el ]]; then
+ $BASE_DIR/lint_config.sh \
+ -h $BASE_DIR/$LIBVPX_CONFIG_DIR/$1/vpx_config.h \
+ -a $BASE_DIR/$LIBVPX_CONFIG_DIR/$1/vpx_config.asm
+ fi
+}
+
+# Print the configuration.
+# $1 - Header file directory.
+function print_config {
+ $BASE_DIR/lint_config.sh -p \
+ -h $BASE_DIR/$LIBVPX_CONFIG_DIR/$1/vpx_config.h \
+ -a $BASE_DIR/$LIBVPX_CONFIG_DIR/$1/vpx_config.asm
+}
+
+# Print the configuration from Header file.
+# This function is an abridged version of print_config which does not use
+# lint_config and it does not require existence of vpx_config.asm.
+# $1 - Header file directory.
+function print_config_basic {
+ combined_config="$(cat $BASE_DIR/$LIBVPX_CONFIG_DIR/$1/vpx_config.h \
+ | grep -E ' +[01] *$')"
+ combined_config="$(echo "$combined_config" | grep -v DO1STROUNDING)"
+ combined_config="$(echo "$combined_config" | sed 's/[ \t]//g')"
+ combined_config="$(echo "$combined_config" | sed 's/.*define//')"
+ combined_config="$(echo "$combined_config" | sed 's/0$/=no/')"
+ combined_config="$(echo "$combined_config" | sed 's/1$/=yes/')"
+ echo "$combined_config" | sort | uniq
+}
+
+# Generate *_rtcd.h files.
+# $1 - Header file directory.
+# $2 - Architecture.
+function gen_rtcd_header {
+ echo "Generate $LIBVPX_CONFIG_DIR/$1/*_rtcd.h files."
+
+ rm -rf $BASE_DIR/$TEMP_DIR/libvpx.config
+ if [[ "$2" == "mipsel" || "$2" == "mips64el" ]]; then
+ print_config_basic $1 > $BASE_DIR/$TEMP_DIR/libvpx.config
+ else
+ $BASE_DIR/lint_config.sh -p \
+ -h $BASE_DIR/$LIBVPX_CONFIG_DIR/$1/vpx_config.h \
+ -a $BASE_DIR/$LIBVPX_CONFIG_DIR/$1/vpx_config.asm \
+ -o $BASE_DIR/$TEMP_DIR/libvpx.config
+ fi
+
+ $BASE_DIR/$LIBVPX_SRC_DIR/build/make/rtcd.pl \
+ --arch=$2 \
+ --sym=vp8_rtcd $DISABLE_AVX \
+ --config=$BASE_DIR/$TEMP_DIR/libvpx.config \
+ $BASE_DIR/$LIBVPX_SRC_DIR/vp8/common/rtcd_defs.pl \
+ > $BASE_DIR/$LIBVPX_CONFIG_DIR/$1/vp8_rtcd.h
+
+ $BASE_DIR/$LIBVPX_SRC_DIR/build/make/rtcd.pl \
+ --arch=$2 \
+ --sym=vp9_rtcd $DISABLE_AVX \
+ --config=$BASE_DIR/$TEMP_DIR/libvpx.config \
+ $BASE_DIR/$LIBVPX_SRC_DIR/vp9/common/vp9_rtcd_defs.pl \
+ > $BASE_DIR/$LIBVPX_CONFIG_DIR/$1/vp9_rtcd.h
+
+ $BASE_DIR/$LIBVPX_SRC_DIR/build/make/rtcd.pl \
+ --arch=$2 \
+ --sym=vpx_scale_rtcd $DISABLE_AVX \
+ --config=$BASE_DIR/$TEMP_DIR/libvpx.config \
+ $BASE_DIR/$LIBVPX_SRC_DIR/vpx_scale/vpx_scale_rtcd.pl \
+ > $BASE_DIR/$LIBVPX_CONFIG_DIR/$1/vpx_scale_rtcd.h
+
+ $BASE_DIR/$LIBVPX_SRC_DIR/build/make/rtcd.pl \
+ --arch=$2 \
+ --sym=vpx_dsp_rtcd $DISABLE_AVX \
+ --config=$BASE_DIR/$TEMP_DIR/libvpx.config \
+ $BASE_DIR/$LIBVPX_SRC_DIR/vpx_dsp/vpx_dsp_rtcd_defs.pl \
+ > $BASE_DIR/$LIBVPX_CONFIG_DIR/$1/vpx_dsp_rtcd.h
+
+ rm -rf $BASE_DIR/$TEMP_DIR/libvpx.config
+}
+
+# Generate Config files. "--enable-external-build" must be set to skip
+# detection of capabilities on specific targets.
+# $1 - Header file directory.
+# $2 - Config command line.
+function gen_config_files {
+ ./configure $2 > /dev/null
+
+ # Disable HAVE_UNISTD_H as it causes vp8 to try to detect how many cpus
+ # available, which doesn't work from iniside a sandbox on linux.
+ ( echo '/HAVE_UNISTD_H/s/[01]/0/' ; echo 'w' ; echo 'q' ) | ed -s vpx_config.h
+
+ # Generate vpx_config.asm. Do not create one for mips.
+ if [[ "$1" != *mipsel && "$1" != *mips64el ]]; then
+ if [[ "$1" == *x64* ]] || [[ "$1" == *ia32* ]]; then
+ egrep "#define [A-Z0-9_]+ [01]" vpx_config.h | awk '{print "%define " $2 " " $3}' > vpx_config.asm
+ else
+ egrep "#define [A-Z0-9_]+ [01]" vpx_config.h | awk '{print $2 " EQU " $3}' | perl $BASE_DIR/$LIBVPX_SRC_DIR/build/make/ads2gas.pl > vpx_config.asm
+ fi
+ fi
+
+ cp vpx_config.* $BASE_DIR/$LIBVPX_CONFIG_DIR/$1
+ make_clean
+ rm -rf vpx_config.*
+}
+
+echo "Create temporary directory."
+TEMP_DIR="$LIBVPX_SRC_DIR.temp"
+rm -rf $TEMP_DIR
+cp -R $LIBVPX_SRC_DIR $TEMP_DIR
+cd $TEMP_DIR
+
+echo "Generate config files."
+all_platforms="--enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384 $DISABLE_AVX"
+gen_config_files linux/ia32 "--target=x86-linux-gcc --disable-ccache --enable-pic --enable-realtime-only ${all_platforms}"
+gen_config_files linux/x64 "--target=x86_64-linux-gcc --disable-ccache --enable-pic --enable-realtime-only ${all_platforms}"
+gen_config_files linux/arm "--target=armv6-linux-gcc --enable-pic --enable-realtime-only --disable-install-bins --disable-install-libs --disable-edsp ${all_platforms}"
+gen_config_files linux/arm-neon "--target=armv7-linux-gcc --enable-pic --enable-realtime-only --disable-edsp ${all_platforms}"
+gen_config_files linux/arm-neon-cpu-detect "--target=armv7-linux-gcc --enable-pic --enable-realtime-only --enable-runtime-cpu-detect --disable-edsp ${all_platforms}"
+gen_config_files linux/arm64 "--force-target=armv8-linux-gcc --enable-pic --enable-realtime-only --disable-edsp ${all_platforms}"
+gen_config_files linux/mipsel "--target=mips32-linux-gcc ${all_platforms}"
+gen_config_files linux/mips64el "--target=mips64-linux-gcc ${all_platforms}"
+gen_config_files linux/generic "--target=generic-gnu --enable-pic --enable-realtime-only ${all_platforms}"
+gen_config_files win/ia32 "--target=x86-win32-vs12 --enable-realtime-only ${all_platforms}"
+gen_config_files win/x64 "--target=x86_64-win64-vs12 --enable-realtime-only ${all_platforms}"
+gen_config_files mac/ia32 "--target=x86-darwin9-gcc --enable-pic --enable-realtime-only ${all_platforms}"
+gen_config_files mac/x64 "--target=x86_64-darwin9-gcc --enable-pic --enable-realtime-only ${all_platforms}"
+gen_config_files nacl "--target=generic-gnu --enable-pic --enable-realtime-only ${all_platforms}"
+
+echo "Remove temporary directory."
+cd $BASE_DIR
+rm -rf $TEMP_DIR
+
+echo "Lint libvpx configuration."
+lint_config linux/ia32
+lint_config linux/x64
+lint_config linux/arm
+lint_config linux/arm-neon
+lint_config linux/arm-neon-cpu-detect
+lint_config linux/arm64
+lint_config linux/mipsel
+lint_config linux/mips64el
+lint_config linux/generic
+lint_config win/ia32
+lint_config win/x64
+lint_config mac/ia32
+lint_config mac/x64
+lint_config nacl
+
+echo "Create temporary directory."
+TEMP_DIR="$LIBVPX_SRC_DIR.temp"
+rm -rf $TEMP_DIR
+cp -R $LIBVPX_SRC_DIR $TEMP_DIR
+cd $TEMP_DIR
+
+gen_rtcd_header linux/ia32 x86
+gen_rtcd_header linux/x64 x86_64
+gen_rtcd_header linux/arm armv6
+gen_rtcd_header linux/arm-neon armv7
+gen_rtcd_header linux/arm-neon-cpu-detect armv7
+gen_rtcd_header linux/arm64 armv8
+gen_rtcd_header linux/mipsel mipsel
+gen_rtcd_header linux/mips64el mips64el
+gen_rtcd_header linux/generic generic
+gen_rtcd_header win/ia32 x86
+gen_rtcd_header win/x64 x86_64
+gen_rtcd_header mac/ia32 x86
+gen_rtcd_header mac/x64 x86_64
+gen_rtcd_header nacl nacl
+
+echo "Prepare Makefile."
+./configure --target=generic-gnu > /dev/null
+make_clean
+
+if [ -z $ONLY_CONFIGS ]; then
+ # Remove existing .gni file.
+ rm -rf $BASE_DIR/libvpx_srcs.gni
+ write_license $BASE_DIR/libvpx_srcs.gni
+
+ echo "Generate X86 source list."
+ config=$(print_config linux/ia32)
+ make_clean
+ make libvpx_srcs.txt target=libs $config > /dev/null
+ convert_srcs_to_project_files libvpx_srcs.txt libvpx_srcs_x86
+
+ # Copy vpx_version.h. The file should be the same for all platforms.
+ cp vpx_version.h $BASE_DIR/$LIBVPX_CONFIG_DIR
+
+ echo "Generate X86_64 source list."
+ config=$(print_config linux/x64)
+ make_clean
+ make libvpx_srcs.txt target=libs $config > /dev/null
+ convert_srcs_to_project_files libvpx_srcs.txt libvpx_srcs_x86_64
+
+ echo "Generate ARM source list."
+ config=$(print_config linux/arm)
+ make_clean
+ make libvpx_srcs.txt target=libs $config > /dev/null
+ convert_srcs_to_project_files libvpx_srcs.txt libvpx_srcs_arm
+
+ echo "Generate ARM NEON source list."
+ config=$(print_config linux/arm-neon)
+ make_clean
+ make libvpx_srcs.txt target=libs $config > /dev/null
+ convert_srcs_to_project_files libvpx_srcs.txt libvpx_srcs_arm_neon
+
+ echo "Generate ARM NEON CPU DETECT source list."
+ config=$(print_config linux/arm-neon-cpu-detect)
+ make_clean
+ make libvpx_srcs.txt target=libs $config > /dev/null
+ convert_srcs_to_project_files libvpx_srcs.txt libvpx_srcs_arm_neon_cpu_detect
+
+ echo "Generate ARM64 source list."
+ config=$(print_config linux/arm64)
+ make_clean
+ make libvpx_srcs.txt target=libs $config > /dev/null
+ convert_srcs_to_project_files libvpx_srcs.txt libvpx_srcs_arm64
+
+ echo "Generate MIPS source list."
+ config=$(print_config_basic linux/mipsel)
+ make_clean
+ make libvpx_srcs.txt target=libs $config > /dev/null
+ convert_srcs_to_project_files libvpx_srcs.txt libvpx_srcs_mips
+
+ echo "MIPS64 source list is identical to MIPS source list. No need to generate it."
+
+ echo "Generate NaCl source list."
+ config=$(print_config_basic nacl)
+ make_clean
+ make libvpx_srcs.txt target=libs $config > /dev/null
+ convert_srcs_to_project_files libvpx_srcs.txt libvpx_srcs_nacl
+
+ echo "Generate GENERIC source list."
+ config=$(print_config_basic linux/generic)
+ make_clean
+ make libvpx_srcs.txt target=libs $config > /dev/null
+ convert_srcs_to_project_files libvpx_srcs.txt libvpx_srcs_generic
+fi
+
+echo "Remove temporary directory."
+cd $BASE_DIR
+rm -rf $TEMP_DIR
+
+# TODO(fgalligan): Can we turn on "--enable-realtime-only" for mipsel?
diff --git a/third_party/libvpx_new/include/elf.h b/third_party/libvpx_new/include/elf.h
new file mode 100644
index 0000000..32e3011
--- /dev/null
+++ b/third_party/libvpx_new/include/elf.h
@@ -0,0 +1,445 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ *** To edit the content of this header, modify the corresponding
+ *** source file (e.g. under external/kernel-headers/original/) then
+ *** run bionic/libc/kernel/tools/update_all.py
+ ***
+ *** Any manual change here will be lost the next time this script will
+ *** be run. You've been warned!
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+
+/*
+This file was copied from /bionic/libc/kernel/uapi/linux/elf.h of android
+source tree and has below changes.
+
+- Removed included header file linux/types.h, linux/elf-em.h
+- Added stdint.h
+- Replaced __u32 with uint32_t
+- Replaced __u16 with uint16_t
+- Replaced __u64 with uint64_t
+- Replaced __s32 with int32_t
+- Replaced __s16 with int16_t
+- Replaced __s64 with int64_t
+*/
+
+#ifndef _UAPI_LINUX_ELF_H
+#define _UAPI_LINUX_ELF_H
+
+#include <stdint.h>
+
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+typedef uint32_t Elf32_Addr;
+typedef uint16_t Elf32_Half;
+typedef uint32_t Elf32_Off;
+typedef int32_t Elf32_Sword;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+typedef uint32_t Elf32_Word;
+typedef uint64_t Elf64_Addr;
+typedef uint16_t Elf64_Half;
+typedef int16_t Elf64_SHalf;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+typedef uint64_t Elf64_Off;
+typedef int32_t Elf64_Sword;
+typedef uint32_t Elf64_Word;
+typedef uint64_t Elf64_Xword;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+typedef int64_t Elf64_Sxword;
+#define PT_NULL 0
+#define PT_LOAD 1
+#define PT_DYNAMIC 2
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define PT_INTERP 3
+#define PT_NOTE 4
+#define PT_SHLIB 5
+#define PT_PHDR 6
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define PT_TLS 7
+#define PT_LOOS 0x60000000
+#define PT_HIOS 0x6fffffff
+#define PT_LOPROC 0x70000000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define PT_HIPROC 0x7fffffff
+#define PT_GNU_EH_FRAME 0x6474e550
+#define PT_GNU_STACK (PT_LOOS + 0x474e551)
+#define PN_XNUM 0xffff
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define ET_NONE 0
+#define ET_REL 1
+#define ET_EXEC 2
+#define ET_DYN 3
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define ET_CORE 4
+#define ET_LOPROC 0xff00
+#define ET_HIPROC 0xffff
+#define DT_NULL 0
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define DT_NEEDED 1
+#define DT_PLTRELSZ 2
+#define DT_PLTGOT 3
+#define DT_HASH 4
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define DT_STRTAB 5
+#define DT_SYMTAB 6
+#define DT_RELA 7
+#define DT_RELASZ 8
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define DT_RELAENT 9
+#define DT_STRSZ 10
+#define DT_SYMENT 11
+#define DT_INIT 12
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define DT_FINI 13
+#define DT_SONAME 14
+#define DT_RPATH 15
+#define DT_SYMBOLIC 16
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define DT_REL 17
+#define DT_RELSZ 18
+#define DT_RELENT 19
+#define DT_PLTREL 20
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define DT_DEBUG 21
+#define DT_TEXTREL 22
+#define DT_JMPREL 23
+#define DT_ENCODING 32
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define OLD_DT_LOOS 0x60000000
+#define DT_LOOS 0x6000000d
+#define DT_HIOS 0x6ffff000
+#define DT_VALRNGLO 0x6ffffd00
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define DT_VALRNGHI 0x6ffffdff
+#define DT_ADDRRNGLO 0x6ffffe00
+#define DT_ADDRRNGHI 0x6ffffeff
+#define DT_VERSYM 0x6ffffff0
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define DT_RELACOUNT 0x6ffffff9
+#define DT_RELCOUNT 0x6ffffffa
+#define DT_FLAGS_1 0x6ffffffb
+#define DT_VERDEF 0x6ffffffc
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define DT_VERDEFNUM 0x6ffffffd
+#define DT_VERNEED 0x6ffffffe
+#define DT_VERNEEDNUM 0x6fffffff
+#define OLD_DT_HIOS 0x6fffffff
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define DT_LOPROC 0x70000000
+#define DT_HIPROC 0x7fffffff
+#define STB_LOCAL 0
+#define STB_GLOBAL 1
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define STB_WEAK 2
+#define STT_NOTYPE 0
+#define STT_OBJECT 1
+#define STT_FUNC 2
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define STT_SECTION 3
+#define STT_FILE 4
+#define STT_COMMON 5
+#define STT_TLS 6
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define ELF_ST_BIND(x) ((x) >> 4)
+#define ELF_ST_TYPE(x) (((unsigned int) x) & 0xf)
+#define ELF32_ST_BIND(x) ELF_ST_BIND(x)
+#define ELF32_ST_TYPE(x) ELF_ST_TYPE(x)
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define ELF64_ST_BIND(x) ELF_ST_BIND(x)
+#define ELF64_ST_TYPE(x) ELF_ST_TYPE(x)
+typedef struct dynamic{
+ Elf32_Sword d_tag;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ union{
+ Elf32_Sword d_val;
+ Elf32_Addr d_ptr;
+ } d_un;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+} Elf32_Dyn;
+typedef struct {
+ Elf64_Sxword d_tag;
+ union {
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Xword d_val;
+ Elf64_Addr d_ptr;
+ } d_un;
+} Elf64_Dyn;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define ELF32_R_SYM(x) ((x) >> 8)
+#define ELF32_R_TYPE(x) ((x) & 0xff)
+#define ELF64_R_SYM(i) ((i) >> 32)
+#define ELF64_R_TYPE(i) ((i) & 0xffffffff)
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+typedef struct elf32_rel {
+ Elf32_Addr r_offset;
+ Elf32_Word r_info;
+} Elf32_Rel;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+typedef struct elf64_rel {
+ Elf64_Addr r_offset;
+ Elf64_Xword r_info;
+} Elf64_Rel;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+typedef struct elf32_rela{
+ Elf32_Addr r_offset;
+ Elf32_Word r_info;
+ Elf32_Sword r_addend;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+} Elf32_Rela;
+typedef struct elf64_rela {
+ Elf64_Addr r_offset;
+ Elf64_Xword r_info;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Sxword r_addend;
+} Elf64_Rela;
+typedef struct elf32_sym{
+ Elf32_Word st_name;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf32_Addr st_value;
+ Elf32_Word st_size;
+ unsigned char st_info;
+ unsigned char st_other;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf32_Half st_shndx;
+} Elf32_Sym;
+typedef struct elf64_sym {
+ Elf64_Word st_name;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ unsigned char st_info;
+ unsigned char st_other;
+ Elf64_Half st_shndx;
+ Elf64_Addr st_value;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Xword st_size;
+} Elf64_Sym;
+#define EI_NIDENT 16
+typedef struct elf32_hdr{
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ unsigned char e_ident[EI_NIDENT];
+ Elf32_Half e_type;
+ Elf32_Half e_machine;
+ Elf32_Word e_version;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf32_Addr e_entry;
+ Elf32_Off e_phoff;
+ Elf32_Off e_shoff;
+ Elf32_Word e_flags;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf32_Half e_ehsize;
+ Elf32_Half e_phentsize;
+ Elf32_Half e_phnum;
+ Elf32_Half e_shentsize;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf32_Half e_shnum;
+ Elf32_Half e_shstrndx;
+} Elf32_Ehdr;
+typedef struct elf64_hdr {
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ unsigned char e_ident[EI_NIDENT];
+ Elf64_Half e_type;
+ Elf64_Half e_machine;
+ Elf64_Word e_version;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Addr e_entry;
+ Elf64_Off e_phoff;
+ Elf64_Off e_shoff;
+ Elf64_Word e_flags;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Half e_ehsize;
+ Elf64_Half e_phentsize;
+ Elf64_Half e_phnum;
+ Elf64_Half e_shentsize;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Half e_shnum;
+ Elf64_Half e_shstrndx;
+} Elf64_Ehdr;
+#define PF_R 0x4
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define PF_W 0x2
+#define PF_X 0x1
+typedef struct elf32_phdr{
+ Elf32_Word p_type;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf32_Off p_offset;
+ Elf32_Addr p_vaddr;
+ Elf32_Addr p_paddr;
+ Elf32_Word p_filesz;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf32_Word p_memsz;
+ Elf32_Word p_flags;
+ Elf32_Word p_align;
+} Elf32_Phdr;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+typedef struct elf64_phdr {
+ Elf64_Word p_type;
+ Elf64_Word p_flags;
+ Elf64_Off p_offset;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Addr p_vaddr;
+ Elf64_Addr p_paddr;
+ Elf64_Xword p_filesz;
+ Elf64_Xword p_memsz;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Xword p_align;
+} Elf64_Phdr;
+#define SHT_NULL 0
+#define SHT_PROGBITS 1
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define SHT_SYMTAB 2
+#define SHT_STRTAB 3
+#define SHT_RELA 4
+#define SHT_HASH 5
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define SHT_DYNAMIC 6
+#define SHT_NOTE 7
+#define SHT_NOBITS 8
+#define SHT_REL 9
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define SHT_SHLIB 10
+#define SHT_DYNSYM 11
+#define SHT_NUM 12
+#define SHT_LOPROC 0x70000000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define SHT_HIPROC 0x7fffffff
+#define SHT_LOUSER 0x80000000
+#define SHT_HIUSER 0xffffffff
+#define SHF_WRITE 0x1
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define SHF_ALLOC 0x2
+#define SHF_EXECINSTR 0x4
+#define SHF_MASKPROC 0xf0000000
+#define SHN_UNDEF 0
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define SHN_LORESERVE 0xff00
+#define SHN_LOPROC 0xff00
+#define SHN_HIPROC 0xff1f
+#define SHN_ABS 0xfff1
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define SHN_COMMON 0xfff2
+#define SHN_HIRESERVE 0xffff
+typedef struct elf32_shdr {
+ Elf32_Word sh_name;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf32_Word sh_type;
+ Elf32_Word sh_flags;
+ Elf32_Addr sh_addr;
+ Elf32_Off sh_offset;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf32_Word sh_size;
+ Elf32_Word sh_link;
+ Elf32_Word sh_info;
+ Elf32_Word sh_addralign;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf32_Word sh_entsize;
+} Elf32_Shdr;
+typedef struct elf64_shdr {
+ Elf64_Word sh_name;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Word sh_type;
+ Elf64_Xword sh_flags;
+ Elf64_Addr sh_addr;
+ Elf64_Off sh_offset;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Xword sh_size;
+ Elf64_Word sh_link;
+ Elf64_Word sh_info;
+ Elf64_Xword sh_addralign;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Xword sh_entsize;
+} Elf64_Shdr;
+#define EI_MAG0 0
+#define EI_MAG1 1
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define EI_MAG2 2
+#define EI_MAG3 3
+#define EI_CLASS 4
+#define EI_DATA 5
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define EI_VERSION 6
+#define EI_OSABI 7
+#define EI_PAD 8
+#define ELFMAG0 0x7f
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define ELFMAG1 'E'
+#define ELFMAG2 'L'
+#define ELFMAG3 'F'
+#define ELFMAG "\177ELF"
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define SELFMAG 4
+#define ELFCLASSNONE 0
+#define ELFCLASS32 1
+#define ELFCLASS64 2
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define ELFCLASSNUM 3
+#define ELFDATANONE 0
+#define ELFDATA2LSB 1
+#define ELFDATA2MSB 2
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define EV_NONE 0
+#define EV_CURRENT 1
+#define EV_NUM 2
+#define ELFOSABI_NONE 0
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define ELFOSABI_LINUX 3
+#ifndef ELF_OSABI
+#define ELF_OSABI ELFOSABI_NONE
+#endif
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define NT_PRSTATUS 1
+#define NT_PRFPREG 2
+#define NT_PRPSINFO 3
+#define NT_TASKSTRUCT 4
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define NT_AUXV 6
+#define NT_SIGINFO 0x53494749
+#define NT_FILE 0x46494c45
+#define NT_PRXFPREG 0x46e62b7f
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define NT_PPC_VMX 0x100
+#define NT_PPC_SPE 0x101
+#define NT_PPC_VSX 0x102
+#define NT_386_TLS 0x200
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define NT_386_IOPERM 0x201
+#define NT_X86_XSTATE 0x202
+#define NT_S390_HIGH_GPRS 0x300
+#define NT_S390_TIMER 0x301
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define NT_S390_TODCMP 0x302
+#define NT_S390_TODPREG 0x303
+#define NT_S390_CTRS 0x304
+#define NT_S390_PREFIX 0x305
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define NT_S390_LAST_BREAK 0x306
+#define NT_S390_SYSTEM_CALL 0x307
+#define NT_S390_TDB 0x308
+#define NT_ARM_VFP 0x400
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define NT_ARM_TLS 0x401
+#define NT_ARM_HW_BREAK 0x402
+#define NT_ARM_HW_WATCH 0x403
+#define NT_METAG_CBUF 0x500
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define NT_METAG_RPIPE 0x501
+#define NT_METAG_TLS 0x502
+typedef struct elf32_note {
+ Elf32_Word n_namesz;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf32_Word n_descsz;
+ Elf32_Word n_type;
+} Elf32_Nhdr;
+typedef struct elf64_note {
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ Elf64_Word n_namesz;
+ Elf64_Word n_descsz;
+ Elf64_Word n_type;
+} Elf64_Nhdr;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#endif
diff --git a/third_party/libvpx_new/libvpx.gyp b/third_party/libvpx_new/libvpx.gyp
new file mode 100644
index 0000000..1675161
--- /dev/null
+++ b/third_party/libvpx_new/libvpx.gyp
@@ -0,0 +1,291 @@
+# Copyright (c) 2012 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+{
+ 'variables': {
+ 'libvpx_build_vp9%': 1,
+ 'libvpx_source%': 'source/libvpx',
+ # Disable LTO for neon targets
+ # crbug.com/408997
+ 'use_lto%': 0,
+ 'conditions': [
+ ['os_posix==1', {
+ 'asm_obj_extension': 'o',
+ }],
+ ['OS=="win"', {
+ 'asm_obj_extension': 'obj',
+ }],
+
+ ['msan==1', {
+ 'target_arch_full': 'generic',
+ }, {
+ 'conditions': [
+ ['(target_arch=="arm" or target_arch=="armv7") and arm_neon==1', {
+ 'target_arch_full': 'arm-neon',
+ }, {
+ 'conditions': [
+ ['OS=="android" and ((target_arch=="arm" or target_arch=="armv7") and arm_neon==0)', {
+ 'target_arch_full': 'arm-neon-cpu-detect',
+ }, {
+ 'target_arch_full': '<(target_arch)',
+ }],
+ ],
+ }],
+ ['target_arch=="arm64"', {
+ 'target_arch_full': 'arm64',
+ }],
+ ],
+ }],
+
+ ['os_posix == 1 and OS != "mac"', {
+ 'OS_CATEGORY%': 'linux',
+ }, {
+ 'OS_CATEGORY%': '<(OS)',
+ }],
+ ],
+
+ # Location of the intermediate output.
+ 'shared_generated_dir': '<(SHARED_INTERMEDIATE_DIR)/third_party/libvpx',
+ },
+ 'target_defaults': {
+ 'target_conditions': [
+ ['<(libvpx_build_vp9)==0', {
+ 'sources/': [ ['exclude', '(^|/)vp9/'], ],
+ }],
+ ],
+ 'variables': {
+ 'conditions': [
+ ['OS=="win" and buildtype=="Official"', {
+ # Do not set to 'size', as it results in an error on win64.
+ 'optimize' :'speed',
+ }],
+ ],
+ 'clang_warning_flags': [
+ # libvpx heavily relies on implicit enum casting.
+ '-Wno-conversion',
+ # libvpx does `if ((a == b))` in some places.
+ '-Wno-parentheses-equality',
+ # libvpx has many static functions in header, which trigger this warning
+ '-Wno-unused-function',
+ ],
+ 'clang_warning_flags_unset': [
+ # libvpx does assert(!"foo"); in some places.
+ '-Wstring-conversion',
+ ],
+ },
+ },
+ 'conditions': [
+ ['target_arch=="ia32"', {
+ 'includes': ['libvpx_srcs_x86_intrinsics.gypi', ],
+ }],
+ ['target_arch=="x64" and msan==0', {
+ 'includes': ['libvpx_srcs_x86_64_intrinsics.gypi', ],
+ }],
+ [ '(target_arch=="arm" or target_arch=="armv7") and arm_neon==0 and OS=="android"', {
+ # When building for targets which may not have NEON (but may!), include
+ # support for neon and hide it behind Android cpu-features.
+ 'includes': ['libvpx_srcs_arm_neon_cpu_detect_intrinsics.gypi', ],
+ }],
+ [ '(target_arch != "arm" and target_arch != "armv7") and \
+ (target_arch != "mipsel" and target_arch != "mips64el")', {
+ 'targets': [
+ {
+ # This libvpx target contains both encoder and decoder.
+ # Encoder is configured to be realtime only.
+ 'target_name': 'libvpx_new',
+ 'type': 'static_library',
+ 'variables': {
+ 'yasm_output_path': '<(SHARED_INTERMEDIATE_DIR)/third_party/libvpx',
+ 'OS_CATEGORY%': '<(OS_CATEGORY)',
+ 'yasm_flags': [
+ '-D', 'CHROMIUM',
+ '-I', 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '-I', 'source/config',
+ '-I', '<(libvpx_source)',
+ ],
+ # yasm only gets the flags we define. It doesn't inherit any of the
+ # really useful defines that come with a gcc invocation. In this
+ # case, we rely on __ANDROID__ to set 'rand' to 'lrand48'.
+ # Previously we used the builtin _rand but that's gone away.
+ 'conditions': [
+ ['OS=="android"', {
+ 'yasm_flags': [
+ '-D', '__ANDROID__',
+ ],
+ }],
+ ],
+ },
+ 'includes': [
+ '../yasm/yasm_compile.gypi'
+ ],
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ 'source/config',
+ '<(libvpx_source)',
+ '<(libvpx_source)/vp8/common',
+ '<(libvpx_source)/vp8/decoder',
+ '<(libvpx_source)/vp8/encoder',
+ '<(shared_generated_dir)', # Provides vpx_rtcd.h.
+ ],
+ 'direct_dependent_settings': {
+ 'include_dirs': [
+ '<(libvpx_source)',
+ ],
+ },
+ # VS2010 does not correctly incrementally link obj files generated
+ # from asm files. This flag disables UseLibraryDependencyInputs to
+ # avoid this problem.
+ 'msvs_2010_disable_uldi_when_referenced': 1,
+ 'conditions': [
+ ['target_arch=="ia32"', {
+ 'includes': [
+ 'libvpx_srcs_x86.gypi',
+ ],
+ 'dependencies': [
+ 'libvpx_intrinsics_mmx',
+ 'libvpx_intrinsics_sse2',
+ # Currently no sse3 intrinsic functions
+ #'libvpx_intrinsics_sse3',
+ 'libvpx_intrinsics_ssse3',
+ 'libvpx_intrinsics_sse4_1',
+ # Currently no avx intrinsic functions
+ #'libvpx_intrinsics_avx',
+ 'libvpx_intrinsics_avx2',
+ ],
+ }],
+ ['target_arch=="arm64"', {
+ 'includes': [ 'libvpx_srcs_arm64.gypi', ],
+ }],
+ ['target_arch=="x64"', {
+ 'conditions': [
+ ['msan==1', {
+ 'includes': [ 'libvpx_srcs_generic.gypi', ],
+ }, {
+ 'includes': [
+ 'libvpx_srcs_x86_64.gypi',
+ ],
+ 'dependencies': [
+ 'libvpx_intrinsics_mmx',
+ 'libvpx_intrinsics_sse2',
+ # Currently no sse3 intrinsic functions
+ #'libvpx_intrinsics_sse3',
+ 'libvpx_intrinsics_ssse3',
+ 'libvpx_intrinsics_sse4_1',
+ # Currently no avx intrinsic functions
+ #'libvpx_intrinsics_avx',
+ 'libvpx_intrinsics_avx2',
+ ],
+ }],
+ ],
+ }],
+ ],
+ },
+ ],
+ },
+ ],
+ # 'libvpx' target for mipsel and mips64el builds.
+ [ 'target_arch=="mipsel" or target_arch=="mips64el"', {
+ 'targets': [
+ {
+ # This libvpx target contains both encoder and decoder.
+ # Encoder is configured to be realtime only.
+ 'target_name': 'libvpx_new',
+ 'type': 'static_library',
+ 'variables': {
+ 'shared_generated_dir':
+ '<(SHARED_INTERMEDIATE_DIR)/third_party/libvpx',
+ },
+ 'includes': [
+ 'libvpx_srcs_mips.gypi',
+ ],
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ 'source/config',
+ '<(libvpx_source)',
+ '<(libvpx_source)/vp8/common',
+ '<(libvpx_source)/vp8/decoder',
+ '<(libvpx_source)/vp8/encoder',
+ ],
+ 'direct_dependent_settings': {
+ 'include_dirs': [
+ '<(libvpx_source)',
+ ],
+ },
+ 'sources': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)/vpx_config.c',
+ ],
+ },
+ ],
+ },
+ ],
+ # 'libvpx' target for ARM builds.
+ [ '(target_arch=="arm" or target_arch=="armv7") ', {
+ 'targets': [
+ {
+ # This libvpx target contains both encoder and decoder.
+ # Encoder is configured to be realtime only.
+ 'target_name': 'libvpx_new',
+ 'type': 'static_library',
+
+ 'includes': [ 'ads2gas.gypi', ],
+
+ 'xcode_settings': {
+ 'OTHER_CFLAGS': [
+ '-I<!(pwd)/source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '-I<!(pwd)/source/config',
+ '-I<(shared_generated_dir)',
+ ],
+ },
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ 'source/config',
+ '<(libvpx_source)',
+ ],
+ 'direct_dependent_settings': {
+ 'include_dirs': [
+ '<(libvpx_source)',
+ ],
+ },
+ 'conditions': [
+ # Libvpx optimizations for ARMv6 or ARMv7 without NEON.
+ ['arm_neon==0', {
+ 'conditions': [
+ ['OS=="android"', {
+ 'includes': [
+ 'libvpx_srcs_arm_neon_cpu_detect.gypi',
+ ],
+ 'dependencies': [
+ 'libvpx_intrinsics_neon',
+ ],
+ }, {
+ 'includes': [
+ 'libvpx_srcs_arm.gypi',
+ ],
+ }],
+ ],
+ }],
+ # Libvpx optimizations for ARMv7 with NEON.
+ ['arm_neon==1', {
+ 'includes': [
+ 'libvpx_srcs_arm_neon.gypi',
+ ],
+ }],
+ ['OS == "android"', {
+ 'dependencies': [
+ '../../build/android/ndk.gyp:cpu_features',
+ ],
+ }],
+ ['OS == "ios"', {
+ 'xcode_settings': {
+ 'OTHER_CFLAGS!': [
+ # Breaks at least boolhuff_armv5te:token_high_bit_not_set_ev.
+ '-fstack-protector-all', # Implies -fstack-protector
+ ],
+ },
+ }],
+ ],
+ },
+ ],
+ }],
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_nacl.gyp b/third_party/libvpx_new/libvpx_nacl.gyp
new file mode 100644
index 0000000..21aa3ad
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_nacl.gyp
@@ -0,0 +1,33 @@
+# Copyright 2013 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+{
+ 'variables': {
+ 'libvpx_source%': 'source/libvpx',
+ 'werror': '',
+ },
+ 'includes': [
+ '../../native_client/build/untrusted.gypi',
+ ],
+ 'targets': [
+ {
+ 'target_name': 'libvpx_nacl',
+ 'type': 'none',
+ 'variables': {
+ 'nlib_target': 'libvpx_nacl.a',
+ 'build_glibc': 0,
+ 'build_newlib': 0,
+ 'build_pnacl_newlib': 1,
+ },
+ 'include_dirs': [
+ 'source/config/nacl',
+ 'source/config',
+ '<(libvpx_source)',
+ '<(libvpx_source)/vp8/common',
+ '<(libvpx_source)/vp8/decoder',
+ '<(libvpx_source)/vp8/encoder',
+ ],
+ 'includes': ['libvpx_srcs_nacl.gypi', ],
+ }, # end of target 'libvpx_nacl'
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs.gni b/third_party/libvpx_new/libvpx_srcs.gni
new file mode 100644
index 0000000..451ba45
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs.gni
@@ -0,0 +1,3387 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+libvpx_srcs_x86 = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/coefupdateprobs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/copy_c.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/default_coef_probs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/dequantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/generic/systemdependent.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/header.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idct_blk.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idctllm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/invtrans.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter_filters.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mbpitch.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyx.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/systemdependent.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/threading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_entropymodedata.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/filter_x86.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/filter_x86.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/loopfilter_x86.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/vp8_asm_stubs.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decoderthreading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/threading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/treereader.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/block.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_tokens.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/defaultcoefcounts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ethreading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/vp8_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_enums.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_textblit.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_avg.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_block.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_iface_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_codec_internal.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_psnr.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_codec.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_image.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_psnr.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8cx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8dx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_codec.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_frame_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_image.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_integer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/intrapred.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/sad.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/subtract.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/txfm_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/convolve.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_dct32x32_impl_avx2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_dct32x32_impl_sse2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_txfm_impl_sse2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_txfm_sse2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/inv_txfm_sse2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/txfm_common_sse2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_asm_stubs.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/include/vpx_mem_intrnl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/bitops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/emmintrin_compat.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops_aligned.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/msvc.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/system_state.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_once.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_timer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/x86.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/gen_scalers.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/vpx_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12config.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12extend.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/yv12config.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/endian_inl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.h",
+]
+libvpx_srcs_x86_assembly = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/copy_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/copy_sse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/dequantize_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/idctllm_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/idctllm_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/iwalsh_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/iwalsh_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/loopfilter_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/mfqe_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/postproc_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/postproc_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/recon_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/recon_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/subpixel_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/subpixel_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/subpixel_ssse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/vp8_loopfilter_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/dct_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/dct_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/encodeopt.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/quantize_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/x86/vp9_mfqe_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/x86/vp9_postproc_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_dct_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_error_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_temporal_filter_apply_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/halfpix_variance_impl_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/intrapred_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/intrapred_ssse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/inv_wht_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/loopfilter_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad4d_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_sse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_sse4.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_ssse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/subpel_variance_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/subtract_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/variance_impl_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_convolve_copy_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_8t_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_8t_ssse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_bilinear_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_bilinear_ssse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/emms.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/x86_abi_support.asm",
+]
+libvpx_srcs_x86_mmx = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/idct_blk_mmx.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/vp8_enc_stubs_mmx.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/variance_mmx.c",
+]
+libvpx_srcs_x86_sse2 = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/idct_blk_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/recon_wrapper_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/denoising_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/vp8_enc_stubs_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/vp8_quantize_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/x86/vp9_idct_intrin_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_avg_intrin_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_dct_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_denoiser_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_quantize_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_txfm_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/halfpix_variance_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/inv_txfm_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/loopfilter_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/quantize_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/variance_sse2.c",
+]
+libvpx_srcs_x86_sse3 = [
+]
+libvpx_srcs_x86_ssse3 = [
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/quantize_ssse3.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_dct_ssse3.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_8t_intrin_ssse3.c",
+]
+libvpx_srcs_x86_sse4_1 = [
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/quantize_sse4.c",
+]
+libvpx_srcs_x86_avx = [
+]
+libvpx_srcs_x86_avx2 = [
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_error_intrin_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_txfm_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/loopfilter_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad4d_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/variance_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/variance_impl_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_8t_intrin_avx2.c",
+]
+libvpx_srcs_x86_64 = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/coefupdateprobs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/copy_c.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/default_coef_probs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/dequantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/generic/systemdependent.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/header.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idct_blk.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idctllm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/invtrans.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter_filters.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mbpitch.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyx.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/systemdependent.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/threading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_entropymodedata.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/filter_x86.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/filter_x86.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/loopfilter_x86.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/vp8_asm_stubs.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decoderthreading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/threading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/treereader.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/block.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_tokens.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/defaultcoefcounts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ethreading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/vp8_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_enums.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_textblit.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_avg.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_block.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_iface_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_codec_internal.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_psnr.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_codec.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_image.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_psnr.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8cx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8dx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_codec.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_frame_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_image.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_integer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/intrapred.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/sad.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/subtract.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/txfm_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/convolve.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_dct32x32_impl_avx2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_dct32x32_impl_sse2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_txfm_impl_sse2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_txfm_sse2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/inv_txfm_sse2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/txfm_common_sse2.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_asm_stubs.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/include/vpx_mem_intrnl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/bitops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/emmintrin_compat.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops_aligned.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/msvc.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/system_state.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_once.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_timer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/x86.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/gen_scalers.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/vpx_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12config.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12extend.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/yv12config.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/endian_inl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.h",
+]
+libvpx_srcs_x86_64_assembly = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/copy_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/copy_sse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/dequantize_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/idctllm_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/idctllm_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/iwalsh_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/iwalsh_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/loopfilter_block_sse2_x86_64.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/loopfilter_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/mfqe_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/postproc_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/postproc_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/recon_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/recon_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/subpixel_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/subpixel_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/subpixel_ssse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/vp8_loopfilter_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/dct_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/dct_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/encodeopt.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/quantize_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/x86/vp9_mfqe_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/x86/vp9_postproc_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_dct_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_dct_ssse3_x86_64.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_error_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_quantize_ssse3_x86_64.asm",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_temporal_filter_apply_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_txfm_ssse3_x86_64.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/halfpix_variance_impl_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/intrapred_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/intrapred_ssse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/inv_txfm_ssse3_x86_64.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/inv_wht_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/loopfilter_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/quantize_ssse3_x86_64.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad4d_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_sse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_sse4.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_ssse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/ssim_opt_x86_64.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/subpel_variance_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/subtract_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/variance_impl_mmx.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_convolve_copy_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_8t_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_8t_ssse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_bilinear_sse2.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_bilinear_ssse3.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/emms.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/x86_abi_support.asm",
+]
+libvpx_srcs_x86_64_mmx = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/idct_blk_mmx.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/vp8_enc_stubs_mmx.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/variance_mmx.c",
+]
+libvpx_srcs_x86_64_sse2 = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/idct_blk_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/x86/recon_wrapper_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/denoising_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/vp8_enc_stubs_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/vp8_quantize_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/x86/vp9_idct_intrin_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_avg_intrin_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_dct_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_denoiser_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_quantize_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_txfm_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/halfpix_variance_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/inv_txfm_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/loopfilter_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/quantize_sse2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/variance_sse2.c",
+]
+libvpx_srcs_x86_64_sse3 = [
+]
+libvpx_srcs_x86_64_ssse3 = [
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/quantize_ssse3.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_dct_ssse3.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_8t_intrin_ssse3.c",
+]
+libvpx_srcs_x86_64_sse4_1 = [
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/x86/quantize_sse4.c",
+]
+libvpx_srcs_x86_64_avx = [
+]
+libvpx_srcs_x86_64_avx2 = [
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/x86/vp9_error_intrin_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/fwd_txfm_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/loopfilter_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad4d_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/sad_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/variance_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/variance_impl_avx2.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/x86/vpx_subpixel_8t_intrin_avx2.c",
+]
+libvpx_srcs_arm = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/idct_blk_v6.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/bilinearfilter_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/bilinearfilter_arm.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/dequantize_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/filter_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/loopfilter_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/coefupdateprobs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/copy_c.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/default_coef_probs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/dequantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/generic/systemdependent.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/header.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idct_blk.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idctllm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/invtrans.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter_filters.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mbpitch.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyx.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/systemdependent.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/threading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_entropymodedata.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decoderthreading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/threading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/treereader.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/dct_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/block.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_tokens.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/defaultcoefcounts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ethreading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/vp8_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_enums.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_textblit.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_avg.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_block.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_iface_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_codec_internal.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_psnr.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_codec.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_image.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_psnr.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8cx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8dx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_codec.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_frame_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_image.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_integer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/subpel_variance_media.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/intrapred.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/sad.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/subtract.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/txfm_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/include/vpx_mem_intrnl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/arm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/arm_cpudetect.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/bitops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/emmintrin_compat.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops_aligned.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/msvc.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/system_state.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_once.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_timer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/gen_scalers.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/vpx_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12config.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12extend.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/yv12config.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/endian_inl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.h",
+]
+libvpx_srcs_arm_assembly = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/bilinearfilter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/copymem16x16_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/copymem8x4_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/copymem8x8_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/dc_only_idct_add_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/dequant_idct_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/dequantize_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/filter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/idct_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/intra4x4_predict_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/iwalsh_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/loopfilter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/simpleloopfilter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/sixtappredict8x4_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/armv6/walsh_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/bilinear_filter_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/sad_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_halfpixvar16x16_h_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_halfpixvar16x16_hv_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_halfpixvar16x16_v_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_media.asm",
+]
+libvpx_srcs_arm_neon = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/idct_blk_v6.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/bilinearfilter_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/bilinearfilter_arm.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/dequantize_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/filter_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/loopfilter_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/bilinearpredict_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/copymem_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/dc_only_idct_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/dequant_idct_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/dequantizeb_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/idct_blk_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/idct_dequant_0_2x_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/idct_dequant_full_2x_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/iwalsh_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/mbloopfilter_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/reconintra_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/shortidct4x4llm_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/sixtappredict_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/vp8_loopfilter_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/coefupdateprobs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/copy_c.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/default_coef_probs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/dequantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/generic/systemdependent.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/header.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idct_blk.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idctllm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/invtrans.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter_filters.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mbpitch.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyx.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/systemdependent.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/threading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_entropymodedata.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decoderthreading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/threading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/treereader.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/dct_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/denoising_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/fastquantizeb_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/shortfdct_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/block.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_tokens.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/defaultcoefcounts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ethreading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/vp8_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/arm/neon/vp9_iht4x4_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/arm/neon/vp9_iht8x8_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_enums.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_textblit.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_avg_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_dct_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_error_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_quantize_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_avg.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_block.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_iface_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_codec_internal.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_psnr.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_codec.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_image.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_psnr.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8cx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8dx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_codec.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_frame_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_image.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_integer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/fwd_txfm_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct16x16_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/intrapred_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/sad4d_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/sad_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/subpel_variance_media.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/subpel_variance_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/subtract_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/intrapred.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/sad.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/subtract.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/txfm_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/include/vpx_mem_intrnl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/arm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/arm_cpudetect.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/bitops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/emmintrin_compat.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops_aligned.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/msvc.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/system_state.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_once.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_timer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/gen_scalers.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/vpx_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12config.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12extend.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/yv12config.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/endian_inl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.h",
+]
+libvpx_srcs_arm_neon_assembly = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/bilinearfilter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/copymem16x16_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/copymem8x4_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/copymem8x8_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/dc_only_idct_add_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/dequant_idct_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/dequantize_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/filter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/idct_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/intra4x4_predict_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/iwalsh_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/loopfilter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/simpleloopfilter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/sixtappredict8x4_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/armv6/walsh_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/bilinear_filter_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct16x16_1_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct16x16_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct32x32_1_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct32x32_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct4x4_1_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct4x4_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct8x8_1_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct8x8_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/intrapred_neon_asm.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_16_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_4_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_8_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_mb_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/sad_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/save_reg_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_halfpixvar16x16_h_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_halfpixvar16x16_hv_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_halfpixvar16x16_v_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve8_avg_neon_asm.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve8_neon_asm.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve_avg_neon_asm.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve_copy_neon_asm.asm",
+]
+libvpx_srcs_arm_neon_cpu_detect = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/idct_blk_v6.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/bilinearfilter_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/bilinearfilter_arm.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/dequantize_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/filter_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/loopfilter_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/coefupdateprobs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/copy_c.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/default_coef_probs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/dequantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/generic/systemdependent.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/header.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idct_blk.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idctllm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/invtrans.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter_filters.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mbpitch.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyx.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/systemdependent.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/threading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_entropymodedata.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decoderthreading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/threading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/treereader.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/dct_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/block.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_tokens.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/defaultcoefcounts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ethreading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/vp8_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_enums.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_textblit.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_avg.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_block.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_iface_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_codec_internal.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_psnr.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_codec.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_image.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_psnr.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8cx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8dx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_codec.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_frame_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_image.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_integer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/subpel_variance_media.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/intrapred.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/sad.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/subtract.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/txfm_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/include/vpx_mem_intrnl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/arm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/arm_cpudetect.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/bitops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/emmintrin_compat.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops_aligned.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/msvc.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/system_state.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_once.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_timer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/gen_scalers.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/vpx_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12config.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12extend.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/yv12config.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/endian_inl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.h",
+]
+libvpx_srcs_arm_neon_cpu_detect_assembly = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/bilinearfilter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/copymem16x16_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/copymem8x4_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/copymem8x8_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/dc_only_idct_add_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/dequant_idct_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/dequantize_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/filter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/idct_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/intra4x4_predict_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/iwalsh_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/loopfilter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/simpleloopfilter_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/armv6/sixtappredict8x4_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/armv6/walsh_v6.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/bilinear_filter_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/sad_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_halfpixvar16x16_h_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_halfpixvar16x16_hv_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_halfpixvar16x16_v_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_media.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct16x16_1_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct16x16_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct32x32_1_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct32x32_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct4x4_1_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct4x4_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct8x8_1_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct8x8_add_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/intrapred_neon_asm.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_16_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_4_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_8_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_mb_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/save_reg_neon.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve8_avg_neon_asm.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve8_neon_asm.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve_avg_neon_asm.asm",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve_copy_neon_asm.asm",
+]
+libvpx_srcs_arm_neon_cpu_detect_neon = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/bilinearpredict_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/copymem_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/dc_only_idct_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/dequant_idct_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/dequantizeb_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/idct_blk_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/idct_dequant_0_2x_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/idct_dequant_full_2x_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/iwalsh_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/mbloopfilter_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/reconintra_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/shortidct4x4llm_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/sixtappredict_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/vp8_loopfilter_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/denoising_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/fastquantizeb_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/shortfdct_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/arm/neon/vp9_iht4x4_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/arm/neon/vp9_iht8x8_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_avg_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_dct_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_error_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_quantize_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/fwd_txfm_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct16x16_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/intrapred_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/sad4d_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/sad_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/subpel_variance_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/subtract_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve_neon.c",
+]
+libvpx_srcs_arm64 = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/dequantize_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/filter_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/loopfilter_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/bilinearpredict_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/copymem_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/dc_only_idct_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/dequant_idct_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/dequantizeb_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/idct_blk_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/idct_dequant_0_2x_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/idct_dequant_full_2x_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/iwalsh_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/mbloopfilter_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/reconintra_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/shortidct4x4llm_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/sixtappredict_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/arm/neon/vp8_loopfilter_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/coefupdateprobs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/copy_c.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/default_coef_probs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/dequantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/generic/systemdependent.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/header.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idct_blk.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idctllm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/invtrans.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter_filters.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mbpitch.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyx.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/systemdependent.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/threading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_entropymodedata.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decoderthreading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/threading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/treereader.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/dct_arm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/denoising_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/fastquantizeb_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/shortfdct_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/block.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_tokens.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/defaultcoefcounts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ethreading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/vp8_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/arm/neon/vp9_iht4x4_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/arm/neon/vp9_iht8x8_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_enums.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_textblit.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_avg_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_dct_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_error_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/arm/neon/vp9_quantize_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_avg.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_block.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_iface_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_codec_internal.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_psnr.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_codec.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_image.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_psnr.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8cx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8dx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_codec.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_frame_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_image.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_integer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/fwd_txfm_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct16x16_1_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct16x16_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct16x16_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct32x32_1_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct32x32_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct4x4_1_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct4x4_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct8x8_1_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/idct8x8_add_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/intrapred_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_16_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_4_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_8_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/loopfilter_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/sad4d_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/sad_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/subpel_variance_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/subtract_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/variance_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve8_avg_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve8_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve_avg_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve_copy_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/arm/vpx_convolve_neon.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/intrapred.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/sad.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/subtract.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/txfm_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/include/vpx_mem_intrnl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/arm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/arm_cpudetect.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/bitops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/emmintrin_compat.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops_aligned.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/msvc.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/system_state.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_once.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_timer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/gen_scalers.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/vpx_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12config.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12extend.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/yv12config.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/endian_inl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.h",
+]
+libvpx_srcs_arm64_assembly = [
+]
+libvpx_srcs_mips = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/coefupdateprobs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/copy_c.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/default_coef_probs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/dequantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/generic/systemdependent.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/header.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idct_blk.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idctllm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/invtrans.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter_filters.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mbpitch.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyx.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/systemdependent.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/threading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_entropymodedata.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decoderthreading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/threading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/treereader.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/block.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_tokens.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/defaultcoefcounts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ethreading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/firstpass.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/temporal_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/vp8_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_enums.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_textblit.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_avg.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_block.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_iface_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_codec_internal.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_psnr.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_codec.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_image.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_psnr.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8cx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8dx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_codec.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_frame_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_image.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_integer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/intrapred.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/sad.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/subtract.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/txfm_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/include/vpx_mem_intrnl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/bitops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/emmintrin_compat.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops_aligned.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/msvc.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/system_state.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_once.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_timer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/gen_scalers.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/vpx_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12config.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12extend.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/yv12config.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/endian_inl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.h",
+]
+libvpx_srcs_mips_assembly = [
+]
+libvpx_srcs_nacl = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/coefupdateprobs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/copy_c.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/default_coef_probs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/dequantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/generic/systemdependent.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/header.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idct_blk.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idctllm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/invtrans.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter_filters.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mbpitch.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyx.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/systemdependent.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/threading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_entropymodedata.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decoderthreading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/threading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/treereader.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/block.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_tokens.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/defaultcoefcounts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ethreading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/vp8_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_enums.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_textblit.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_avg.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_block.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_iface_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_codec_internal.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_psnr.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_codec.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_image.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_psnr.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8cx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8dx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_codec.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_frame_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_image.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_integer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/intrapred.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/sad.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/subtract.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/txfm_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/include/vpx_mem_intrnl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/bitops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/emmintrin_compat.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops_aligned.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/msvc.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/system_state.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_once.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_timer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/gen_scalers.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/vpx_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12config.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12extend.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/yv12config.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/endian_inl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.h",
+]
+libvpx_srcs_nacl_assembly = [
+]
+libvpx_srcs_generic = [
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/coefupdateprobs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/copy_c.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/default_coef_probs.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/dequantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/findnearmv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/generic/systemdependent.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/header.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idct_blk.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/idctllm.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/invtrans.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/loopfilter_filters.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mbpitch.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/modecont.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyx.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/onyxd.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/reconintra4x4.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/setupintrarecon.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/swapyv12buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/systemdependent.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/threading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/treecoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_entropymodedata.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/common/vp8_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/dboolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/decoderthreading.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/onyxd_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/threading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/decoder/treereader.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/block.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/boolhuff.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/dct_value_tokens.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/defaultcoefcounts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/denoising.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodeintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ethreading.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/modecosts.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/mr_dissim.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_if.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/onyx_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/pickinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp8/encoder/vp8_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp8/vp8_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_alloccommon.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_blockd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_common_data.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_debugmodes.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropy.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_entropymv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_enums.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_frame_buffers.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_idct.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_loopfilter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mfqe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_mvref_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_onyxc_int.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_postproc.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_ppflags.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_pred_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_quant_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconinter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_reconintra.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_scan.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_seg_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_textblit.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_thread_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/common/vp9_tile_common.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_detokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dsubexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/decoder/vp9_dthread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_complexity.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_aq_variance.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_avg.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_bitstream.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_block.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_context_tree.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_cost.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_dct.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_denoiser.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodeframe.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemb.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encodemv.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ethread.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_extend.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_firstpass.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_lookahead.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mbgraph.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_mcomp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_picklpf.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_pickmode.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_ratectrl.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rd.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_rdopt.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_resize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_segmentation.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_skin_detection.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_speed_features.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_subexp.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_svc_layercontext.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_temporal_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_tokenize.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/encoder/vp9_treewriter.h",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_cx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_dx_iface.c",
+ "//third_party/libvpx_new/source/libvpx/vp9/vp9_iface_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_codec_internal.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/internal/vpx_psnr.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_codec.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_decoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_encoder.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_image.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/src/vpx_psnr.c",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8cx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vp8dx.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_codec.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_decoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_encoder.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_frame_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_image.h",
+ "//third_party/libvpx_new/source/libvpx/vpx/vpx_integer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitreader_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/bitwriter_buffer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/fwd_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/intrapred.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/inv_txfm.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/loopfilter.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/prob.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/quantize.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/sad.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/subtract.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/txfm_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/variance.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_convolve.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_common.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_dsp_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_dsp/vpx_filter.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/include/vpx_mem_intrnl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_mem/vpx_mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/bitops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/emmintrin_compat.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/mem_ops_aligned.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/msvc.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/system_state.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_once.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_ports/vpx_timer.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/gen_scalers.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/vpx_scale.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12config.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/generic/yv12extend.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_scale/yv12config.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/endian_inl.h",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.c",
+ "//third_party/libvpx_new/source/libvpx/vpx_util/vpx_thread.h",
+]
+libvpx_srcs_generic_assembly = [
+]
diff --git a/third_party/libvpx_new/libvpx_srcs_arm.gypi b/third_party/libvpx_new/libvpx_srcs_arm.gypi
new file mode 100644
index 0000000..a5b97bd
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_arm.gypi
@@ -0,0 +1,359 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'sources': [
+ '<(libvpx_source)/vp8/common/alloccommon.c',
+ '<(libvpx_source)/vp8/common/alloccommon.h',
+ '<(libvpx_source)/vp8/common/arm/armv6/bilinearfilter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/copymem16x16_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/copymem8x4_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/copymem8x8_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/dc_only_idct_add_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/dequant_idct_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/dequantize_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/filter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/idct_blk_v6.c',
+ '<(libvpx_source)/vp8/common/arm/armv6/idct_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/intra4x4_predict_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/iwalsh_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/loopfilter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/simpleloopfilter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/sixtappredict8x4_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/bilinearfilter_arm.c',
+ '<(libvpx_source)/vp8/common/arm/bilinearfilter_arm.h',
+ '<(libvpx_source)/vp8/common/arm/dequantize_arm.c',
+ '<(libvpx_source)/vp8/common/arm/filter_arm.c',
+ '<(libvpx_source)/vp8/common/arm/loopfilter_arm.c',
+ '<(libvpx_source)/vp8/common/blockd.c',
+ '<(libvpx_source)/vp8/common/blockd.h',
+ '<(libvpx_source)/vp8/common/coefupdateprobs.h',
+ '<(libvpx_source)/vp8/common/common.h',
+ '<(libvpx_source)/vp8/common/copy_c.c',
+ '<(libvpx_source)/vp8/common/debugmodes.c',
+ '<(libvpx_source)/vp8/common/default_coef_probs.h',
+ '<(libvpx_source)/vp8/common/dequantize.c',
+ '<(libvpx_source)/vp8/common/entropy.c',
+ '<(libvpx_source)/vp8/common/entropy.h',
+ '<(libvpx_source)/vp8/common/entropymode.c',
+ '<(libvpx_source)/vp8/common/entropymode.h',
+ '<(libvpx_source)/vp8/common/entropymv.c',
+ '<(libvpx_source)/vp8/common/entropymv.h',
+ '<(libvpx_source)/vp8/common/extend.c',
+ '<(libvpx_source)/vp8/common/extend.h',
+ '<(libvpx_source)/vp8/common/filter.c',
+ '<(libvpx_source)/vp8/common/filter.h',
+ '<(libvpx_source)/vp8/common/findnearmv.c',
+ '<(libvpx_source)/vp8/common/findnearmv.h',
+ '<(libvpx_source)/vp8/common/generic/systemdependent.c',
+ '<(libvpx_source)/vp8/common/header.h',
+ '<(libvpx_source)/vp8/common/idct_blk.c',
+ '<(libvpx_source)/vp8/common/idctllm.c',
+ '<(libvpx_source)/vp8/common/invtrans.h',
+ '<(libvpx_source)/vp8/common/loopfilter.h',
+ '<(libvpx_source)/vp8/common/loopfilter_filters.c',
+ '<(libvpx_source)/vp8/common/mbpitch.c',
+ '<(libvpx_source)/vp8/common/mfqe.c',
+ '<(libvpx_source)/vp8/common/modecont.c',
+ '<(libvpx_source)/vp8/common/modecont.h',
+ '<(libvpx_source)/vp8/common/mv.h',
+ '<(libvpx_source)/vp8/common/onyx.h',
+ '<(libvpx_source)/vp8/common/onyxc_int.h',
+ '<(libvpx_source)/vp8/common/onyxd.h',
+ '<(libvpx_source)/vp8/common/postproc.c',
+ '<(libvpx_source)/vp8/common/postproc.h',
+ '<(libvpx_source)/vp8/common/ppflags.h',
+ '<(libvpx_source)/vp8/common/quant_common.c',
+ '<(libvpx_source)/vp8/common/quant_common.h',
+ '<(libvpx_source)/vp8/common/reconinter.c',
+ '<(libvpx_source)/vp8/common/reconinter.h',
+ '<(libvpx_source)/vp8/common/reconintra.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.h',
+ '<(libvpx_source)/vp8/common/rtcd.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.h',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.c',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.h',
+ '<(libvpx_source)/vp8/common/systemdependent.h',
+ '<(libvpx_source)/vp8/common/threading.h',
+ '<(libvpx_source)/vp8/common/treecoder.c',
+ '<(libvpx_source)/vp8/common/treecoder.h',
+ '<(libvpx_source)/vp8/common/vp8_entropymodedata.h',
+ '<(libvpx_source)/vp8/common/vp8_loopfilter.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.h',
+ '<(libvpx_source)/vp8/decoder/decodeframe.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.h',
+ '<(libvpx_source)/vp8/decoder/decoderthreading.h',
+ '<(libvpx_source)/vp8/decoder/detokenize.c',
+ '<(libvpx_source)/vp8/decoder/detokenize.h',
+ '<(libvpx_source)/vp8/decoder/onyxd_if.c',
+ '<(libvpx_source)/vp8/decoder/onyxd_int.h',
+ '<(libvpx_source)/vp8/decoder/threading.c',
+ '<(libvpx_source)/vp8/decoder/treereader.h',
+ '<(libvpx_source)/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm',
+ '<(libvpx_source)/vp8/encoder/arm/armv6/walsh_v6.asm',
+ '<(libvpx_source)/vp8/encoder/arm/dct_arm.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.h',
+ '<(libvpx_source)/vp8/encoder/block.h',
+ '<(libvpx_source)/vp8/encoder/boolhuff.c',
+ '<(libvpx_source)/vp8/encoder/boolhuff.h',
+ '<(libvpx_source)/vp8/encoder/dct.c',
+ '<(libvpx_source)/vp8/encoder/dct_value_cost.h',
+ '<(libvpx_source)/vp8/encoder/dct_value_tokens.h',
+ '<(libvpx_source)/vp8/encoder/defaultcoefcounts.h',
+ '<(libvpx_source)/vp8/encoder/denoising.c',
+ '<(libvpx_source)/vp8/encoder/denoising.h',
+ '<(libvpx_source)/vp8/encoder/encodeframe.c',
+ '<(libvpx_source)/vp8/encoder/encodeframe.h',
+ '<(libvpx_source)/vp8/encoder/encodeintra.c',
+ '<(libvpx_source)/vp8/encoder/encodeintra.h',
+ '<(libvpx_source)/vp8/encoder/encodemb.c',
+ '<(libvpx_source)/vp8/encoder/encodemb.h',
+ '<(libvpx_source)/vp8/encoder/encodemv.c',
+ '<(libvpx_source)/vp8/encoder/encodemv.h',
+ '<(libvpx_source)/vp8/encoder/ethreading.c',
+ '<(libvpx_source)/vp8/encoder/firstpass.h',
+ '<(libvpx_source)/vp8/encoder/lookahead.c',
+ '<(libvpx_source)/vp8/encoder/lookahead.h',
+ '<(libvpx_source)/vp8/encoder/mcomp.c',
+ '<(libvpx_source)/vp8/encoder/mcomp.h',
+ '<(libvpx_source)/vp8/encoder/modecosts.c',
+ '<(libvpx_source)/vp8/encoder/modecosts.h',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.c',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.h',
+ '<(libvpx_source)/vp8/encoder/onyx_if.c',
+ '<(libvpx_source)/vp8/encoder/onyx_int.h',
+ '<(libvpx_source)/vp8/encoder/pickinter.c',
+ '<(libvpx_source)/vp8/encoder/pickinter.h',
+ '<(libvpx_source)/vp8/encoder/picklpf.c',
+ '<(libvpx_source)/vp8/encoder/quantize.h',
+ '<(libvpx_source)/vp8/encoder/ratectrl.c',
+ '<(libvpx_source)/vp8/encoder/ratectrl.h',
+ '<(libvpx_source)/vp8/encoder/rdopt.c',
+ '<(libvpx_source)/vp8/encoder/rdopt.h',
+ '<(libvpx_source)/vp8/encoder/segmentation.c',
+ '<(libvpx_source)/vp8/encoder/segmentation.h',
+ '<(libvpx_source)/vp8/encoder/tokenize.c',
+ '<(libvpx_source)/vp8/encoder/tokenize.h',
+ '<(libvpx_source)/vp8/encoder/treewriter.c',
+ '<(libvpx_source)/vp8/encoder/treewriter.h',
+ '<(libvpx_source)/vp8/encoder/vp8_quantize.c',
+ '<(libvpx_source)/vp8/vp8_cx_iface.c',
+ '<(libvpx_source)/vp8/vp8_dx_iface.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.h',
+ '<(libvpx_source)/vp9/common/vp9_blockd.c',
+ '<(libvpx_source)/vp9/common/vp9_blockd.h',
+ '<(libvpx_source)/vp9/common/vp9_common.h',
+ '<(libvpx_source)/vp9/common/vp9_common_data.c',
+ '<(libvpx_source)/vp9/common/vp9_common_data.h',
+ '<(libvpx_source)/vp9/common/vp9_debugmodes.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.h',
+ '<(libvpx_source)/vp9/common/vp9_enums.h',
+ '<(libvpx_source)/vp9/common/vp9_filter.c',
+ '<(libvpx_source)/vp9/common/vp9_filter.h',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.c',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.h',
+ '<(libvpx_source)/vp9/common/vp9_idct.c',
+ '<(libvpx_source)/vp9/common/vp9_idct.h',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.c',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.h',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.c',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.h',
+ '<(libvpx_source)/vp9/common/vp9_mv.h',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.c',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.h',
+ '<(libvpx_source)/vp9/common/vp9_onyxc_int.h',
+ '<(libvpx_source)/vp9/common/vp9_postproc.c',
+ '<(libvpx_source)/vp9/common/vp9_postproc.h',
+ '<(libvpx_source)/vp9/common/vp9_ppflags.h',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.c',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.h',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.c',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.h',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.c',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.h',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.c',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.h',
+ '<(libvpx_source)/vp9/common/vp9_rtcd.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.h',
+ '<(libvpx_source)/vp9/common/vp9_scan.c',
+ '<(libvpx_source)/vp9/common/vp9_scan.h',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.c',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.h',
+ '<(libvpx_source)/vp9/common/vp9_textblit.h',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.c',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.h',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.c',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.h',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.c',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.h',
+ '<(libvpx_source)/vp9/encoder/vp9_avg.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.h',
+ '<(libvpx_source)/vp9/encoder/vp9_block.h',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.c',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.h',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.c',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.h',
+ '<(libvpx_source)/vp9/encoder/vp9_dct.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.c',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.h',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.c',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.h',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.c',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.c',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.h',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.c',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.h',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.h',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.c',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.h',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.c',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.h',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.c',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.h',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.c',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.h',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.h',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.h',
+ '<(libvpx_source)/vp9/vp9_cx_iface.c',
+ '<(libvpx_source)/vp9/vp9_dx_iface.c',
+ '<(libvpx_source)/vp9/vp9_iface_common.h',
+ '<(libvpx_source)/vpx/internal/vpx_codec_internal.h',
+ '<(libvpx_source)/vpx/internal/vpx_psnr.h',
+ '<(libvpx_source)/vpx/src/vpx_codec.c',
+ '<(libvpx_source)/vpx/src/vpx_decoder.c',
+ '<(libvpx_source)/vpx/src/vpx_encoder.c',
+ '<(libvpx_source)/vpx/src/vpx_image.c',
+ '<(libvpx_source)/vpx/src/vpx_psnr.c',
+ '<(libvpx_source)/vpx/vp8.h',
+ '<(libvpx_source)/vpx/vp8cx.h',
+ '<(libvpx_source)/vpx/vp8dx.h',
+ '<(libvpx_source)/vpx/vpx_codec.h',
+ '<(libvpx_source)/vpx/vpx_decoder.h',
+ '<(libvpx_source)/vpx/vpx_encoder.h',
+ '<(libvpx_source)/vpx/vpx_frame_buffer.h',
+ '<(libvpx_source)/vpx/vpx_image.h',
+ '<(libvpx_source)/vpx/vpx_integer.h',
+ '<(libvpx_source)/vpx_dsp/arm/bilinear_filter_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/sad_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/subpel_variance_media.c',
+ '<(libvpx_source)/vpx_dsp/arm/variance_halfpixvar16x16_h_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/variance_halfpixvar16x16_hv_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/variance_halfpixvar16x16_v_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/variance_media.asm',
+ '<(libvpx_source)/vpx_dsp/bitreader.c',
+ '<(libvpx_source)/vpx_dsp/bitreader.h',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.h',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.c',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.h',
+ '<(libvpx_source)/vpx_dsp/intrapred.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.h',
+ '<(libvpx_source)/vpx_dsp/loopfilter.c',
+ '<(libvpx_source)/vpx_dsp/prob.c',
+ '<(libvpx_source)/vpx_dsp/prob.h',
+ '<(libvpx_source)/vpx_dsp/quantize.c',
+ '<(libvpx_source)/vpx_dsp/quantize.h',
+ '<(libvpx_source)/vpx_dsp/sad.c',
+ '<(libvpx_source)/vpx_dsp/subtract.c',
+ '<(libvpx_source)/vpx_dsp/txfm_common.h',
+ '<(libvpx_source)/vpx_dsp/variance.c',
+ '<(libvpx_source)/vpx_dsp/variance.h',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.c',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_common.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_rtcd.c',
+ '<(libvpx_source)/vpx_dsp/vpx_filter.h',
+ '<(libvpx_source)/vpx_mem/include/vpx_mem_intrnl.h',
+ '<(libvpx_source)/vpx_mem/vpx_mem.c',
+ '<(libvpx_source)/vpx_mem/vpx_mem.h',
+ '<(libvpx_source)/vpx_ports/arm.h',
+ '<(libvpx_source)/vpx_ports/arm_cpudetect.c',
+ '<(libvpx_source)/vpx_ports/bitops.h',
+ '<(libvpx_source)/vpx_ports/emmintrin_compat.h',
+ '<(libvpx_source)/vpx_ports/mem.h',
+ '<(libvpx_source)/vpx_ports/mem_ops.h',
+ '<(libvpx_source)/vpx_ports/mem_ops_aligned.h',
+ '<(libvpx_source)/vpx_ports/msvc.h',
+ '<(libvpx_source)/vpx_ports/system_state.h',
+ '<(libvpx_source)/vpx_ports/vpx_once.h',
+ '<(libvpx_source)/vpx_ports/vpx_timer.h',
+ '<(libvpx_source)/vpx_scale/generic/gen_scalers.c',
+ '<(libvpx_source)/vpx_scale/generic/vpx_scale.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12config.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12extend.c',
+ '<(libvpx_source)/vpx_scale/vpx_scale.h',
+ '<(libvpx_source)/vpx_scale/vpx_scale_rtcd.c',
+ '<(libvpx_source)/vpx_scale/yv12config.h',
+ '<(libvpx_source)/vpx_util/endian_inl.h',
+ '<(libvpx_source)/vpx_util/vpx_thread.c',
+ '<(libvpx_source)/vpx_util/vpx_thread.h',
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs_arm64.gypi b/third_party/libvpx_new/libvpx_srcs_arm64.gypi
new file mode 100644
index 0000000..7d88bc5
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_arm64.gypi
@@ -0,0 +1,384 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'sources': [
+ '<(libvpx_source)/vp8/common/alloccommon.c',
+ '<(libvpx_source)/vp8/common/alloccommon.h',
+ '<(libvpx_source)/vp8/common/arm/dequantize_arm.c',
+ '<(libvpx_source)/vp8/common/arm/filter_arm.c',
+ '<(libvpx_source)/vp8/common/arm/loopfilter_arm.c',
+ '<(libvpx_source)/vp8/common/arm/neon/bilinearpredict_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/copymem_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/dc_only_idct_add_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/dequant_idct_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/dequantizeb_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/idct_blk_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/idct_dequant_0_2x_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/idct_dequant_full_2x_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/iwalsh_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/mbloopfilter_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/reconintra_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/shortidct4x4llm_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/sixtappredict_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/vp8_loopfilter_neon.c',
+ '<(libvpx_source)/vp8/common/blockd.c',
+ '<(libvpx_source)/vp8/common/blockd.h',
+ '<(libvpx_source)/vp8/common/coefupdateprobs.h',
+ '<(libvpx_source)/vp8/common/common.h',
+ '<(libvpx_source)/vp8/common/copy_c.c',
+ '<(libvpx_source)/vp8/common/debugmodes.c',
+ '<(libvpx_source)/vp8/common/default_coef_probs.h',
+ '<(libvpx_source)/vp8/common/dequantize.c',
+ '<(libvpx_source)/vp8/common/entropy.c',
+ '<(libvpx_source)/vp8/common/entropy.h',
+ '<(libvpx_source)/vp8/common/entropymode.c',
+ '<(libvpx_source)/vp8/common/entropymode.h',
+ '<(libvpx_source)/vp8/common/entropymv.c',
+ '<(libvpx_source)/vp8/common/entropymv.h',
+ '<(libvpx_source)/vp8/common/extend.c',
+ '<(libvpx_source)/vp8/common/extend.h',
+ '<(libvpx_source)/vp8/common/filter.c',
+ '<(libvpx_source)/vp8/common/filter.h',
+ '<(libvpx_source)/vp8/common/findnearmv.c',
+ '<(libvpx_source)/vp8/common/findnearmv.h',
+ '<(libvpx_source)/vp8/common/generic/systemdependent.c',
+ '<(libvpx_source)/vp8/common/header.h',
+ '<(libvpx_source)/vp8/common/idct_blk.c',
+ '<(libvpx_source)/vp8/common/idctllm.c',
+ '<(libvpx_source)/vp8/common/invtrans.h',
+ '<(libvpx_source)/vp8/common/loopfilter.h',
+ '<(libvpx_source)/vp8/common/loopfilter_filters.c',
+ '<(libvpx_source)/vp8/common/mbpitch.c',
+ '<(libvpx_source)/vp8/common/mfqe.c',
+ '<(libvpx_source)/vp8/common/modecont.c',
+ '<(libvpx_source)/vp8/common/modecont.h',
+ '<(libvpx_source)/vp8/common/mv.h',
+ '<(libvpx_source)/vp8/common/onyx.h',
+ '<(libvpx_source)/vp8/common/onyxc_int.h',
+ '<(libvpx_source)/vp8/common/onyxd.h',
+ '<(libvpx_source)/vp8/common/postproc.c',
+ '<(libvpx_source)/vp8/common/postproc.h',
+ '<(libvpx_source)/vp8/common/ppflags.h',
+ '<(libvpx_source)/vp8/common/quant_common.c',
+ '<(libvpx_source)/vp8/common/quant_common.h',
+ '<(libvpx_source)/vp8/common/reconinter.c',
+ '<(libvpx_source)/vp8/common/reconinter.h',
+ '<(libvpx_source)/vp8/common/reconintra.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.h',
+ '<(libvpx_source)/vp8/common/rtcd.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.h',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.c',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.h',
+ '<(libvpx_source)/vp8/common/systemdependent.h',
+ '<(libvpx_source)/vp8/common/threading.h',
+ '<(libvpx_source)/vp8/common/treecoder.c',
+ '<(libvpx_source)/vp8/common/treecoder.h',
+ '<(libvpx_source)/vp8/common/vp8_entropymodedata.h',
+ '<(libvpx_source)/vp8/common/vp8_loopfilter.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.h',
+ '<(libvpx_source)/vp8/decoder/decodeframe.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.h',
+ '<(libvpx_source)/vp8/decoder/decoderthreading.h',
+ '<(libvpx_source)/vp8/decoder/detokenize.c',
+ '<(libvpx_source)/vp8/decoder/detokenize.h',
+ '<(libvpx_source)/vp8/decoder/onyxd_if.c',
+ '<(libvpx_source)/vp8/decoder/onyxd_int.h',
+ '<(libvpx_source)/vp8/decoder/threading.c',
+ '<(libvpx_source)/vp8/decoder/treereader.h',
+ '<(libvpx_source)/vp8/encoder/arm/dct_arm.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/denoising_neon.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/fastquantizeb_neon.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/shortfdct_neon.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.h',
+ '<(libvpx_source)/vp8/encoder/block.h',
+ '<(libvpx_source)/vp8/encoder/boolhuff.c',
+ '<(libvpx_source)/vp8/encoder/boolhuff.h',
+ '<(libvpx_source)/vp8/encoder/dct.c',
+ '<(libvpx_source)/vp8/encoder/dct_value_cost.h',
+ '<(libvpx_source)/vp8/encoder/dct_value_tokens.h',
+ '<(libvpx_source)/vp8/encoder/defaultcoefcounts.h',
+ '<(libvpx_source)/vp8/encoder/denoising.c',
+ '<(libvpx_source)/vp8/encoder/denoising.h',
+ '<(libvpx_source)/vp8/encoder/encodeframe.c',
+ '<(libvpx_source)/vp8/encoder/encodeframe.h',
+ '<(libvpx_source)/vp8/encoder/encodeintra.c',
+ '<(libvpx_source)/vp8/encoder/encodeintra.h',
+ '<(libvpx_source)/vp8/encoder/encodemb.c',
+ '<(libvpx_source)/vp8/encoder/encodemb.h',
+ '<(libvpx_source)/vp8/encoder/encodemv.c',
+ '<(libvpx_source)/vp8/encoder/encodemv.h',
+ '<(libvpx_source)/vp8/encoder/ethreading.c',
+ '<(libvpx_source)/vp8/encoder/firstpass.h',
+ '<(libvpx_source)/vp8/encoder/lookahead.c',
+ '<(libvpx_source)/vp8/encoder/lookahead.h',
+ '<(libvpx_source)/vp8/encoder/mcomp.c',
+ '<(libvpx_source)/vp8/encoder/mcomp.h',
+ '<(libvpx_source)/vp8/encoder/modecosts.c',
+ '<(libvpx_source)/vp8/encoder/modecosts.h',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.c',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.h',
+ '<(libvpx_source)/vp8/encoder/onyx_if.c',
+ '<(libvpx_source)/vp8/encoder/onyx_int.h',
+ '<(libvpx_source)/vp8/encoder/pickinter.c',
+ '<(libvpx_source)/vp8/encoder/pickinter.h',
+ '<(libvpx_source)/vp8/encoder/picklpf.c',
+ '<(libvpx_source)/vp8/encoder/quantize.h',
+ '<(libvpx_source)/vp8/encoder/ratectrl.c',
+ '<(libvpx_source)/vp8/encoder/ratectrl.h',
+ '<(libvpx_source)/vp8/encoder/rdopt.c',
+ '<(libvpx_source)/vp8/encoder/rdopt.h',
+ '<(libvpx_source)/vp8/encoder/segmentation.c',
+ '<(libvpx_source)/vp8/encoder/segmentation.h',
+ '<(libvpx_source)/vp8/encoder/tokenize.c',
+ '<(libvpx_source)/vp8/encoder/tokenize.h',
+ '<(libvpx_source)/vp8/encoder/treewriter.c',
+ '<(libvpx_source)/vp8/encoder/treewriter.h',
+ '<(libvpx_source)/vp8/encoder/vp8_quantize.c',
+ '<(libvpx_source)/vp8/vp8_cx_iface.c',
+ '<(libvpx_source)/vp8/vp8_dx_iface.c',
+ '<(libvpx_source)/vp9/common/arm/neon/vp9_iht4x4_add_neon.c',
+ '<(libvpx_source)/vp9/common/arm/neon/vp9_iht8x8_add_neon.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.h',
+ '<(libvpx_source)/vp9/common/vp9_blockd.c',
+ '<(libvpx_source)/vp9/common/vp9_blockd.h',
+ '<(libvpx_source)/vp9/common/vp9_common.h',
+ '<(libvpx_source)/vp9/common/vp9_common_data.c',
+ '<(libvpx_source)/vp9/common/vp9_common_data.h',
+ '<(libvpx_source)/vp9/common/vp9_debugmodes.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.h',
+ '<(libvpx_source)/vp9/common/vp9_enums.h',
+ '<(libvpx_source)/vp9/common/vp9_filter.c',
+ '<(libvpx_source)/vp9/common/vp9_filter.h',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.c',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.h',
+ '<(libvpx_source)/vp9/common/vp9_idct.c',
+ '<(libvpx_source)/vp9/common/vp9_idct.h',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.c',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.h',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.c',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.h',
+ '<(libvpx_source)/vp9/common/vp9_mv.h',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.c',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.h',
+ '<(libvpx_source)/vp9/common/vp9_onyxc_int.h',
+ '<(libvpx_source)/vp9/common/vp9_postproc.c',
+ '<(libvpx_source)/vp9/common/vp9_postproc.h',
+ '<(libvpx_source)/vp9/common/vp9_ppflags.h',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.c',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.h',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.c',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.h',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.c',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.h',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.c',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.h',
+ '<(libvpx_source)/vp9/common/vp9_rtcd.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.h',
+ '<(libvpx_source)/vp9/common/vp9_scan.c',
+ '<(libvpx_source)/vp9/common/vp9_scan.h',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.c',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.h',
+ '<(libvpx_source)/vp9/common/vp9_textblit.h',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.c',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.h',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.c',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.h',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.c',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.h',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_avg_neon.c',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_dct_neon.c',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_error_neon.c',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_quantize_neon.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.h',
+ '<(libvpx_source)/vp9/encoder/vp9_avg.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.h',
+ '<(libvpx_source)/vp9/encoder/vp9_block.h',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.c',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.h',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.c',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.h',
+ '<(libvpx_source)/vp9/encoder/vp9_dct.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.c',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.h',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.c',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.h',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.c',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.c',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.h',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.c',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.h',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.h',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.c',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.h',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.c',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.h',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.c',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.h',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.c',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.h',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.h',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.h',
+ '<(libvpx_source)/vp9/vp9_cx_iface.c',
+ '<(libvpx_source)/vp9/vp9_dx_iface.c',
+ '<(libvpx_source)/vp9/vp9_iface_common.h',
+ '<(libvpx_source)/vpx/internal/vpx_codec_internal.h',
+ '<(libvpx_source)/vpx/internal/vpx_psnr.h',
+ '<(libvpx_source)/vpx/src/vpx_codec.c',
+ '<(libvpx_source)/vpx/src/vpx_decoder.c',
+ '<(libvpx_source)/vpx/src/vpx_encoder.c',
+ '<(libvpx_source)/vpx/src/vpx_image.c',
+ '<(libvpx_source)/vpx/src/vpx_psnr.c',
+ '<(libvpx_source)/vpx/vp8.h',
+ '<(libvpx_source)/vpx/vp8cx.h',
+ '<(libvpx_source)/vpx/vp8dx.h',
+ '<(libvpx_source)/vpx/vpx_codec.h',
+ '<(libvpx_source)/vpx/vpx_decoder.h',
+ '<(libvpx_source)/vpx/vpx_encoder.h',
+ '<(libvpx_source)/vpx/vpx_frame_buffer.h',
+ '<(libvpx_source)/vpx/vpx_image.h',
+ '<(libvpx_source)/vpx/vpx_integer.h',
+ '<(libvpx_source)/vpx_dsp/arm/fwd_txfm_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct16x16_1_add_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct16x16_add_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct16x16_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct32x32_1_add_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct32x32_add_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct4x4_1_add_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct4x4_add_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct8x8_1_add_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct8x8_add_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/intrapred_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_16_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_4_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_8_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/sad4d_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/sad_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/subpel_variance_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/subtract_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/variance_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve8_avg_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve8_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve_avg_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve_copy_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve_neon.c',
+ '<(libvpx_source)/vpx_dsp/bitreader.c',
+ '<(libvpx_source)/vpx_dsp/bitreader.h',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.h',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.c',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.h',
+ '<(libvpx_source)/vpx_dsp/intrapred.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.h',
+ '<(libvpx_source)/vpx_dsp/loopfilter.c',
+ '<(libvpx_source)/vpx_dsp/prob.c',
+ '<(libvpx_source)/vpx_dsp/prob.h',
+ '<(libvpx_source)/vpx_dsp/quantize.c',
+ '<(libvpx_source)/vpx_dsp/quantize.h',
+ '<(libvpx_source)/vpx_dsp/sad.c',
+ '<(libvpx_source)/vpx_dsp/subtract.c',
+ '<(libvpx_source)/vpx_dsp/txfm_common.h',
+ '<(libvpx_source)/vpx_dsp/variance.c',
+ '<(libvpx_source)/vpx_dsp/variance.h',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.c',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_common.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_rtcd.c',
+ '<(libvpx_source)/vpx_dsp/vpx_filter.h',
+ '<(libvpx_source)/vpx_mem/include/vpx_mem_intrnl.h',
+ '<(libvpx_source)/vpx_mem/vpx_mem.c',
+ '<(libvpx_source)/vpx_mem/vpx_mem.h',
+ '<(libvpx_source)/vpx_ports/arm.h',
+ '<(libvpx_source)/vpx_ports/arm_cpudetect.c',
+ '<(libvpx_source)/vpx_ports/bitops.h',
+ '<(libvpx_source)/vpx_ports/emmintrin_compat.h',
+ '<(libvpx_source)/vpx_ports/mem.h',
+ '<(libvpx_source)/vpx_ports/mem_ops.h',
+ '<(libvpx_source)/vpx_ports/mem_ops_aligned.h',
+ '<(libvpx_source)/vpx_ports/msvc.h',
+ '<(libvpx_source)/vpx_ports/system_state.h',
+ '<(libvpx_source)/vpx_ports/vpx_once.h',
+ '<(libvpx_source)/vpx_ports/vpx_timer.h',
+ '<(libvpx_source)/vpx_scale/generic/gen_scalers.c',
+ '<(libvpx_source)/vpx_scale/generic/vpx_scale.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12config.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12extend.c',
+ '<(libvpx_source)/vpx_scale/vpx_scale.h',
+ '<(libvpx_source)/vpx_scale/vpx_scale_rtcd.c',
+ '<(libvpx_source)/vpx_scale/yv12config.h',
+ '<(libvpx_source)/vpx_util/endian_inl.h',
+ '<(libvpx_source)/vpx_util/vpx_thread.c',
+ '<(libvpx_source)/vpx_util/vpx_thread.h',
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs_arm_neon.gypi b/third_party/libvpx_new/libvpx_srcs_arm_neon.gypi
new file mode 100644
index 0000000..0e7d48d
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_arm_neon.gypi
@@ -0,0 +1,413 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'sources': [
+ '<(libvpx_source)/vp8/common/alloccommon.c',
+ '<(libvpx_source)/vp8/common/alloccommon.h',
+ '<(libvpx_source)/vp8/common/arm/armv6/bilinearfilter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/copymem16x16_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/copymem8x4_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/copymem8x8_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/dc_only_idct_add_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/dequant_idct_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/dequantize_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/filter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/idct_blk_v6.c',
+ '<(libvpx_source)/vp8/common/arm/armv6/idct_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/intra4x4_predict_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/iwalsh_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/loopfilter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/simpleloopfilter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/sixtappredict8x4_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/bilinearfilter_arm.c',
+ '<(libvpx_source)/vp8/common/arm/bilinearfilter_arm.h',
+ '<(libvpx_source)/vp8/common/arm/dequantize_arm.c',
+ '<(libvpx_source)/vp8/common/arm/filter_arm.c',
+ '<(libvpx_source)/vp8/common/arm/loopfilter_arm.c',
+ '<(libvpx_source)/vp8/common/arm/neon/bilinearpredict_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/copymem_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/dc_only_idct_add_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/dequant_idct_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/dequantizeb_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/idct_blk_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/idct_dequant_0_2x_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/idct_dequant_full_2x_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/iwalsh_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/mbloopfilter_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/reconintra_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/shortidct4x4llm_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/sixtappredict_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/vp8_loopfilter_neon.c',
+ '<(libvpx_source)/vp8/common/blockd.c',
+ '<(libvpx_source)/vp8/common/blockd.h',
+ '<(libvpx_source)/vp8/common/coefupdateprobs.h',
+ '<(libvpx_source)/vp8/common/common.h',
+ '<(libvpx_source)/vp8/common/copy_c.c',
+ '<(libvpx_source)/vp8/common/debugmodes.c',
+ '<(libvpx_source)/vp8/common/default_coef_probs.h',
+ '<(libvpx_source)/vp8/common/dequantize.c',
+ '<(libvpx_source)/vp8/common/entropy.c',
+ '<(libvpx_source)/vp8/common/entropy.h',
+ '<(libvpx_source)/vp8/common/entropymode.c',
+ '<(libvpx_source)/vp8/common/entropymode.h',
+ '<(libvpx_source)/vp8/common/entropymv.c',
+ '<(libvpx_source)/vp8/common/entropymv.h',
+ '<(libvpx_source)/vp8/common/extend.c',
+ '<(libvpx_source)/vp8/common/extend.h',
+ '<(libvpx_source)/vp8/common/filter.c',
+ '<(libvpx_source)/vp8/common/filter.h',
+ '<(libvpx_source)/vp8/common/findnearmv.c',
+ '<(libvpx_source)/vp8/common/findnearmv.h',
+ '<(libvpx_source)/vp8/common/generic/systemdependent.c',
+ '<(libvpx_source)/vp8/common/header.h',
+ '<(libvpx_source)/vp8/common/idct_blk.c',
+ '<(libvpx_source)/vp8/common/idctllm.c',
+ '<(libvpx_source)/vp8/common/invtrans.h',
+ '<(libvpx_source)/vp8/common/loopfilter.h',
+ '<(libvpx_source)/vp8/common/loopfilter_filters.c',
+ '<(libvpx_source)/vp8/common/mbpitch.c',
+ '<(libvpx_source)/vp8/common/mfqe.c',
+ '<(libvpx_source)/vp8/common/modecont.c',
+ '<(libvpx_source)/vp8/common/modecont.h',
+ '<(libvpx_source)/vp8/common/mv.h',
+ '<(libvpx_source)/vp8/common/onyx.h',
+ '<(libvpx_source)/vp8/common/onyxc_int.h',
+ '<(libvpx_source)/vp8/common/onyxd.h',
+ '<(libvpx_source)/vp8/common/postproc.c',
+ '<(libvpx_source)/vp8/common/postproc.h',
+ '<(libvpx_source)/vp8/common/ppflags.h',
+ '<(libvpx_source)/vp8/common/quant_common.c',
+ '<(libvpx_source)/vp8/common/quant_common.h',
+ '<(libvpx_source)/vp8/common/reconinter.c',
+ '<(libvpx_source)/vp8/common/reconinter.h',
+ '<(libvpx_source)/vp8/common/reconintra.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.h',
+ '<(libvpx_source)/vp8/common/rtcd.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.h',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.c',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.h',
+ '<(libvpx_source)/vp8/common/systemdependent.h',
+ '<(libvpx_source)/vp8/common/threading.h',
+ '<(libvpx_source)/vp8/common/treecoder.c',
+ '<(libvpx_source)/vp8/common/treecoder.h',
+ '<(libvpx_source)/vp8/common/vp8_entropymodedata.h',
+ '<(libvpx_source)/vp8/common/vp8_loopfilter.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.h',
+ '<(libvpx_source)/vp8/decoder/decodeframe.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.h',
+ '<(libvpx_source)/vp8/decoder/decoderthreading.h',
+ '<(libvpx_source)/vp8/decoder/detokenize.c',
+ '<(libvpx_source)/vp8/decoder/detokenize.h',
+ '<(libvpx_source)/vp8/decoder/onyxd_if.c',
+ '<(libvpx_source)/vp8/decoder/onyxd_int.h',
+ '<(libvpx_source)/vp8/decoder/threading.c',
+ '<(libvpx_source)/vp8/decoder/treereader.h',
+ '<(libvpx_source)/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm',
+ '<(libvpx_source)/vp8/encoder/arm/armv6/walsh_v6.asm',
+ '<(libvpx_source)/vp8/encoder/arm/dct_arm.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/denoising_neon.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/fastquantizeb_neon.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/shortfdct_neon.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.h',
+ '<(libvpx_source)/vp8/encoder/block.h',
+ '<(libvpx_source)/vp8/encoder/boolhuff.c',
+ '<(libvpx_source)/vp8/encoder/boolhuff.h',
+ '<(libvpx_source)/vp8/encoder/dct.c',
+ '<(libvpx_source)/vp8/encoder/dct_value_cost.h',
+ '<(libvpx_source)/vp8/encoder/dct_value_tokens.h',
+ '<(libvpx_source)/vp8/encoder/defaultcoefcounts.h',
+ '<(libvpx_source)/vp8/encoder/denoising.c',
+ '<(libvpx_source)/vp8/encoder/denoising.h',
+ '<(libvpx_source)/vp8/encoder/encodeframe.c',
+ '<(libvpx_source)/vp8/encoder/encodeframe.h',
+ '<(libvpx_source)/vp8/encoder/encodeintra.c',
+ '<(libvpx_source)/vp8/encoder/encodeintra.h',
+ '<(libvpx_source)/vp8/encoder/encodemb.c',
+ '<(libvpx_source)/vp8/encoder/encodemb.h',
+ '<(libvpx_source)/vp8/encoder/encodemv.c',
+ '<(libvpx_source)/vp8/encoder/encodemv.h',
+ '<(libvpx_source)/vp8/encoder/ethreading.c',
+ '<(libvpx_source)/vp8/encoder/firstpass.h',
+ '<(libvpx_source)/vp8/encoder/lookahead.c',
+ '<(libvpx_source)/vp8/encoder/lookahead.h',
+ '<(libvpx_source)/vp8/encoder/mcomp.c',
+ '<(libvpx_source)/vp8/encoder/mcomp.h',
+ '<(libvpx_source)/vp8/encoder/modecosts.c',
+ '<(libvpx_source)/vp8/encoder/modecosts.h',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.c',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.h',
+ '<(libvpx_source)/vp8/encoder/onyx_if.c',
+ '<(libvpx_source)/vp8/encoder/onyx_int.h',
+ '<(libvpx_source)/vp8/encoder/pickinter.c',
+ '<(libvpx_source)/vp8/encoder/pickinter.h',
+ '<(libvpx_source)/vp8/encoder/picklpf.c',
+ '<(libvpx_source)/vp8/encoder/quantize.h',
+ '<(libvpx_source)/vp8/encoder/ratectrl.c',
+ '<(libvpx_source)/vp8/encoder/ratectrl.h',
+ '<(libvpx_source)/vp8/encoder/rdopt.c',
+ '<(libvpx_source)/vp8/encoder/rdopt.h',
+ '<(libvpx_source)/vp8/encoder/segmentation.c',
+ '<(libvpx_source)/vp8/encoder/segmentation.h',
+ '<(libvpx_source)/vp8/encoder/tokenize.c',
+ '<(libvpx_source)/vp8/encoder/tokenize.h',
+ '<(libvpx_source)/vp8/encoder/treewriter.c',
+ '<(libvpx_source)/vp8/encoder/treewriter.h',
+ '<(libvpx_source)/vp8/encoder/vp8_quantize.c',
+ '<(libvpx_source)/vp8/vp8_cx_iface.c',
+ '<(libvpx_source)/vp8/vp8_dx_iface.c',
+ '<(libvpx_source)/vp9/common/arm/neon/vp9_iht4x4_add_neon.c',
+ '<(libvpx_source)/vp9/common/arm/neon/vp9_iht8x8_add_neon.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.h',
+ '<(libvpx_source)/vp9/common/vp9_blockd.c',
+ '<(libvpx_source)/vp9/common/vp9_blockd.h',
+ '<(libvpx_source)/vp9/common/vp9_common.h',
+ '<(libvpx_source)/vp9/common/vp9_common_data.c',
+ '<(libvpx_source)/vp9/common/vp9_common_data.h',
+ '<(libvpx_source)/vp9/common/vp9_debugmodes.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.h',
+ '<(libvpx_source)/vp9/common/vp9_enums.h',
+ '<(libvpx_source)/vp9/common/vp9_filter.c',
+ '<(libvpx_source)/vp9/common/vp9_filter.h',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.c',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.h',
+ '<(libvpx_source)/vp9/common/vp9_idct.c',
+ '<(libvpx_source)/vp9/common/vp9_idct.h',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.c',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.h',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.c',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.h',
+ '<(libvpx_source)/vp9/common/vp9_mv.h',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.c',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.h',
+ '<(libvpx_source)/vp9/common/vp9_onyxc_int.h',
+ '<(libvpx_source)/vp9/common/vp9_postproc.c',
+ '<(libvpx_source)/vp9/common/vp9_postproc.h',
+ '<(libvpx_source)/vp9/common/vp9_ppflags.h',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.c',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.h',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.c',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.h',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.c',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.h',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.c',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.h',
+ '<(libvpx_source)/vp9/common/vp9_rtcd.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.h',
+ '<(libvpx_source)/vp9/common/vp9_scan.c',
+ '<(libvpx_source)/vp9/common/vp9_scan.h',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.c',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.h',
+ '<(libvpx_source)/vp9/common/vp9_textblit.h',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.c',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.h',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.c',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.h',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.c',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.h',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_avg_neon.c',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_dct_neon.c',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_error_neon.c',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_quantize_neon.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.h',
+ '<(libvpx_source)/vp9/encoder/vp9_avg.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.h',
+ '<(libvpx_source)/vp9/encoder/vp9_block.h',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.c',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.h',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.c',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.h',
+ '<(libvpx_source)/vp9/encoder/vp9_dct.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.c',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.h',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.c',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.h',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.c',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.c',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.h',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.c',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.h',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.h',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.c',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.h',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.c',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.h',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.c',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.h',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.c',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.h',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.h',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.h',
+ '<(libvpx_source)/vp9/vp9_cx_iface.c',
+ '<(libvpx_source)/vp9/vp9_dx_iface.c',
+ '<(libvpx_source)/vp9/vp9_iface_common.h',
+ '<(libvpx_source)/vpx/internal/vpx_codec_internal.h',
+ '<(libvpx_source)/vpx/internal/vpx_psnr.h',
+ '<(libvpx_source)/vpx/src/vpx_codec.c',
+ '<(libvpx_source)/vpx/src/vpx_decoder.c',
+ '<(libvpx_source)/vpx/src/vpx_encoder.c',
+ '<(libvpx_source)/vpx/src/vpx_image.c',
+ '<(libvpx_source)/vpx/src/vpx_psnr.c',
+ '<(libvpx_source)/vpx/vp8.h',
+ '<(libvpx_source)/vpx/vp8cx.h',
+ '<(libvpx_source)/vpx/vp8dx.h',
+ '<(libvpx_source)/vpx/vpx_codec.h',
+ '<(libvpx_source)/vpx/vpx_decoder.h',
+ '<(libvpx_source)/vpx/vpx_encoder.h',
+ '<(libvpx_source)/vpx/vpx_frame_buffer.h',
+ '<(libvpx_source)/vpx/vpx_image.h',
+ '<(libvpx_source)/vpx/vpx_integer.h',
+ '<(libvpx_source)/vpx_dsp/arm/bilinear_filter_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/fwd_txfm_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct16x16_1_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct16x16_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct16x16_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct32x32_1_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct32x32_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct4x4_1_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct4x4_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct8x8_1_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct8x8_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/intrapred_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/intrapred_neon_asm.asm',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_16_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_4_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_8_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_mb_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/sad4d_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/sad_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/sad_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/save_reg_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/subpel_variance_media.c',
+ '<(libvpx_source)/vpx_dsp/arm/subpel_variance_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/subtract_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/variance_halfpixvar16x16_h_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/variance_halfpixvar16x16_hv_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/variance_halfpixvar16x16_v_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/variance_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/variance_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve8_avg_neon_asm.asm',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve8_neon_asm.asm',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve_avg_neon_asm.asm',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve_copy_neon_asm.asm',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve_neon.c',
+ '<(libvpx_source)/vpx_dsp/bitreader.c',
+ '<(libvpx_source)/vpx_dsp/bitreader.h',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.h',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.c',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.h',
+ '<(libvpx_source)/vpx_dsp/intrapred.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.h',
+ '<(libvpx_source)/vpx_dsp/loopfilter.c',
+ '<(libvpx_source)/vpx_dsp/prob.c',
+ '<(libvpx_source)/vpx_dsp/prob.h',
+ '<(libvpx_source)/vpx_dsp/quantize.c',
+ '<(libvpx_source)/vpx_dsp/quantize.h',
+ '<(libvpx_source)/vpx_dsp/sad.c',
+ '<(libvpx_source)/vpx_dsp/subtract.c',
+ '<(libvpx_source)/vpx_dsp/txfm_common.h',
+ '<(libvpx_source)/vpx_dsp/variance.c',
+ '<(libvpx_source)/vpx_dsp/variance.h',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.c',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_common.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_rtcd.c',
+ '<(libvpx_source)/vpx_dsp/vpx_filter.h',
+ '<(libvpx_source)/vpx_mem/include/vpx_mem_intrnl.h',
+ '<(libvpx_source)/vpx_mem/vpx_mem.c',
+ '<(libvpx_source)/vpx_mem/vpx_mem.h',
+ '<(libvpx_source)/vpx_ports/arm.h',
+ '<(libvpx_source)/vpx_ports/arm_cpudetect.c',
+ '<(libvpx_source)/vpx_ports/bitops.h',
+ '<(libvpx_source)/vpx_ports/emmintrin_compat.h',
+ '<(libvpx_source)/vpx_ports/mem.h',
+ '<(libvpx_source)/vpx_ports/mem_ops.h',
+ '<(libvpx_source)/vpx_ports/mem_ops_aligned.h',
+ '<(libvpx_source)/vpx_ports/msvc.h',
+ '<(libvpx_source)/vpx_ports/system_state.h',
+ '<(libvpx_source)/vpx_ports/vpx_once.h',
+ '<(libvpx_source)/vpx_ports/vpx_timer.h',
+ '<(libvpx_source)/vpx_scale/generic/gen_scalers.c',
+ '<(libvpx_source)/vpx_scale/generic/vpx_scale.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12config.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12extend.c',
+ '<(libvpx_source)/vpx_scale/vpx_scale.h',
+ '<(libvpx_source)/vpx_scale/vpx_scale_rtcd.c',
+ '<(libvpx_source)/vpx_scale/yv12config.h',
+ '<(libvpx_source)/vpx_util/endian_inl.h',
+ '<(libvpx_source)/vpx_util/vpx_thread.c',
+ '<(libvpx_source)/vpx_util/vpx_thread.h',
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs_arm_neon_cpu_detect.gypi b/third_party/libvpx_new/libvpx_srcs_arm_neon_cpu_detect.gypi
new file mode 100644
index 0000000..a5b97bd
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_arm_neon_cpu_detect.gypi
@@ -0,0 +1,359 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'sources': [
+ '<(libvpx_source)/vp8/common/alloccommon.c',
+ '<(libvpx_source)/vp8/common/alloccommon.h',
+ '<(libvpx_source)/vp8/common/arm/armv6/bilinearfilter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/copymem16x16_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/copymem8x4_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/copymem8x8_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/dc_only_idct_add_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/dequant_idct_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/dequantize_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/filter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/idct_blk_v6.c',
+ '<(libvpx_source)/vp8/common/arm/armv6/idct_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/intra4x4_predict_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/iwalsh_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/loopfilter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/simpleloopfilter_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/armv6/sixtappredict8x4_v6.asm',
+ '<(libvpx_source)/vp8/common/arm/bilinearfilter_arm.c',
+ '<(libvpx_source)/vp8/common/arm/bilinearfilter_arm.h',
+ '<(libvpx_source)/vp8/common/arm/dequantize_arm.c',
+ '<(libvpx_source)/vp8/common/arm/filter_arm.c',
+ '<(libvpx_source)/vp8/common/arm/loopfilter_arm.c',
+ '<(libvpx_source)/vp8/common/blockd.c',
+ '<(libvpx_source)/vp8/common/blockd.h',
+ '<(libvpx_source)/vp8/common/coefupdateprobs.h',
+ '<(libvpx_source)/vp8/common/common.h',
+ '<(libvpx_source)/vp8/common/copy_c.c',
+ '<(libvpx_source)/vp8/common/debugmodes.c',
+ '<(libvpx_source)/vp8/common/default_coef_probs.h',
+ '<(libvpx_source)/vp8/common/dequantize.c',
+ '<(libvpx_source)/vp8/common/entropy.c',
+ '<(libvpx_source)/vp8/common/entropy.h',
+ '<(libvpx_source)/vp8/common/entropymode.c',
+ '<(libvpx_source)/vp8/common/entropymode.h',
+ '<(libvpx_source)/vp8/common/entropymv.c',
+ '<(libvpx_source)/vp8/common/entropymv.h',
+ '<(libvpx_source)/vp8/common/extend.c',
+ '<(libvpx_source)/vp8/common/extend.h',
+ '<(libvpx_source)/vp8/common/filter.c',
+ '<(libvpx_source)/vp8/common/filter.h',
+ '<(libvpx_source)/vp8/common/findnearmv.c',
+ '<(libvpx_source)/vp8/common/findnearmv.h',
+ '<(libvpx_source)/vp8/common/generic/systemdependent.c',
+ '<(libvpx_source)/vp8/common/header.h',
+ '<(libvpx_source)/vp8/common/idct_blk.c',
+ '<(libvpx_source)/vp8/common/idctllm.c',
+ '<(libvpx_source)/vp8/common/invtrans.h',
+ '<(libvpx_source)/vp8/common/loopfilter.h',
+ '<(libvpx_source)/vp8/common/loopfilter_filters.c',
+ '<(libvpx_source)/vp8/common/mbpitch.c',
+ '<(libvpx_source)/vp8/common/mfqe.c',
+ '<(libvpx_source)/vp8/common/modecont.c',
+ '<(libvpx_source)/vp8/common/modecont.h',
+ '<(libvpx_source)/vp8/common/mv.h',
+ '<(libvpx_source)/vp8/common/onyx.h',
+ '<(libvpx_source)/vp8/common/onyxc_int.h',
+ '<(libvpx_source)/vp8/common/onyxd.h',
+ '<(libvpx_source)/vp8/common/postproc.c',
+ '<(libvpx_source)/vp8/common/postproc.h',
+ '<(libvpx_source)/vp8/common/ppflags.h',
+ '<(libvpx_source)/vp8/common/quant_common.c',
+ '<(libvpx_source)/vp8/common/quant_common.h',
+ '<(libvpx_source)/vp8/common/reconinter.c',
+ '<(libvpx_source)/vp8/common/reconinter.h',
+ '<(libvpx_source)/vp8/common/reconintra.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.h',
+ '<(libvpx_source)/vp8/common/rtcd.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.h',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.c',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.h',
+ '<(libvpx_source)/vp8/common/systemdependent.h',
+ '<(libvpx_source)/vp8/common/threading.h',
+ '<(libvpx_source)/vp8/common/treecoder.c',
+ '<(libvpx_source)/vp8/common/treecoder.h',
+ '<(libvpx_source)/vp8/common/vp8_entropymodedata.h',
+ '<(libvpx_source)/vp8/common/vp8_loopfilter.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.h',
+ '<(libvpx_source)/vp8/decoder/decodeframe.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.h',
+ '<(libvpx_source)/vp8/decoder/decoderthreading.h',
+ '<(libvpx_source)/vp8/decoder/detokenize.c',
+ '<(libvpx_source)/vp8/decoder/detokenize.h',
+ '<(libvpx_source)/vp8/decoder/onyxd_if.c',
+ '<(libvpx_source)/vp8/decoder/onyxd_int.h',
+ '<(libvpx_source)/vp8/decoder/threading.c',
+ '<(libvpx_source)/vp8/decoder/treereader.h',
+ '<(libvpx_source)/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm',
+ '<(libvpx_source)/vp8/encoder/arm/armv6/walsh_v6.asm',
+ '<(libvpx_source)/vp8/encoder/arm/dct_arm.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.h',
+ '<(libvpx_source)/vp8/encoder/block.h',
+ '<(libvpx_source)/vp8/encoder/boolhuff.c',
+ '<(libvpx_source)/vp8/encoder/boolhuff.h',
+ '<(libvpx_source)/vp8/encoder/dct.c',
+ '<(libvpx_source)/vp8/encoder/dct_value_cost.h',
+ '<(libvpx_source)/vp8/encoder/dct_value_tokens.h',
+ '<(libvpx_source)/vp8/encoder/defaultcoefcounts.h',
+ '<(libvpx_source)/vp8/encoder/denoising.c',
+ '<(libvpx_source)/vp8/encoder/denoising.h',
+ '<(libvpx_source)/vp8/encoder/encodeframe.c',
+ '<(libvpx_source)/vp8/encoder/encodeframe.h',
+ '<(libvpx_source)/vp8/encoder/encodeintra.c',
+ '<(libvpx_source)/vp8/encoder/encodeintra.h',
+ '<(libvpx_source)/vp8/encoder/encodemb.c',
+ '<(libvpx_source)/vp8/encoder/encodemb.h',
+ '<(libvpx_source)/vp8/encoder/encodemv.c',
+ '<(libvpx_source)/vp8/encoder/encodemv.h',
+ '<(libvpx_source)/vp8/encoder/ethreading.c',
+ '<(libvpx_source)/vp8/encoder/firstpass.h',
+ '<(libvpx_source)/vp8/encoder/lookahead.c',
+ '<(libvpx_source)/vp8/encoder/lookahead.h',
+ '<(libvpx_source)/vp8/encoder/mcomp.c',
+ '<(libvpx_source)/vp8/encoder/mcomp.h',
+ '<(libvpx_source)/vp8/encoder/modecosts.c',
+ '<(libvpx_source)/vp8/encoder/modecosts.h',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.c',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.h',
+ '<(libvpx_source)/vp8/encoder/onyx_if.c',
+ '<(libvpx_source)/vp8/encoder/onyx_int.h',
+ '<(libvpx_source)/vp8/encoder/pickinter.c',
+ '<(libvpx_source)/vp8/encoder/pickinter.h',
+ '<(libvpx_source)/vp8/encoder/picklpf.c',
+ '<(libvpx_source)/vp8/encoder/quantize.h',
+ '<(libvpx_source)/vp8/encoder/ratectrl.c',
+ '<(libvpx_source)/vp8/encoder/ratectrl.h',
+ '<(libvpx_source)/vp8/encoder/rdopt.c',
+ '<(libvpx_source)/vp8/encoder/rdopt.h',
+ '<(libvpx_source)/vp8/encoder/segmentation.c',
+ '<(libvpx_source)/vp8/encoder/segmentation.h',
+ '<(libvpx_source)/vp8/encoder/tokenize.c',
+ '<(libvpx_source)/vp8/encoder/tokenize.h',
+ '<(libvpx_source)/vp8/encoder/treewriter.c',
+ '<(libvpx_source)/vp8/encoder/treewriter.h',
+ '<(libvpx_source)/vp8/encoder/vp8_quantize.c',
+ '<(libvpx_source)/vp8/vp8_cx_iface.c',
+ '<(libvpx_source)/vp8/vp8_dx_iface.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.h',
+ '<(libvpx_source)/vp9/common/vp9_blockd.c',
+ '<(libvpx_source)/vp9/common/vp9_blockd.h',
+ '<(libvpx_source)/vp9/common/vp9_common.h',
+ '<(libvpx_source)/vp9/common/vp9_common_data.c',
+ '<(libvpx_source)/vp9/common/vp9_common_data.h',
+ '<(libvpx_source)/vp9/common/vp9_debugmodes.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.h',
+ '<(libvpx_source)/vp9/common/vp9_enums.h',
+ '<(libvpx_source)/vp9/common/vp9_filter.c',
+ '<(libvpx_source)/vp9/common/vp9_filter.h',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.c',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.h',
+ '<(libvpx_source)/vp9/common/vp9_idct.c',
+ '<(libvpx_source)/vp9/common/vp9_idct.h',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.c',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.h',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.c',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.h',
+ '<(libvpx_source)/vp9/common/vp9_mv.h',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.c',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.h',
+ '<(libvpx_source)/vp9/common/vp9_onyxc_int.h',
+ '<(libvpx_source)/vp9/common/vp9_postproc.c',
+ '<(libvpx_source)/vp9/common/vp9_postproc.h',
+ '<(libvpx_source)/vp9/common/vp9_ppflags.h',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.c',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.h',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.c',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.h',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.c',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.h',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.c',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.h',
+ '<(libvpx_source)/vp9/common/vp9_rtcd.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.h',
+ '<(libvpx_source)/vp9/common/vp9_scan.c',
+ '<(libvpx_source)/vp9/common/vp9_scan.h',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.c',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.h',
+ '<(libvpx_source)/vp9/common/vp9_textblit.h',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.c',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.h',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.c',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.h',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.c',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.h',
+ '<(libvpx_source)/vp9/encoder/vp9_avg.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.h',
+ '<(libvpx_source)/vp9/encoder/vp9_block.h',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.c',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.h',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.c',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.h',
+ '<(libvpx_source)/vp9/encoder/vp9_dct.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.c',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.h',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.c',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.h',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.c',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.c',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.h',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.c',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.h',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.h',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.c',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.h',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.c',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.h',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.c',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.h',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.c',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.h',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.h',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.h',
+ '<(libvpx_source)/vp9/vp9_cx_iface.c',
+ '<(libvpx_source)/vp9/vp9_dx_iface.c',
+ '<(libvpx_source)/vp9/vp9_iface_common.h',
+ '<(libvpx_source)/vpx/internal/vpx_codec_internal.h',
+ '<(libvpx_source)/vpx/internal/vpx_psnr.h',
+ '<(libvpx_source)/vpx/src/vpx_codec.c',
+ '<(libvpx_source)/vpx/src/vpx_decoder.c',
+ '<(libvpx_source)/vpx/src/vpx_encoder.c',
+ '<(libvpx_source)/vpx/src/vpx_image.c',
+ '<(libvpx_source)/vpx/src/vpx_psnr.c',
+ '<(libvpx_source)/vpx/vp8.h',
+ '<(libvpx_source)/vpx/vp8cx.h',
+ '<(libvpx_source)/vpx/vp8dx.h',
+ '<(libvpx_source)/vpx/vpx_codec.h',
+ '<(libvpx_source)/vpx/vpx_decoder.h',
+ '<(libvpx_source)/vpx/vpx_encoder.h',
+ '<(libvpx_source)/vpx/vpx_frame_buffer.h',
+ '<(libvpx_source)/vpx/vpx_image.h',
+ '<(libvpx_source)/vpx/vpx_integer.h',
+ '<(libvpx_source)/vpx_dsp/arm/bilinear_filter_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/sad_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/subpel_variance_media.c',
+ '<(libvpx_source)/vpx_dsp/arm/variance_halfpixvar16x16_h_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/variance_halfpixvar16x16_hv_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/variance_halfpixvar16x16_v_media.asm',
+ '<(libvpx_source)/vpx_dsp/arm/variance_media.asm',
+ '<(libvpx_source)/vpx_dsp/bitreader.c',
+ '<(libvpx_source)/vpx_dsp/bitreader.h',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.h',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.c',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.h',
+ '<(libvpx_source)/vpx_dsp/intrapred.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.h',
+ '<(libvpx_source)/vpx_dsp/loopfilter.c',
+ '<(libvpx_source)/vpx_dsp/prob.c',
+ '<(libvpx_source)/vpx_dsp/prob.h',
+ '<(libvpx_source)/vpx_dsp/quantize.c',
+ '<(libvpx_source)/vpx_dsp/quantize.h',
+ '<(libvpx_source)/vpx_dsp/sad.c',
+ '<(libvpx_source)/vpx_dsp/subtract.c',
+ '<(libvpx_source)/vpx_dsp/txfm_common.h',
+ '<(libvpx_source)/vpx_dsp/variance.c',
+ '<(libvpx_source)/vpx_dsp/variance.h',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.c',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_common.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_rtcd.c',
+ '<(libvpx_source)/vpx_dsp/vpx_filter.h',
+ '<(libvpx_source)/vpx_mem/include/vpx_mem_intrnl.h',
+ '<(libvpx_source)/vpx_mem/vpx_mem.c',
+ '<(libvpx_source)/vpx_mem/vpx_mem.h',
+ '<(libvpx_source)/vpx_ports/arm.h',
+ '<(libvpx_source)/vpx_ports/arm_cpudetect.c',
+ '<(libvpx_source)/vpx_ports/bitops.h',
+ '<(libvpx_source)/vpx_ports/emmintrin_compat.h',
+ '<(libvpx_source)/vpx_ports/mem.h',
+ '<(libvpx_source)/vpx_ports/mem_ops.h',
+ '<(libvpx_source)/vpx_ports/mem_ops_aligned.h',
+ '<(libvpx_source)/vpx_ports/msvc.h',
+ '<(libvpx_source)/vpx_ports/system_state.h',
+ '<(libvpx_source)/vpx_ports/vpx_once.h',
+ '<(libvpx_source)/vpx_ports/vpx_timer.h',
+ '<(libvpx_source)/vpx_scale/generic/gen_scalers.c',
+ '<(libvpx_source)/vpx_scale/generic/vpx_scale.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12config.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12extend.c',
+ '<(libvpx_source)/vpx_scale/vpx_scale.h',
+ '<(libvpx_source)/vpx_scale/vpx_scale_rtcd.c',
+ '<(libvpx_source)/vpx_scale/yv12config.h',
+ '<(libvpx_source)/vpx_util/endian_inl.h',
+ '<(libvpx_source)/vpx_util/vpx_thread.c',
+ '<(libvpx_source)/vpx_util/vpx_thread.h',
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs_arm_neon_cpu_detect_intrinsics.gypi b/third_party/libvpx_new/libvpx_srcs_arm_neon_cpu_detect_intrinsics.gypi
new file mode 100644
index 0000000..6bc2b60
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_arm_neon_cpu_detect_intrinsics.gypi
@@ -0,0 +1,87 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'targets': [
+ {
+ 'target_name': 'libvpx_intrinsics_neon',
+ 'type': 'static_library',
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '<(libvpx_source)',
+ ],
+ 'sources': [
+ '<(libvpx_source)/vp8/common/arm/neon/bilinearpredict_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/copymem_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/dc_only_idct_add_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/dequant_idct_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/dequantizeb_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/idct_blk_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/idct_dequant_0_2x_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/idct_dequant_full_2x_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/iwalsh_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/mbloopfilter_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/reconintra_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/shortidct4x4llm_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/sixtappredict_neon.c',
+ '<(libvpx_source)/vp8/common/arm/neon/vp8_loopfilter_neon.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/denoising_neon.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/fastquantizeb_neon.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/shortfdct_neon.c',
+ '<(libvpx_source)/vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.c',
+ '<(libvpx_source)/vp9/common/arm/neon/vp9_iht4x4_add_neon.c',
+ '<(libvpx_source)/vp9/common/arm/neon/vp9_iht8x8_add_neon.c',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_avg_neon.c',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_dct_neon.c',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_error_neon.c',
+ '<(libvpx_source)/vp9/encoder/arm/neon/vp9_quantize_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/fwd_txfm_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct16x16_1_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct16x16_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct16x16_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/idct32x32_1_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct32x32_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct4x4_1_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct4x4_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct8x8_1_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/idct8x8_add_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/intrapred_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/intrapred_neon_asm.asm',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_16_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_4_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_8_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_mb_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/loopfilter_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/sad4d_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/sad_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/save_reg_neon.asm',
+ '<(libvpx_source)/vpx_dsp/arm/subpel_variance_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/subtract_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/variance_neon.c',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve8_avg_neon_asm.asm',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve8_neon_asm.asm',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve_avg_neon_asm.asm',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve_copy_neon_asm.asm',
+ '<(libvpx_source)/vpx_dsp/arm/vpx_convolve_neon.c',
+ ],
+ 'includes': [ 'ads2gas.gypi' ],
+ 'cflags!': [ '-mfpu=vfpv3-d16' ],
+ 'conditions': [
+ # Disable GCC LTO in neon targets due to compiler bug
+ # crbug.com/408997
+ ['clang==0 and use_lto==1', {
+ 'cflags!': [
+ '-flto',
+ '-ffat-lto-objects',
+ ],
+ }],
+ ],
+ 'cflags': [ '-mfpu=neon', ],
+ 'xcode_settings': { 'OTHER_CFLAGS': [ '-mfpu=neon' ] },
+ },
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs_generic.gypi b/third_party/libvpx_new/libvpx_srcs_generic.gypi
new file mode 100644
index 0000000..fbfe3f7
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_generic.gypi
@@ -0,0 +1,327 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'sources': [
+ '<(libvpx_source)/vp8/common/alloccommon.c',
+ '<(libvpx_source)/vp8/common/alloccommon.h',
+ '<(libvpx_source)/vp8/common/blockd.c',
+ '<(libvpx_source)/vp8/common/blockd.h',
+ '<(libvpx_source)/vp8/common/coefupdateprobs.h',
+ '<(libvpx_source)/vp8/common/common.h',
+ '<(libvpx_source)/vp8/common/copy_c.c',
+ '<(libvpx_source)/vp8/common/debugmodes.c',
+ '<(libvpx_source)/vp8/common/default_coef_probs.h',
+ '<(libvpx_source)/vp8/common/dequantize.c',
+ '<(libvpx_source)/vp8/common/entropy.c',
+ '<(libvpx_source)/vp8/common/entropy.h',
+ '<(libvpx_source)/vp8/common/entropymode.c',
+ '<(libvpx_source)/vp8/common/entropymode.h',
+ '<(libvpx_source)/vp8/common/entropymv.c',
+ '<(libvpx_source)/vp8/common/entropymv.h',
+ '<(libvpx_source)/vp8/common/extend.c',
+ '<(libvpx_source)/vp8/common/extend.h',
+ '<(libvpx_source)/vp8/common/filter.c',
+ '<(libvpx_source)/vp8/common/filter.h',
+ '<(libvpx_source)/vp8/common/findnearmv.c',
+ '<(libvpx_source)/vp8/common/findnearmv.h',
+ '<(libvpx_source)/vp8/common/generic/systemdependent.c',
+ '<(libvpx_source)/vp8/common/header.h',
+ '<(libvpx_source)/vp8/common/idct_blk.c',
+ '<(libvpx_source)/vp8/common/idctllm.c',
+ '<(libvpx_source)/vp8/common/invtrans.h',
+ '<(libvpx_source)/vp8/common/loopfilter.h',
+ '<(libvpx_source)/vp8/common/loopfilter_filters.c',
+ '<(libvpx_source)/vp8/common/mbpitch.c',
+ '<(libvpx_source)/vp8/common/mfqe.c',
+ '<(libvpx_source)/vp8/common/modecont.c',
+ '<(libvpx_source)/vp8/common/modecont.h',
+ '<(libvpx_source)/vp8/common/mv.h',
+ '<(libvpx_source)/vp8/common/onyx.h',
+ '<(libvpx_source)/vp8/common/onyxc_int.h',
+ '<(libvpx_source)/vp8/common/onyxd.h',
+ '<(libvpx_source)/vp8/common/postproc.c',
+ '<(libvpx_source)/vp8/common/postproc.h',
+ '<(libvpx_source)/vp8/common/ppflags.h',
+ '<(libvpx_source)/vp8/common/quant_common.c',
+ '<(libvpx_source)/vp8/common/quant_common.h',
+ '<(libvpx_source)/vp8/common/reconinter.c',
+ '<(libvpx_source)/vp8/common/reconinter.h',
+ '<(libvpx_source)/vp8/common/reconintra.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.h',
+ '<(libvpx_source)/vp8/common/rtcd.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.h',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.c',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.h',
+ '<(libvpx_source)/vp8/common/systemdependent.h',
+ '<(libvpx_source)/vp8/common/threading.h',
+ '<(libvpx_source)/vp8/common/treecoder.c',
+ '<(libvpx_source)/vp8/common/treecoder.h',
+ '<(libvpx_source)/vp8/common/vp8_entropymodedata.h',
+ '<(libvpx_source)/vp8/common/vp8_loopfilter.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.h',
+ '<(libvpx_source)/vp8/decoder/decodeframe.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.h',
+ '<(libvpx_source)/vp8/decoder/decoderthreading.h',
+ '<(libvpx_source)/vp8/decoder/detokenize.c',
+ '<(libvpx_source)/vp8/decoder/detokenize.h',
+ '<(libvpx_source)/vp8/decoder/onyxd_if.c',
+ '<(libvpx_source)/vp8/decoder/onyxd_int.h',
+ '<(libvpx_source)/vp8/decoder/threading.c',
+ '<(libvpx_source)/vp8/decoder/treereader.h',
+ '<(libvpx_source)/vp8/encoder/bitstream.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.h',
+ '<(libvpx_source)/vp8/encoder/block.h',
+ '<(libvpx_source)/vp8/encoder/boolhuff.c',
+ '<(libvpx_source)/vp8/encoder/boolhuff.h',
+ '<(libvpx_source)/vp8/encoder/dct.c',
+ '<(libvpx_source)/vp8/encoder/dct_value_cost.h',
+ '<(libvpx_source)/vp8/encoder/dct_value_tokens.h',
+ '<(libvpx_source)/vp8/encoder/defaultcoefcounts.h',
+ '<(libvpx_source)/vp8/encoder/denoising.c',
+ '<(libvpx_source)/vp8/encoder/denoising.h',
+ '<(libvpx_source)/vp8/encoder/encodeframe.c',
+ '<(libvpx_source)/vp8/encoder/encodeframe.h',
+ '<(libvpx_source)/vp8/encoder/encodeintra.c',
+ '<(libvpx_source)/vp8/encoder/encodeintra.h',
+ '<(libvpx_source)/vp8/encoder/encodemb.c',
+ '<(libvpx_source)/vp8/encoder/encodemb.h',
+ '<(libvpx_source)/vp8/encoder/encodemv.c',
+ '<(libvpx_source)/vp8/encoder/encodemv.h',
+ '<(libvpx_source)/vp8/encoder/ethreading.c',
+ '<(libvpx_source)/vp8/encoder/firstpass.h',
+ '<(libvpx_source)/vp8/encoder/lookahead.c',
+ '<(libvpx_source)/vp8/encoder/lookahead.h',
+ '<(libvpx_source)/vp8/encoder/mcomp.c',
+ '<(libvpx_source)/vp8/encoder/mcomp.h',
+ '<(libvpx_source)/vp8/encoder/modecosts.c',
+ '<(libvpx_source)/vp8/encoder/modecosts.h',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.c',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.h',
+ '<(libvpx_source)/vp8/encoder/onyx_if.c',
+ '<(libvpx_source)/vp8/encoder/onyx_int.h',
+ '<(libvpx_source)/vp8/encoder/pickinter.c',
+ '<(libvpx_source)/vp8/encoder/pickinter.h',
+ '<(libvpx_source)/vp8/encoder/picklpf.c',
+ '<(libvpx_source)/vp8/encoder/quantize.h',
+ '<(libvpx_source)/vp8/encoder/ratectrl.c',
+ '<(libvpx_source)/vp8/encoder/ratectrl.h',
+ '<(libvpx_source)/vp8/encoder/rdopt.c',
+ '<(libvpx_source)/vp8/encoder/rdopt.h',
+ '<(libvpx_source)/vp8/encoder/segmentation.c',
+ '<(libvpx_source)/vp8/encoder/segmentation.h',
+ '<(libvpx_source)/vp8/encoder/tokenize.c',
+ '<(libvpx_source)/vp8/encoder/tokenize.h',
+ '<(libvpx_source)/vp8/encoder/treewriter.c',
+ '<(libvpx_source)/vp8/encoder/treewriter.h',
+ '<(libvpx_source)/vp8/encoder/vp8_quantize.c',
+ '<(libvpx_source)/vp8/vp8_cx_iface.c',
+ '<(libvpx_source)/vp8/vp8_dx_iface.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.h',
+ '<(libvpx_source)/vp9/common/vp9_blockd.c',
+ '<(libvpx_source)/vp9/common/vp9_blockd.h',
+ '<(libvpx_source)/vp9/common/vp9_common.h',
+ '<(libvpx_source)/vp9/common/vp9_common_data.c',
+ '<(libvpx_source)/vp9/common/vp9_common_data.h',
+ '<(libvpx_source)/vp9/common/vp9_debugmodes.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.h',
+ '<(libvpx_source)/vp9/common/vp9_enums.h',
+ '<(libvpx_source)/vp9/common/vp9_filter.c',
+ '<(libvpx_source)/vp9/common/vp9_filter.h',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.c',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.h',
+ '<(libvpx_source)/vp9/common/vp9_idct.c',
+ '<(libvpx_source)/vp9/common/vp9_idct.h',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.c',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.h',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.c',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.h',
+ '<(libvpx_source)/vp9/common/vp9_mv.h',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.c',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.h',
+ '<(libvpx_source)/vp9/common/vp9_onyxc_int.h',
+ '<(libvpx_source)/vp9/common/vp9_postproc.c',
+ '<(libvpx_source)/vp9/common/vp9_postproc.h',
+ '<(libvpx_source)/vp9/common/vp9_ppflags.h',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.c',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.h',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.c',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.h',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.c',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.h',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.c',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.h',
+ '<(libvpx_source)/vp9/common/vp9_rtcd.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.h',
+ '<(libvpx_source)/vp9/common/vp9_scan.c',
+ '<(libvpx_source)/vp9/common/vp9_scan.h',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.c',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.h',
+ '<(libvpx_source)/vp9/common/vp9_textblit.h',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.c',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.h',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.c',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.h',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.c',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.h',
+ '<(libvpx_source)/vp9/encoder/vp9_avg.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.h',
+ '<(libvpx_source)/vp9/encoder/vp9_block.h',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.c',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.h',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.c',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.h',
+ '<(libvpx_source)/vp9/encoder/vp9_dct.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.c',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.h',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.c',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.h',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.c',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.c',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.h',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.c',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.h',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.h',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.c',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.h',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.c',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.h',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.c',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.h',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.c',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.h',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.h',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.h',
+ '<(libvpx_source)/vp9/vp9_cx_iface.c',
+ '<(libvpx_source)/vp9/vp9_dx_iface.c',
+ '<(libvpx_source)/vp9/vp9_iface_common.h',
+ '<(libvpx_source)/vpx/internal/vpx_codec_internal.h',
+ '<(libvpx_source)/vpx/internal/vpx_psnr.h',
+ '<(libvpx_source)/vpx/src/vpx_codec.c',
+ '<(libvpx_source)/vpx/src/vpx_decoder.c',
+ '<(libvpx_source)/vpx/src/vpx_encoder.c',
+ '<(libvpx_source)/vpx/src/vpx_image.c',
+ '<(libvpx_source)/vpx/src/vpx_psnr.c',
+ '<(libvpx_source)/vpx/vp8.h',
+ '<(libvpx_source)/vpx/vp8cx.h',
+ '<(libvpx_source)/vpx/vp8dx.h',
+ '<(libvpx_source)/vpx/vpx_codec.h',
+ '<(libvpx_source)/vpx/vpx_decoder.h',
+ '<(libvpx_source)/vpx/vpx_encoder.h',
+ '<(libvpx_source)/vpx/vpx_frame_buffer.h',
+ '<(libvpx_source)/vpx/vpx_image.h',
+ '<(libvpx_source)/vpx/vpx_integer.h',
+ '<(libvpx_source)/vpx_dsp/bitreader.c',
+ '<(libvpx_source)/vpx_dsp/bitreader.h',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.h',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.c',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.h',
+ '<(libvpx_source)/vpx_dsp/intrapred.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.h',
+ '<(libvpx_source)/vpx_dsp/loopfilter.c',
+ '<(libvpx_source)/vpx_dsp/prob.c',
+ '<(libvpx_source)/vpx_dsp/prob.h',
+ '<(libvpx_source)/vpx_dsp/quantize.c',
+ '<(libvpx_source)/vpx_dsp/quantize.h',
+ '<(libvpx_source)/vpx_dsp/sad.c',
+ '<(libvpx_source)/vpx_dsp/subtract.c',
+ '<(libvpx_source)/vpx_dsp/txfm_common.h',
+ '<(libvpx_source)/vpx_dsp/variance.c',
+ '<(libvpx_source)/vpx_dsp/variance.h',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.c',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_common.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_rtcd.c',
+ '<(libvpx_source)/vpx_dsp/vpx_filter.h',
+ '<(libvpx_source)/vpx_mem/include/vpx_mem_intrnl.h',
+ '<(libvpx_source)/vpx_mem/vpx_mem.c',
+ '<(libvpx_source)/vpx_mem/vpx_mem.h',
+ '<(libvpx_source)/vpx_ports/bitops.h',
+ '<(libvpx_source)/vpx_ports/emmintrin_compat.h',
+ '<(libvpx_source)/vpx_ports/mem.h',
+ '<(libvpx_source)/vpx_ports/mem_ops.h',
+ '<(libvpx_source)/vpx_ports/mem_ops_aligned.h',
+ '<(libvpx_source)/vpx_ports/msvc.h',
+ '<(libvpx_source)/vpx_ports/system_state.h',
+ '<(libvpx_source)/vpx_ports/vpx_once.h',
+ '<(libvpx_source)/vpx_ports/vpx_timer.h',
+ '<(libvpx_source)/vpx_scale/generic/gen_scalers.c',
+ '<(libvpx_source)/vpx_scale/generic/vpx_scale.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12config.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12extend.c',
+ '<(libvpx_source)/vpx_scale/vpx_scale.h',
+ '<(libvpx_source)/vpx_scale/vpx_scale_rtcd.c',
+ '<(libvpx_source)/vpx_scale/yv12config.h',
+ '<(libvpx_source)/vpx_util/endian_inl.h',
+ '<(libvpx_source)/vpx_util/vpx_thread.c',
+ '<(libvpx_source)/vpx_util/vpx_thread.h',
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs_mips.gypi b/third_party/libvpx_new/libvpx_srcs_mips.gypi
new file mode 100644
index 0000000..6ec3373
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_mips.gypi
@@ -0,0 +1,329 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'sources': [
+ '<(libvpx_source)/vp8/common/alloccommon.c',
+ '<(libvpx_source)/vp8/common/alloccommon.h',
+ '<(libvpx_source)/vp8/common/blockd.c',
+ '<(libvpx_source)/vp8/common/blockd.h',
+ '<(libvpx_source)/vp8/common/coefupdateprobs.h',
+ '<(libvpx_source)/vp8/common/common.h',
+ '<(libvpx_source)/vp8/common/copy_c.c',
+ '<(libvpx_source)/vp8/common/debugmodes.c',
+ '<(libvpx_source)/vp8/common/default_coef_probs.h',
+ '<(libvpx_source)/vp8/common/dequantize.c',
+ '<(libvpx_source)/vp8/common/entropy.c',
+ '<(libvpx_source)/vp8/common/entropy.h',
+ '<(libvpx_source)/vp8/common/entropymode.c',
+ '<(libvpx_source)/vp8/common/entropymode.h',
+ '<(libvpx_source)/vp8/common/entropymv.c',
+ '<(libvpx_source)/vp8/common/entropymv.h',
+ '<(libvpx_source)/vp8/common/extend.c',
+ '<(libvpx_source)/vp8/common/extend.h',
+ '<(libvpx_source)/vp8/common/filter.c',
+ '<(libvpx_source)/vp8/common/filter.h',
+ '<(libvpx_source)/vp8/common/findnearmv.c',
+ '<(libvpx_source)/vp8/common/findnearmv.h',
+ '<(libvpx_source)/vp8/common/generic/systemdependent.c',
+ '<(libvpx_source)/vp8/common/header.h',
+ '<(libvpx_source)/vp8/common/idct_blk.c',
+ '<(libvpx_source)/vp8/common/idctllm.c',
+ '<(libvpx_source)/vp8/common/invtrans.h',
+ '<(libvpx_source)/vp8/common/loopfilter.h',
+ '<(libvpx_source)/vp8/common/loopfilter_filters.c',
+ '<(libvpx_source)/vp8/common/mbpitch.c',
+ '<(libvpx_source)/vp8/common/mfqe.c',
+ '<(libvpx_source)/vp8/common/modecont.c',
+ '<(libvpx_source)/vp8/common/modecont.h',
+ '<(libvpx_source)/vp8/common/mv.h',
+ '<(libvpx_source)/vp8/common/onyx.h',
+ '<(libvpx_source)/vp8/common/onyxc_int.h',
+ '<(libvpx_source)/vp8/common/onyxd.h',
+ '<(libvpx_source)/vp8/common/postproc.c',
+ '<(libvpx_source)/vp8/common/postproc.h',
+ '<(libvpx_source)/vp8/common/ppflags.h',
+ '<(libvpx_source)/vp8/common/quant_common.c',
+ '<(libvpx_source)/vp8/common/quant_common.h',
+ '<(libvpx_source)/vp8/common/reconinter.c',
+ '<(libvpx_source)/vp8/common/reconinter.h',
+ '<(libvpx_source)/vp8/common/reconintra.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.h',
+ '<(libvpx_source)/vp8/common/rtcd.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.h',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.c',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.h',
+ '<(libvpx_source)/vp8/common/systemdependent.h',
+ '<(libvpx_source)/vp8/common/threading.h',
+ '<(libvpx_source)/vp8/common/treecoder.c',
+ '<(libvpx_source)/vp8/common/treecoder.h',
+ '<(libvpx_source)/vp8/common/vp8_entropymodedata.h',
+ '<(libvpx_source)/vp8/common/vp8_loopfilter.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.h',
+ '<(libvpx_source)/vp8/decoder/decodeframe.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.h',
+ '<(libvpx_source)/vp8/decoder/decoderthreading.h',
+ '<(libvpx_source)/vp8/decoder/detokenize.c',
+ '<(libvpx_source)/vp8/decoder/detokenize.h',
+ '<(libvpx_source)/vp8/decoder/onyxd_if.c',
+ '<(libvpx_source)/vp8/decoder/onyxd_int.h',
+ '<(libvpx_source)/vp8/decoder/threading.c',
+ '<(libvpx_source)/vp8/decoder/treereader.h',
+ '<(libvpx_source)/vp8/encoder/bitstream.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.h',
+ '<(libvpx_source)/vp8/encoder/block.h',
+ '<(libvpx_source)/vp8/encoder/boolhuff.c',
+ '<(libvpx_source)/vp8/encoder/boolhuff.h',
+ '<(libvpx_source)/vp8/encoder/dct.c',
+ '<(libvpx_source)/vp8/encoder/dct_value_cost.h',
+ '<(libvpx_source)/vp8/encoder/dct_value_tokens.h',
+ '<(libvpx_source)/vp8/encoder/defaultcoefcounts.h',
+ '<(libvpx_source)/vp8/encoder/denoising.c',
+ '<(libvpx_source)/vp8/encoder/denoising.h',
+ '<(libvpx_source)/vp8/encoder/encodeframe.c',
+ '<(libvpx_source)/vp8/encoder/encodeframe.h',
+ '<(libvpx_source)/vp8/encoder/encodeintra.c',
+ '<(libvpx_source)/vp8/encoder/encodeintra.h',
+ '<(libvpx_source)/vp8/encoder/encodemb.c',
+ '<(libvpx_source)/vp8/encoder/encodemb.h',
+ '<(libvpx_source)/vp8/encoder/encodemv.c',
+ '<(libvpx_source)/vp8/encoder/encodemv.h',
+ '<(libvpx_source)/vp8/encoder/ethreading.c',
+ '<(libvpx_source)/vp8/encoder/firstpass.c',
+ '<(libvpx_source)/vp8/encoder/firstpass.h',
+ '<(libvpx_source)/vp8/encoder/lookahead.c',
+ '<(libvpx_source)/vp8/encoder/lookahead.h',
+ '<(libvpx_source)/vp8/encoder/mcomp.c',
+ '<(libvpx_source)/vp8/encoder/mcomp.h',
+ '<(libvpx_source)/vp8/encoder/modecosts.c',
+ '<(libvpx_source)/vp8/encoder/modecosts.h',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.c',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.h',
+ '<(libvpx_source)/vp8/encoder/onyx_if.c',
+ '<(libvpx_source)/vp8/encoder/onyx_int.h',
+ '<(libvpx_source)/vp8/encoder/pickinter.c',
+ '<(libvpx_source)/vp8/encoder/pickinter.h',
+ '<(libvpx_source)/vp8/encoder/picklpf.c',
+ '<(libvpx_source)/vp8/encoder/quantize.h',
+ '<(libvpx_source)/vp8/encoder/ratectrl.c',
+ '<(libvpx_source)/vp8/encoder/ratectrl.h',
+ '<(libvpx_source)/vp8/encoder/rdopt.c',
+ '<(libvpx_source)/vp8/encoder/rdopt.h',
+ '<(libvpx_source)/vp8/encoder/segmentation.c',
+ '<(libvpx_source)/vp8/encoder/segmentation.h',
+ '<(libvpx_source)/vp8/encoder/temporal_filter.c',
+ '<(libvpx_source)/vp8/encoder/tokenize.c',
+ '<(libvpx_source)/vp8/encoder/tokenize.h',
+ '<(libvpx_source)/vp8/encoder/treewriter.c',
+ '<(libvpx_source)/vp8/encoder/treewriter.h',
+ '<(libvpx_source)/vp8/encoder/vp8_quantize.c',
+ '<(libvpx_source)/vp8/vp8_cx_iface.c',
+ '<(libvpx_source)/vp8/vp8_dx_iface.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.h',
+ '<(libvpx_source)/vp9/common/vp9_blockd.c',
+ '<(libvpx_source)/vp9/common/vp9_blockd.h',
+ '<(libvpx_source)/vp9/common/vp9_common.h',
+ '<(libvpx_source)/vp9/common/vp9_common_data.c',
+ '<(libvpx_source)/vp9/common/vp9_common_data.h',
+ '<(libvpx_source)/vp9/common/vp9_debugmodes.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.h',
+ '<(libvpx_source)/vp9/common/vp9_enums.h',
+ '<(libvpx_source)/vp9/common/vp9_filter.c',
+ '<(libvpx_source)/vp9/common/vp9_filter.h',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.c',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.h',
+ '<(libvpx_source)/vp9/common/vp9_idct.c',
+ '<(libvpx_source)/vp9/common/vp9_idct.h',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.c',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.h',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.c',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.h',
+ '<(libvpx_source)/vp9/common/vp9_mv.h',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.c',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.h',
+ '<(libvpx_source)/vp9/common/vp9_onyxc_int.h',
+ '<(libvpx_source)/vp9/common/vp9_postproc.c',
+ '<(libvpx_source)/vp9/common/vp9_postproc.h',
+ '<(libvpx_source)/vp9/common/vp9_ppflags.h',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.c',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.h',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.c',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.h',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.c',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.h',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.c',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.h',
+ '<(libvpx_source)/vp9/common/vp9_rtcd.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.h',
+ '<(libvpx_source)/vp9/common/vp9_scan.c',
+ '<(libvpx_source)/vp9/common/vp9_scan.h',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.c',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.h',
+ '<(libvpx_source)/vp9/common/vp9_textblit.h',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.c',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.h',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.c',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.h',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.c',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.h',
+ '<(libvpx_source)/vp9/encoder/vp9_avg.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.h',
+ '<(libvpx_source)/vp9/encoder/vp9_block.h',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.c',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.h',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.c',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.h',
+ '<(libvpx_source)/vp9/encoder/vp9_dct.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.c',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.h',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.c',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.h',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.c',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.c',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.h',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.c',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.h',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.h',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.c',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.h',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.c',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.h',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.c',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.h',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.c',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.h',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.h',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.h',
+ '<(libvpx_source)/vp9/vp9_cx_iface.c',
+ '<(libvpx_source)/vp9/vp9_dx_iface.c',
+ '<(libvpx_source)/vp9/vp9_iface_common.h',
+ '<(libvpx_source)/vpx/internal/vpx_codec_internal.h',
+ '<(libvpx_source)/vpx/internal/vpx_psnr.h',
+ '<(libvpx_source)/vpx/src/vpx_codec.c',
+ '<(libvpx_source)/vpx/src/vpx_decoder.c',
+ '<(libvpx_source)/vpx/src/vpx_encoder.c',
+ '<(libvpx_source)/vpx/src/vpx_image.c',
+ '<(libvpx_source)/vpx/src/vpx_psnr.c',
+ '<(libvpx_source)/vpx/vp8.h',
+ '<(libvpx_source)/vpx/vp8cx.h',
+ '<(libvpx_source)/vpx/vp8dx.h',
+ '<(libvpx_source)/vpx/vpx_codec.h',
+ '<(libvpx_source)/vpx/vpx_decoder.h',
+ '<(libvpx_source)/vpx/vpx_encoder.h',
+ '<(libvpx_source)/vpx/vpx_frame_buffer.h',
+ '<(libvpx_source)/vpx/vpx_image.h',
+ '<(libvpx_source)/vpx/vpx_integer.h',
+ '<(libvpx_source)/vpx_dsp/bitreader.c',
+ '<(libvpx_source)/vpx_dsp/bitreader.h',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.h',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.c',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.h',
+ '<(libvpx_source)/vpx_dsp/intrapred.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.h',
+ '<(libvpx_source)/vpx_dsp/loopfilter.c',
+ '<(libvpx_source)/vpx_dsp/prob.c',
+ '<(libvpx_source)/vpx_dsp/prob.h',
+ '<(libvpx_source)/vpx_dsp/quantize.c',
+ '<(libvpx_source)/vpx_dsp/quantize.h',
+ '<(libvpx_source)/vpx_dsp/sad.c',
+ '<(libvpx_source)/vpx_dsp/subtract.c',
+ '<(libvpx_source)/vpx_dsp/txfm_common.h',
+ '<(libvpx_source)/vpx_dsp/variance.c',
+ '<(libvpx_source)/vpx_dsp/variance.h',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.c',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_common.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_rtcd.c',
+ '<(libvpx_source)/vpx_dsp/vpx_filter.h',
+ '<(libvpx_source)/vpx_mem/include/vpx_mem_intrnl.h',
+ '<(libvpx_source)/vpx_mem/vpx_mem.c',
+ '<(libvpx_source)/vpx_mem/vpx_mem.h',
+ '<(libvpx_source)/vpx_ports/bitops.h',
+ '<(libvpx_source)/vpx_ports/emmintrin_compat.h',
+ '<(libvpx_source)/vpx_ports/mem.h',
+ '<(libvpx_source)/vpx_ports/mem_ops.h',
+ '<(libvpx_source)/vpx_ports/mem_ops_aligned.h',
+ '<(libvpx_source)/vpx_ports/msvc.h',
+ '<(libvpx_source)/vpx_ports/system_state.h',
+ '<(libvpx_source)/vpx_ports/vpx_once.h',
+ '<(libvpx_source)/vpx_ports/vpx_timer.h',
+ '<(libvpx_source)/vpx_scale/generic/gen_scalers.c',
+ '<(libvpx_source)/vpx_scale/generic/vpx_scale.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12config.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12extend.c',
+ '<(libvpx_source)/vpx_scale/vpx_scale.h',
+ '<(libvpx_source)/vpx_scale/vpx_scale_rtcd.c',
+ '<(libvpx_source)/vpx_scale/yv12config.h',
+ '<(libvpx_source)/vpx_util/endian_inl.h',
+ '<(libvpx_source)/vpx_util/vpx_thread.c',
+ '<(libvpx_source)/vpx_util/vpx_thread.h',
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs_nacl.gypi b/third_party/libvpx_new/libvpx_srcs_nacl.gypi
new file mode 100644
index 0000000..fbfe3f7
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_nacl.gypi
@@ -0,0 +1,327 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'sources': [
+ '<(libvpx_source)/vp8/common/alloccommon.c',
+ '<(libvpx_source)/vp8/common/alloccommon.h',
+ '<(libvpx_source)/vp8/common/blockd.c',
+ '<(libvpx_source)/vp8/common/blockd.h',
+ '<(libvpx_source)/vp8/common/coefupdateprobs.h',
+ '<(libvpx_source)/vp8/common/common.h',
+ '<(libvpx_source)/vp8/common/copy_c.c',
+ '<(libvpx_source)/vp8/common/debugmodes.c',
+ '<(libvpx_source)/vp8/common/default_coef_probs.h',
+ '<(libvpx_source)/vp8/common/dequantize.c',
+ '<(libvpx_source)/vp8/common/entropy.c',
+ '<(libvpx_source)/vp8/common/entropy.h',
+ '<(libvpx_source)/vp8/common/entropymode.c',
+ '<(libvpx_source)/vp8/common/entropymode.h',
+ '<(libvpx_source)/vp8/common/entropymv.c',
+ '<(libvpx_source)/vp8/common/entropymv.h',
+ '<(libvpx_source)/vp8/common/extend.c',
+ '<(libvpx_source)/vp8/common/extend.h',
+ '<(libvpx_source)/vp8/common/filter.c',
+ '<(libvpx_source)/vp8/common/filter.h',
+ '<(libvpx_source)/vp8/common/findnearmv.c',
+ '<(libvpx_source)/vp8/common/findnearmv.h',
+ '<(libvpx_source)/vp8/common/generic/systemdependent.c',
+ '<(libvpx_source)/vp8/common/header.h',
+ '<(libvpx_source)/vp8/common/idct_blk.c',
+ '<(libvpx_source)/vp8/common/idctllm.c',
+ '<(libvpx_source)/vp8/common/invtrans.h',
+ '<(libvpx_source)/vp8/common/loopfilter.h',
+ '<(libvpx_source)/vp8/common/loopfilter_filters.c',
+ '<(libvpx_source)/vp8/common/mbpitch.c',
+ '<(libvpx_source)/vp8/common/mfqe.c',
+ '<(libvpx_source)/vp8/common/modecont.c',
+ '<(libvpx_source)/vp8/common/modecont.h',
+ '<(libvpx_source)/vp8/common/mv.h',
+ '<(libvpx_source)/vp8/common/onyx.h',
+ '<(libvpx_source)/vp8/common/onyxc_int.h',
+ '<(libvpx_source)/vp8/common/onyxd.h',
+ '<(libvpx_source)/vp8/common/postproc.c',
+ '<(libvpx_source)/vp8/common/postproc.h',
+ '<(libvpx_source)/vp8/common/ppflags.h',
+ '<(libvpx_source)/vp8/common/quant_common.c',
+ '<(libvpx_source)/vp8/common/quant_common.h',
+ '<(libvpx_source)/vp8/common/reconinter.c',
+ '<(libvpx_source)/vp8/common/reconinter.h',
+ '<(libvpx_source)/vp8/common/reconintra.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.h',
+ '<(libvpx_source)/vp8/common/rtcd.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.h',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.c',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.h',
+ '<(libvpx_source)/vp8/common/systemdependent.h',
+ '<(libvpx_source)/vp8/common/threading.h',
+ '<(libvpx_source)/vp8/common/treecoder.c',
+ '<(libvpx_source)/vp8/common/treecoder.h',
+ '<(libvpx_source)/vp8/common/vp8_entropymodedata.h',
+ '<(libvpx_source)/vp8/common/vp8_loopfilter.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.h',
+ '<(libvpx_source)/vp8/decoder/decodeframe.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.h',
+ '<(libvpx_source)/vp8/decoder/decoderthreading.h',
+ '<(libvpx_source)/vp8/decoder/detokenize.c',
+ '<(libvpx_source)/vp8/decoder/detokenize.h',
+ '<(libvpx_source)/vp8/decoder/onyxd_if.c',
+ '<(libvpx_source)/vp8/decoder/onyxd_int.h',
+ '<(libvpx_source)/vp8/decoder/threading.c',
+ '<(libvpx_source)/vp8/decoder/treereader.h',
+ '<(libvpx_source)/vp8/encoder/bitstream.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.h',
+ '<(libvpx_source)/vp8/encoder/block.h',
+ '<(libvpx_source)/vp8/encoder/boolhuff.c',
+ '<(libvpx_source)/vp8/encoder/boolhuff.h',
+ '<(libvpx_source)/vp8/encoder/dct.c',
+ '<(libvpx_source)/vp8/encoder/dct_value_cost.h',
+ '<(libvpx_source)/vp8/encoder/dct_value_tokens.h',
+ '<(libvpx_source)/vp8/encoder/defaultcoefcounts.h',
+ '<(libvpx_source)/vp8/encoder/denoising.c',
+ '<(libvpx_source)/vp8/encoder/denoising.h',
+ '<(libvpx_source)/vp8/encoder/encodeframe.c',
+ '<(libvpx_source)/vp8/encoder/encodeframe.h',
+ '<(libvpx_source)/vp8/encoder/encodeintra.c',
+ '<(libvpx_source)/vp8/encoder/encodeintra.h',
+ '<(libvpx_source)/vp8/encoder/encodemb.c',
+ '<(libvpx_source)/vp8/encoder/encodemb.h',
+ '<(libvpx_source)/vp8/encoder/encodemv.c',
+ '<(libvpx_source)/vp8/encoder/encodemv.h',
+ '<(libvpx_source)/vp8/encoder/ethreading.c',
+ '<(libvpx_source)/vp8/encoder/firstpass.h',
+ '<(libvpx_source)/vp8/encoder/lookahead.c',
+ '<(libvpx_source)/vp8/encoder/lookahead.h',
+ '<(libvpx_source)/vp8/encoder/mcomp.c',
+ '<(libvpx_source)/vp8/encoder/mcomp.h',
+ '<(libvpx_source)/vp8/encoder/modecosts.c',
+ '<(libvpx_source)/vp8/encoder/modecosts.h',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.c',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.h',
+ '<(libvpx_source)/vp8/encoder/onyx_if.c',
+ '<(libvpx_source)/vp8/encoder/onyx_int.h',
+ '<(libvpx_source)/vp8/encoder/pickinter.c',
+ '<(libvpx_source)/vp8/encoder/pickinter.h',
+ '<(libvpx_source)/vp8/encoder/picklpf.c',
+ '<(libvpx_source)/vp8/encoder/quantize.h',
+ '<(libvpx_source)/vp8/encoder/ratectrl.c',
+ '<(libvpx_source)/vp8/encoder/ratectrl.h',
+ '<(libvpx_source)/vp8/encoder/rdopt.c',
+ '<(libvpx_source)/vp8/encoder/rdopt.h',
+ '<(libvpx_source)/vp8/encoder/segmentation.c',
+ '<(libvpx_source)/vp8/encoder/segmentation.h',
+ '<(libvpx_source)/vp8/encoder/tokenize.c',
+ '<(libvpx_source)/vp8/encoder/tokenize.h',
+ '<(libvpx_source)/vp8/encoder/treewriter.c',
+ '<(libvpx_source)/vp8/encoder/treewriter.h',
+ '<(libvpx_source)/vp8/encoder/vp8_quantize.c',
+ '<(libvpx_source)/vp8/vp8_cx_iface.c',
+ '<(libvpx_source)/vp8/vp8_dx_iface.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.h',
+ '<(libvpx_source)/vp9/common/vp9_blockd.c',
+ '<(libvpx_source)/vp9/common/vp9_blockd.h',
+ '<(libvpx_source)/vp9/common/vp9_common.h',
+ '<(libvpx_source)/vp9/common/vp9_common_data.c',
+ '<(libvpx_source)/vp9/common/vp9_common_data.h',
+ '<(libvpx_source)/vp9/common/vp9_debugmodes.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.h',
+ '<(libvpx_source)/vp9/common/vp9_enums.h',
+ '<(libvpx_source)/vp9/common/vp9_filter.c',
+ '<(libvpx_source)/vp9/common/vp9_filter.h',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.c',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.h',
+ '<(libvpx_source)/vp9/common/vp9_idct.c',
+ '<(libvpx_source)/vp9/common/vp9_idct.h',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.c',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.h',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.c',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.h',
+ '<(libvpx_source)/vp9/common/vp9_mv.h',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.c',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.h',
+ '<(libvpx_source)/vp9/common/vp9_onyxc_int.h',
+ '<(libvpx_source)/vp9/common/vp9_postproc.c',
+ '<(libvpx_source)/vp9/common/vp9_postproc.h',
+ '<(libvpx_source)/vp9/common/vp9_ppflags.h',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.c',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.h',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.c',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.h',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.c',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.h',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.c',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.h',
+ '<(libvpx_source)/vp9/common/vp9_rtcd.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.h',
+ '<(libvpx_source)/vp9/common/vp9_scan.c',
+ '<(libvpx_source)/vp9/common/vp9_scan.h',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.c',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.h',
+ '<(libvpx_source)/vp9/common/vp9_textblit.h',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.c',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.h',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.c',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.h',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.c',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.h',
+ '<(libvpx_source)/vp9/encoder/vp9_avg.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.h',
+ '<(libvpx_source)/vp9/encoder/vp9_block.h',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.c',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.h',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.c',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.h',
+ '<(libvpx_source)/vp9/encoder/vp9_dct.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.c',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.h',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.c',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.h',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.c',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.c',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.h',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.c',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.h',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.h',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.c',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.h',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.c',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.h',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.c',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.h',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.c',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.h',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.h',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.h',
+ '<(libvpx_source)/vp9/vp9_cx_iface.c',
+ '<(libvpx_source)/vp9/vp9_dx_iface.c',
+ '<(libvpx_source)/vp9/vp9_iface_common.h',
+ '<(libvpx_source)/vpx/internal/vpx_codec_internal.h',
+ '<(libvpx_source)/vpx/internal/vpx_psnr.h',
+ '<(libvpx_source)/vpx/src/vpx_codec.c',
+ '<(libvpx_source)/vpx/src/vpx_decoder.c',
+ '<(libvpx_source)/vpx/src/vpx_encoder.c',
+ '<(libvpx_source)/vpx/src/vpx_image.c',
+ '<(libvpx_source)/vpx/src/vpx_psnr.c',
+ '<(libvpx_source)/vpx/vp8.h',
+ '<(libvpx_source)/vpx/vp8cx.h',
+ '<(libvpx_source)/vpx/vp8dx.h',
+ '<(libvpx_source)/vpx/vpx_codec.h',
+ '<(libvpx_source)/vpx/vpx_decoder.h',
+ '<(libvpx_source)/vpx/vpx_encoder.h',
+ '<(libvpx_source)/vpx/vpx_frame_buffer.h',
+ '<(libvpx_source)/vpx/vpx_image.h',
+ '<(libvpx_source)/vpx/vpx_integer.h',
+ '<(libvpx_source)/vpx_dsp/bitreader.c',
+ '<(libvpx_source)/vpx_dsp/bitreader.h',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.h',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.c',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.h',
+ '<(libvpx_source)/vpx_dsp/intrapred.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.h',
+ '<(libvpx_source)/vpx_dsp/loopfilter.c',
+ '<(libvpx_source)/vpx_dsp/prob.c',
+ '<(libvpx_source)/vpx_dsp/prob.h',
+ '<(libvpx_source)/vpx_dsp/quantize.c',
+ '<(libvpx_source)/vpx_dsp/quantize.h',
+ '<(libvpx_source)/vpx_dsp/sad.c',
+ '<(libvpx_source)/vpx_dsp/subtract.c',
+ '<(libvpx_source)/vpx_dsp/txfm_common.h',
+ '<(libvpx_source)/vpx_dsp/variance.c',
+ '<(libvpx_source)/vpx_dsp/variance.h',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.c',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_common.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_rtcd.c',
+ '<(libvpx_source)/vpx_dsp/vpx_filter.h',
+ '<(libvpx_source)/vpx_mem/include/vpx_mem_intrnl.h',
+ '<(libvpx_source)/vpx_mem/vpx_mem.c',
+ '<(libvpx_source)/vpx_mem/vpx_mem.h',
+ '<(libvpx_source)/vpx_ports/bitops.h',
+ '<(libvpx_source)/vpx_ports/emmintrin_compat.h',
+ '<(libvpx_source)/vpx_ports/mem.h',
+ '<(libvpx_source)/vpx_ports/mem_ops.h',
+ '<(libvpx_source)/vpx_ports/mem_ops_aligned.h',
+ '<(libvpx_source)/vpx_ports/msvc.h',
+ '<(libvpx_source)/vpx_ports/system_state.h',
+ '<(libvpx_source)/vpx_ports/vpx_once.h',
+ '<(libvpx_source)/vpx_ports/vpx_timer.h',
+ '<(libvpx_source)/vpx_scale/generic/gen_scalers.c',
+ '<(libvpx_source)/vpx_scale/generic/vpx_scale.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12config.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12extend.c',
+ '<(libvpx_source)/vpx_scale/vpx_scale.h',
+ '<(libvpx_source)/vpx_scale/vpx_scale_rtcd.c',
+ '<(libvpx_source)/vpx_scale/yv12config.h',
+ '<(libvpx_source)/vpx_util/endian_inl.h',
+ '<(libvpx_source)/vpx_util/vpx_thread.c',
+ '<(libvpx_source)/vpx_util/vpx_thread.h',
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs_x86.gypi b/third_party/libvpx_new/libvpx_srcs_x86.gypi
new file mode 100644
index 0000000..ffd6280
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_x86.gypi
@@ -0,0 +1,388 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'sources': [
+ '<(libvpx_source)/vp8/common/alloccommon.c',
+ '<(libvpx_source)/vp8/common/alloccommon.h',
+ '<(libvpx_source)/vp8/common/blockd.c',
+ '<(libvpx_source)/vp8/common/blockd.h',
+ '<(libvpx_source)/vp8/common/coefupdateprobs.h',
+ '<(libvpx_source)/vp8/common/common.h',
+ '<(libvpx_source)/vp8/common/copy_c.c',
+ '<(libvpx_source)/vp8/common/debugmodes.c',
+ '<(libvpx_source)/vp8/common/default_coef_probs.h',
+ '<(libvpx_source)/vp8/common/dequantize.c',
+ '<(libvpx_source)/vp8/common/entropy.c',
+ '<(libvpx_source)/vp8/common/entropy.h',
+ '<(libvpx_source)/vp8/common/entropymode.c',
+ '<(libvpx_source)/vp8/common/entropymode.h',
+ '<(libvpx_source)/vp8/common/entropymv.c',
+ '<(libvpx_source)/vp8/common/entropymv.h',
+ '<(libvpx_source)/vp8/common/extend.c',
+ '<(libvpx_source)/vp8/common/extend.h',
+ '<(libvpx_source)/vp8/common/filter.c',
+ '<(libvpx_source)/vp8/common/filter.h',
+ '<(libvpx_source)/vp8/common/findnearmv.c',
+ '<(libvpx_source)/vp8/common/findnearmv.h',
+ '<(libvpx_source)/vp8/common/generic/systemdependent.c',
+ '<(libvpx_source)/vp8/common/header.h',
+ '<(libvpx_source)/vp8/common/idct_blk.c',
+ '<(libvpx_source)/vp8/common/idctllm.c',
+ '<(libvpx_source)/vp8/common/invtrans.h',
+ '<(libvpx_source)/vp8/common/loopfilter.h',
+ '<(libvpx_source)/vp8/common/loopfilter_filters.c',
+ '<(libvpx_source)/vp8/common/mbpitch.c',
+ '<(libvpx_source)/vp8/common/mfqe.c',
+ '<(libvpx_source)/vp8/common/modecont.c',
+ '<(libvpx_source)/vp8/common/modecont.h',
+ '<(libvpx_source)/vp8/common/mv.h',
+ '<(libvpx_source)/vp8/common/onyx.h',
+ '<(libvpx_source)/vp8/common/onyxc_int.h',
+ '<(libvpx_source)/vp8/common/onyxd.h',
+ '<(libvpx_source)/vp8/common/postproc.c',
+ '<(libvpx_source)/vp8/common/postproc.h',
+ '<(libvpx_source)/vp8/common/ppflags.h',
+ '<(libvpx_source)/vp8/common/quant_common.c',
+ '<(libvpx_source)/vp8/common/quant_common.h',
+ '<(libvpx_source)/vp8/common/reconinter.c',
+ '<(libvpx_source)/vp8/common/reconinter.h',
+ '<(libvpx_source)/vp8/common/reconintra.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.h',
+ '<(libvpx_source)/vp8/common/rtcd.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.h',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.c',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.h',
+ '<(libvpx_source)/vp8/common/systemdependent.h',
+ '<(libvpx_source)/vp8/common/threading.h',
+ '<(libvpx_source)/vp8/common/treecoder.c',
+ '<(libvpx_source)/vp8/common/treecoder.h',
+ '<(libvpx_source)/vp8/common/vp8_entropymodedata.h',
+ '<(libvpx_source)/vp8/common/vp8_loopfilter.c',
+ '<(libvpx_source)/vp8/common/x86/copy_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/copy_sse3.asm',
+ '<(libvpx_source)/vp8/common/x86/dequantize_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/filter_x86.c',
+ '<(libvpx_source)/vp8/common/x86/filter_x86.h',
+ '<(libvpx_source)/vp8/common/x86/idctllm_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/idctllm_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/iwalsh_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/iwalsh_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/loopfilter_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/loopfilter_x86.c',
+ '<(libvpx_source)/vp8/common/x86/mfqe_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/postproc_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/postproc_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/recon_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/recon_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/subpixel_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/subpixel_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/subpixel_ssse3.asm',
+ '<(libvpx_source)/vp8/common/x86/vp8_asm_stubs.c',
+ '<(libvpx_source)/vp8/common/x86/vp8_loopfilter_mmx.asm',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.h',
+ '<(libvpx_source)/vp8/decoder/decodeframe.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.h',
+ '<(libvpx_source)/vp8/decoder/decoderthreading.h',
+ '<(libvpx_source)/vp8/decoder/detokenize.c',
+ '<(libvpx_source)/vp8/decoder/detokenize.h',
+ '<(libvpx_source)/vp8/decoder/onyxd_if.c',
+ '<(libvpx_source)/vp8/decoder/onyxd_int.h',
+ '<(libvpx_source)/vp8/decoder/threading.c',
+ '<(libvpx_source)/vp8/decoder/treereader.h',
+ '<(libvpx_source)/vp8/encoder/bitstream.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.h',
+ '<(libvpx_source)/vp8/encoder/block.h',
+ '<(libvpx_source)/vp8/encoder/boolhuff.c',
+ '<(libvpx_source)/vp8/encoder/boolhuff.h',
+ '<(libvpx_source)/vp8/encoder/dct.c',
+ '<(libvpx_source)/vp8/encoder/dct_value_cost.h',
+ '<(libvpx_source)/vp8/encoder/dct_value_tokens.h',
+ '<(libvpx_source)/vp8/encoder/defaultcoefcounts.h',
+ '<(libvpx_source)/vp8/encoder/denoising.c',
+ '<(libvpx_source)/vp8/encoder/denoising.h',
+ '<(libvpx_source)/vp8/encoder/encodeframe.c',
+ '<(libvpx_source)/vp8/encoder/encodeframe.h',
+ '<(libvpx_source)/vp8/encoder/encodeintra.c',
+ '<(libvpx_source)/vp8/encoder/encodeintra.h',
+ '<(libvpx_source)/vp8/encoder/encodemb.c',
+ '<(libvpx_source)/vp8/encoder/encodemb.h',
+ '<(libvpx_source)/vp8/encoder/encodemv.c',
+ '<(libvpx_source)/vp8/encoder/encodemv.h',
+ '<(libvpx_source)/vp8/encoder/ethreading.c',
+ '<(libvpx_source)/vp8/encoder/firstpass.h',
+ '<(libvpx_source)/vp8/encoder/lookahead.c',
+ '<(libvpx_source)/vp8/encoder/lookahead.h',
+ '<(libvpx_source)/vp8/encoder/mcomp.c',
+ '<(libvpx_source)/vp8/encoder/mcomp.h',
+ '<(libvpx_source)/vp8/encoder/modecosts.c',
+ '<(libvpx_source)/vp8/encoder/modecosts.h',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.c',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.h',
+ '<(libvpx_source)/vp8/encoder/onyx_if.c',
+ '<(libvpx_source)/vp8/encoder/onyx_int.h',
+ '<(libvpx_source)/vp8/encoder/pickinter.c',
+ '<(libvpx_source)/vp8/encoder/pickinter.h',
+ '<(libvpx_source)/vp8/encoder/picklpf.c',
+ '<(libvpx_source)/vp8/encoder/quantize.h',
+ '<(libvpx_source)/vp8/encoder/ratectrl.c',
+ '<(libvpx_source)/vp8/encoder/ratectrl.h',
+ '<(libvpx_source)/vp8/encoder/rdopt.c',
+ '<(libvpx_source)/vp8/encoder/rdopt.h',
+ '<(libvpx_source)/vp8/encoder/segmentation.c',
+ '<(libvpx_source)/vp8/encoder/segmentation.h',
+ '<(libvpx_source)/vp8/encoder/tokenize.c',
+ '<(libvpx_source)/vp8/encoder/tokenize.h',
+ '<(libvpx_source)/vp8/encoder/treewriter.c',
+ '<(libvpx_source)/vp8/encoder/treewriter.h',
+ '<(libvpx_source)/vp8/encoder/vp8_quantize.c',
+ '<(libvpx_source)/vp8/encoder/x86/dct_mmx.asm',
+ '<(libvpx_source)/vp8/encoder/x86/dct_sse2.asm',
+ '<(libvpx_source)/vp8/encoder/x86/encodeopt.asm',
+ '<(libvpx_source)/vp8/encoder/x86/fwalsh_sse2.asm',
+ '<(libvpx_source)/vp8/encoder/x86/quantize_mmx.asm',
+ '<(libvpx_source)/vp8/vp8_cx_iface.c',
+ '<(libvpx_source)/vp8/vp8_dx_iface.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.h',
+ '<(libvpx_source)/vp9/common/vp9_blockd.c',
+ '<(libvpx_source)/vp9/common/vp9_blockd.h',
+ '<(libvpx_source)/vp9/common/vp9_common.h',
+ '<(libvpx_source)/vp9/common/vp9_common_data.c',
+ '<(libvpx_source)/vp9/common/vp9_common_data.h',
+ '<(libvpx_source)/vp9/common/vp9_debugmodes.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.h',
+ '<(libvpx_source)/vp9/common/vp9_enums.h',
+ '<(libvpx_source)/vp9/common/vp9_filter.c',
+ '<(libvpx_source)/vp9/common/vp9_filter.h',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.c',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.h',
+ '<(libvpx_source)/vp9/common/vp9_idct.c',
+ '<(libvpx_source)/vp9/common/vp9_idct.h',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.c',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.h',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.c',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.h',
+ '<(libvpx_source)/vp9/common/vp9_mv.h',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.c',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.h',
+ '<(libvpx_source)/vp9/common/vp9_onyxc_int.h',
+ '<(libvpx_source)/vp9/common/vp9_postproc.c',
+ '<(libvpx_source)/vp9/common/vp9_postproc.h',
+ '<(libvpx_source)/vp9/common/vp9_ppflags.h',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.c',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.h',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.c',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.h',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.c',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.h',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.c',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.h',
+ '<(libvpx_source)/vp9/common/vp9_rtcd.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.h',
+ '<(libvpx_source)/vp9/common/vp9_scan.c',
+ '<(libvpx_source)/vp9/common/vp9_scan.h',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.c',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.h',
+ '<(libvpx_source)/vp9/common/vp9_textblit.h',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.c',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.h',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.c',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.h',
+ '<(libvpx_source)/vp9/common/x86/vp9_mfqe_sse2.asm',
+ '<(libvpx_source)/vp9/common/x86/vp9_postproc_sse2.asm',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.h',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.c',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.h',
+ '<(libvpx_source)/vp9/encoder/vp9_avg.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.h',
+ '<(libvpx_source)/vp9/encoder/vp9_block.h',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.c',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.h',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.c',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.h',
+ '<(libvpx_source)/vp9/encoder/vp9_dct.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.c',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.h',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.c',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.h',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.c',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.c',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.h',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.c',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.h',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.h',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.c',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.h',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.c',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.h',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.c',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.h',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.c',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.h',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.h',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.h',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_dct_mmx.asm',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_error_sse2.asm',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_temporal_filter_apply_sse2.asm',
+ '<(libvpx_source)/vp9/vp9_cx_iface.c',
+ '<(libvpx_source)/vp9/vp9_dx_iface.c',
+ '<(libvpx_source)/vp9/vp9_iface_common.h',
+ '<(libvpx_source)/vpx/internal/vpx_codec_internal.h',
+ '<(libvpx_source)/vpx/internal/vpx_psnr.h',
+ '<(libvpx_source)/vpx/src/vpx_codec.c',
+ '<(libvpx_source)/vpx/src/vpx_decoder.c',
+ '<(libvpx_source)/vpx/src/vpx_encoder.c',
+ '<(libvpx_source)/vpx/src/vpx_image.c',
+ '<(libvpx_source)/vpx/src/vpx_psnr.c',
+ '<(libvpx_source)/vpx/vp8.h',
+ '<(libvpx_source)/vpx/vp8cx.h',
+ '<(libvpx_source)/vpx/vp8dx.h',
+ '<(libvpx_source)/vpx/vpx_codec.h',
+ '<(libvpx_source)/vpx/vpx_decoder.h',
+ '<(libvpx_source)/vpx/vpx_encoder.h',
+ '<(libvpx_source)/vpx/vpx_frame_buffer.h',
+ '<(libvpx_source)/vpx/vpx_image.h',
+ '<(libvpx_source)/vpx/vpx_integer.h',
+ '<(libvpx_source)/vpx_dsp/bitreader.c',
+ '<(libvpx_source)/vpx_dsp/bitreader.h',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.h',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.c',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.h',
+ '<(libvpx_source)/vpx_dsp/intrapred.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.h',
+ '<(libvpx_source)/vpx_dsp/loopfilter.c',
+ '<(libvpx_source)/vpx_dsp/prob.c',
+ '<(libvpx_source)/vpx_dsp/prob.h',
+ '<(libvpx_source)/vpx_dsp/quantize.c',
+ '<(libvpx_source)/vpx_dsp/quantize.h',
+ '<(libvpx_source)/vpx_dsp/sad.c',
+ '<(libvpx_source)/vpx_dsp/subtract.c',
+ '<(libvpx_source)/vpx_dsp/txfm_common.h',
+ '<(libvpx_source)/vpx_dsp/variance.c',
+ '<(libvpx_source)/vpx_dsp/variance.h',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.c',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_common.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_rtcd.c',
+ '<(libvpx_source)/vpx_dsp/vpx_filter.h',
+ '<(libvpx_source)/vpx_dsp/x86/convolve.h',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_dct32x32_impl_avx2.h',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_dct32x32_impl_sse2.h',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_txfm_impl_sse2.h',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_txfm_sse2.h',
+ '<(libvpx_source)/vpx_dsp/x86/halfpix_variance_impl_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/intrapred_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/intrapred_ssse3.asm',
+ '<(libvpx_source)/vpx_dsp/x86/inv_txfm_sse2.h',
+ '<(libvpx_source)/vpx_dsp/x86/inv_wht_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/loopfilter_mmx.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad4d_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad_mmx.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad_sse3.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad_sse4.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad_ssse3.asm',
+ '<(libvpx_source)/vpx_dsp/x86/subpel_variance_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/subtract_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/txfm_common_sse2.h',
+ '<(libvpx_source)/vpx_dsp/x86/variance_impl_mmx.asm',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_asm_stubs.c',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_convolve_copy_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_8t_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_8t_ssse3.asm',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_bilinear_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_bilinear_ssse3.asm',
+ '<(libvpx_source)/vpx_mem/include/vpx_mem_intrnl.h',
+ '<(libvpx_source)/vpx_mem/vpx_mem.c',
+ '<(libvpx_source)/vpx_mem/vpx_mem.h',
+ '<(libvpx_source)/vpx_ports/bitops.h',
+ '<(libvpx_source)/vpx_ports/emmintrin_compat.h',
+ '<(libvpx_source)/vpx_ports/emms.asm',
+ '<(libvpx_source)/vpx_ports/mem.h',
+ '<(libvpx_source)/vpx_ports/mem_ops.h',
+ '<(libvpx_source)/vpx_ports/mem_ops_aligned.h',
+ '<(libvpx_source)/vpx_ports/msvc.h',
+ '<(libvpx_source)/vpx_ports/system_state.h',
+ '<(libvpx_source)/vpx_ports/vpx_once.h',
+ '<(libvpx_source)/vpx_ports/vpx_timer.h',
+ '<(libvpx_source)/vpx_ports/x86.h',
+ '<(libvpx_source)/vpx_ports/x86_abi_support.asm',
+ '<(libvpx_source)/vpx_scale/generic/gen_scalers.c',
+ '<(libvpx_source)/vpx_scale/generic/vpx_scale.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12config.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12extend.c',
+ '<(libvpx_source)/vpx_scale/vpx_scale.h',
+ '<(libvpx_source)/vpx_scale/vpx_scale_rtcd.c',
+ '<(libvpx_source)/vpx_scale/yv12config.h',
+ '<(libvpx_source)/vpx_util/endian_inl.h',
+ '<(libvpx_source)/vpx_util/vpx_thread.c',
+ '<(libvpx_source)/vpx_util/vpx_thread.h',
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs_x86_64.gypi b/third_party/libvpx_new/libvpx_srcs_x86_64.gypi
new file mode 100644
index 0000000..18b5a02
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_x86_64.gypi
@@ -0,0 +1,395 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'sources': [
+ '<(libvpx_source)/vp8/common/alloccommon.c',
+ '<(libvpx_source)/vp8/common/alloccommon.h',
+ '<(libvpx_source)/vp8/common/blockd.c',
+ '<(libvpx_source)/vp8/common/blockd.h',
+ '<(libvpx_source)/vp8/common/coefupdateprobs.h',
+ '<(libvpx_source)/vp8/common/common.h',
+ '<(libvpx_source)/vp8/common/copy_c.c',
+ '<(libvpx_source)/vp8/common/debugmodes.c',
+ '<(libvpx_source)/vp8/common/default_coef_probs.h',
+ '<(libvpx_source)/vp8/common/dequantize.c',
+ '<(libvpx_source)/vp8/common/entropy.c',
+ '<(libvpx_source)/vp8/common/entropy.h',
+ '<(libvpx_source)/vp8/common/entropymode.c',
+ '<(libvpx_source)/vp8/common/entropymode.h',
+ '<(libvpx_source)/vp8/common/entropymv.c',
+ '<(libvpx_source)/vp8/common/entropymv.h',
+ '<(libvpx_source)/vp8/common/extend.c',
+ '<(libvpx_source)/vp8/common/extend.h',
+ '<(libvpx_source)/vp8/common/filter.c',
+ '<(libvpx_source)/vp8/common/filter.h',
+ '<(libvpx_source)/vp8/common/findnearmv.c',
+ '<(libvpx_source)/vp8/common/findnearmv.h',
+ '<(libvpx_source)/vp8/common/generic/systemdependent.c',
+ '<(libvpx_source)/vp8/common/header.h',
+ '<(libvpx_source)/vp8/common/idct_blk.c',
+ '<(libvpx_source)/vp8/common/idctllm.c',
+ '<(libvpx_source)/vp8/common/invtrans.h',
+ '<(libvpx_source)/vp8/common/loopfilter.h',
+ '<(libvpx_source)/vp8/common/loopfilter_filters.c',
+ '<(libvpx_source)/vp8/common/mbpitch.c',
+ '<(libvpx_source)/vp8/common/mfqe.c',
+ '<(libvpx_source)/vp8/common/modecont.c',
+ '<(libvpx_source)/vp8/common/modecont.h',
+ '<(libvpx_source)/vp8/common/mv.h',
+ '<(libvpx_source)/vp8/common/onyx.h',
+ '<(libvpx_source)/vp8/common/onyxc_int.h',
+ '<(libvpx_source)/vp8/common/onyxd.h',
+ '<(libvpx_source)/vp8/common/postproc.c',
+ '<(libvpx_source)/vp8/common/postproc.h',
+ '<(libvpx_source)/vp8/common/ppflags.h',
+ '<(libvpx_source)/vp8/common/quant_common.c',
+ '<(libvpx_source)/vp8/common/quant_common.h',
+ '<(libvpx_source)/vp8/common/reconinter.c',
+ '<(libvpx_source)/vp8/common/reconinter.h',
+ '<(libvpx_source)/vp8/common/reconintra.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.c',
+ '<(libvpx_source)/vp8/common/reconintra4x4.h',
+ '<(libvpx_source)/vp8/common/rtcd.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.c',
+ '<(libvpx_source)/vp8/common/setupintrarecon.h',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.c',
+ '<(libvpx_source)/vp8/common/swapyv12buffer.h',
+ '<(libvpx_source)/vp8/common/systemdependent.h',
+ '<(libvpx_source)/vp8/common/threading.h',
+ '<(libvpx_source)/vp8/common/treecoder.c',
+ '<(libvpx_source)/vp8/common/treecoder.h',
+ '<(libvpx_source)/vp8/common/vp8_entropymodedata.h',
+ '<(libvpx_source)/vp8/common/vp8_loopfilter.c',
+ '<(libvpx_source)/vp8/common/x86/copy_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/copy_sse3.asm',
+ '<(libvpx_source)/vp8/common/x86/dequantize_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/filter_x86.c',
+ '<(libvpx_source)/vp8/common/x86/filter_x86.h',
+ '<(libvpx_source)/vp8/common/x86/idctllm_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/idctllm_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/iwalsh_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/iwalsh_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/loopfilter_block_sse2_x86_64.asm',
+ '<(libvpx_source)/vp8/common/x86/loopfilter_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/loopfilter_x86.c',
+ '<(libvpx_source)/vp8/common/x86/mfqe_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/postproc_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/postproc_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/recon_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/recon_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/subpixel_mmx.asm',
+ '<(libvpx_source)/vp8/common/x86/subpixel_sse2.asm',
+ '<(libvpx_source)/vp8/common/x86/subpixel_ssse3.asm',
+ '<(libvpx_source)/vp8/common/x86/vp8_asm_stubs.c',
+ '<(libvpx_source)/vp8/common/x86/vp8_loopfilter_mmx.asm',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.c',
+ '<(libvpx_source)/vp8/decoder/dboolhuff.h',
+ '<(libvpx_source)/vp8/decoder/decodeframe.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.c',
+ '<(libvpx_source)/vp8/decoder/decodemv.h',
+ '<(libvpx_source)/vp8/decoder/decoderthreading.h',
+ '<(libvpx_source)/vp8/decoder/detokenize.c',
+ '<(libvpx_source)/vp8/decoder/detokenize.h',
+ '<(libvpx_source)/vp8/decoder/onyxd_if.c',
+ '<(libvpx_source)/vp8/decoder/onyxd_int.h',
+ '<(libvpx_source)/vp8/decoder/threading.c',
+ '<(libvpx_source)/vp8/decoder/treereader.h',
+ '<(libvpx_source)/vp8/encoder/bitstream.c',
+ '<(libvpx_source)/vp8/encoder/bitstream.h',
+ '<(libvpx_source)/vp8/encoder/block.h',
+ '<(libvpx_source)/vp8/encoder/boolhuff.c',
+ '<(libvpx_source)/vp8/encoder/boolhuff.h',
+ '<(libvpx_source)/vp8/encoder/dct.c',
+ '<(libvpx_source)/vp8/encoder/dct_value_cost.h',
+ '<(libvpx_source)/vp8/encoder/dct_value_tokens.h',
+ '<(libvpx_source)/vp8/encoder/defaultcoefcounts.h',
+ '<(libvpx_source)/vp8/encoder/denoising.c',
+ '<(libvpx_source)/vp8/encoder/denoising.h',
+ '<(libvpx_source)/vp8/encoder/encodeframe.c',
+ '<(libvpx_source)/vp8/encoder/encodeframe.h',
+ '<(libvpx_source)/vp8/encoder/encodeintra.c',
+ '<(libvpx_source)/vp8/encoder/encodeintra.h',
+ '<(libvpx_source)/vp8/encoder/encodemb.c',
+ '<(libvpx_source)/vp8/encoder/encodemb.h',
+ '<(libvpx_source)/vp8/encoder/encodemv.c',
+ '<(libvpx_source)/vp8/encoder/encodemv.h',
+ '<(libvpx_source)/vp8/encoder/ethreading.c',
+ '<(libvpx_source)/vp8/encoder/firstpass.h',
+ '<(libvpx_source)/vp8/encoder/lookahead.c',
+ '<(libvpx_source)/vp8/encoder/lookahead.h',
+ '<(libvpx_source)/vp8/encoder/mcomp.c',
+ '<(libvpx_source)/vp8/encoder/mcomp.h',
+ '<(libvpx_source)/vp8/encoder/modecosts.c',
+ '<(libvpx_source)/vp8/encoder/modecosts.h',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.c',
+ '<(libvpx_source)/vp8/encoder/mr_dissim.h',
+ '<(libvpx_source)/vp8/encoder/onyx_if.c',
+ '<(libvpx_source)/vp8/encoder/onyx_int.h',
+ '<(libvpx_source)/vp8/encoder/pickinter.c',
+ '<(libvpx_source)/vp8/encoder/pickinter.h',
+ '<(libvpx_source)/vp8/encoder/picklpf.c',
+ '<(libvpx_source)/vp8/encoder/quantize.h',
+ '<(libvpx_source)/vp8/encoder/ratectrl.c',
+ '<(libvpx_source)/vp8/encoder/ratectrl.h',
+ '<(libvpx_source)/vp8/encoder/rdopt.c',
+ '<(libvpx_source)/vp8/encoder/rdopt.h',
+ '<(libvpx_source)/vp8/encoder/segmentation.c',
+ '<(libvpx_source)/vp8/encoder/segmentation.h',
+ '<(libvpx_source)/vp8/encoder/tokenize.c',
+ '<(libvpx_source)/vp8/encoder/tokenize.h',
+ '<(libvpx_source)/vp8/encoder/treewriter.c',
+ '<(libvpx_source)/vp8/encoder/treewriter.h',
+ '<(libvpx_source)/vp8/encoder/vp8_quantize.c',
+ '<(libvpx_source)/vp8/encoder/x86/dct_mmx.asm',
+ '<(libvpx_source)/vp8/encoder/x86/dct_sse2.asm',
+ '<(libvpx_source)/vp8/encoder/x86/encodeopt.asm',
+ '<(libvpx_source)/vp8/encoder/x86/fwalsh_sse2.asm',
+ '<(libvpx_source)/vp8/encoder/x86/quantize_mmx.asm',
+ '<(libvpx_source)/vp8/vp8_cx_iface.c',
+ '<(libvpx_source)/vp8/vp8_dx_iface.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.c',
+ '<(libvpx_source)/vp9/common/vp9_alloccommon.h',
+ '<(libvpx_source)/vp9/common/vp9_blockd.c',
+ '<(libvpx_source)/vp9/common/vp9_blockd.h',
+ '<(libvpx_source)/vp9/common/vp9_common.h',
+ '<(libvpx_source)/vp9/common/vp9_common_data.c',
+ '<(libvpx_source)/vp9/common/vp9_common_data.h',
+ '<(libvpx_source)/vp9/common/vp9_debugmodes.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.c',
+ '<(libvpx_source)/vp9/common/vp9_entropy.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymode.h',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.c',
+ '<(libvpx_source)/vp9/common/vp9_entropymv.h',
+ '<(libvpx_source)/vp9/common/vp9_enums.h',
+ '<(libvpx_source)/vp9/common/vp9_filter.c',
+ '<(libvpx_source)/vp9/common/vp9_filter.h',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.c',
+ '<(libvpx_source)/vp9/common/vp9_frame_buffers.h',
+ '<(libvpx_source)/vp9/common/vp9_idct.c',
+ '<(libvpx_source)/vp9/common/vp9_idct.h',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.c',
+ '<(libvpx_source)/vp9/common/vp9_loopfilter.h',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.c',
+ '<(libvpx_source)/vp9/common/vp9_mfqe.h',
+ '<(libvpx_source)/vp9/common/vp9_mv.h',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.c',
+ '<(libvpx_source)/vp9/common/vp9_mvref_common.h',
+ '<(libvpx_source)/vp9/common/vp9_onyxc_int.h',
+ '<(libvpx_source)/vp9/common/vp9_postproc.c',
+ '<(libvpx_source)/vp9/common/vp9_postproc.h',
+ '<(libvpx_source)/vp9/common/vp9_ppflags.h',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.c',
+ '<(libvpx_source)/vp9/common/vp9_pred_common.h',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.c',
+ '<(libvpx_source)/vp9/common/vp9_quant_common.h',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.c',
+ '<(libvpx_source)/vp9/common/vp9_reconinter.h',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.c',
+ '<(libvpx_source)/vp9/common/vp9_reconintra.h',
+ '<(libvpx_source)/vp9/common/vp9_rtcd.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.c',
+ '<(libvpx_source)/vp9/common/vp9_scale.h',
+ '<(libvpx_source)/vp9/common/vp9_scan.c',
+ '<(libvpx_source)/vp9/common/vp9_scan.h',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.c',
+ '<(libvpx_source)/vp9/common/vp9_seg_common.h',
+ '<(libvpx_source)/vp9/common/vp9_textblit.h',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.c',
+ '<(libvpx_source)/vp9/common/vp9_thread_common.h',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.c',
+ '<(libvpx_source)/vp9/common/vp9_tile_common.h',
+ '<(libvpx_source)/vp9/common/x86/vp9_mfqe_sse2.asm',
+ '<(libvpx_source)/vp9/common/x86/vp9_postproc_sse2.asm',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodeframe.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decodemv.h',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.c',
+ '<(libvpx_source)/vp9/decoder/vp9_decoder.h',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.c',
+ '<(libvpx_source)/vp9/decoder/vp9_detokenize.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dsubexp.h',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.c',
+ '<(libvpx_source)/vp9/decoder/vp9_dthread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_complexity.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_cyclicrefresh.h',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.c',
+ '<(libvpx_source)/vp9/encoder/vp9_aq_variance.h',
+ '<(libvpx_source)/vp9/encoder/vp9_avg.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.c',
+ '<(libvpx_source)/vp9/encoder/vp9_bitstream.h',
+ '<(libvpx_source)/vp9/encoder/vp9_block.h',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.c',
+ '<(libvpx_source)/vp9/encoder/vp9_context_tree.h',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.c',
+ '<(libvpx_source)/vp9/encoder/vp9_cost.h',
+ '<(libvpx_source)/vp9/encoder/vp9_dct.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.c',
+ '<(libvpx_source)/vp9/encoder/vp9_denoiser.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodeframe.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemb.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encodemv.h',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.c',
+ '<(libvpx_source)/vp9/encoder/vp9_encoder.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ethread.h',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.c',
+ '<(libvpx_source)/vp9/encoder/vp9_extend.h',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.c',
+ '<(libvpx_source)/vp9/encoder/vp9_firstpass.h',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.c',
+ '<(libvpx_source)/vp9/encoder/vp9_lookahead.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mbgraph.h',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_mcomp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.c',
+ '<(libvpx_source)/vp9/encoder/vp9_picklpf.h',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.c',
+ '<(libvpx_source)/vp9/encoder/vp9_pickmode.h',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_quantize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.c',
+ '<(libvpx_source)/vp9/encoder/vp9_ratectrl.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rd.h',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.c',
+ '<(libvpx_source)/vp9/encoder/vp9_rdopt.h',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_resize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.c',
+ '<(libvpx_source)/vp9/encoder/vp9_segmentation.h',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.c',
+ '<(libvpx_source)/vp9/encoder/vp9_skin_detection.h',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.c',
+ '<(libvpx_source)/vp9/encoder/vp9_speed_features.h',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.c',
+ '<(libvpx_source)/vp9/encoder/vp9_subexp.h',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.c',
+ '<(libvpx_source)/vp9/encoder/vp9_svc_layercontext.h',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_temporal_filter.h',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.c',
+ '<(libvpx_source)/vp9/encoder/vp9_tokenize.h',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.c',
+ '<(libvpx_source)/vp9/encoder/vp9_treewriter.h',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_dct_mmx.asm',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_dct_ssse3_x86_64.asm',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_error_sse2.asm',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_quantize_ssse3_x86_64.asm',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_temporal_filter_apply_sse2.asm',
+ '<(libvpx_source)/vp9/vp9_cx_iface.c',
+ '<(libvpx_source)/vp9/vp9_dx_iface.c',
+ '<(libvpx_source)/vp9/vp9_iface_common.h',
+ '<(libvpx_source)/vpx/internal/vpx_codec_internal.h',
+ '<(libvpx_source)/vpx/internal/vpx_psnr.h',
+ '<(libvpx_source)/vpx/src/vpx_codec.c',
+ '<(libvpx_source)/vpx/src/vpx_decoder.c',
+ '<(libvpx_source)/vpx/src/vpx_encoder.c',
+ '<(libvpx_source)/vpx/src/vpx_image.c',
+ '<(libvpx_source)/vpx/src/vpx_psnr.c',
+ '<(libvpx_source)/vpx/vp8.h',
+ '<(libvpx_source)/vpx/vp8cx.h',
+ '<(libvpx_source)/vpx/vp8dx.h',
+ '<(libvpx_source)/vpx/vpx_codec.h',
+ '<(libvpx_source)/vpx/vpx_decoder.h',
+ '<(libvpx_source)/vpx/vpx_encoder.h',
+ '<(libvpx_source)/vpx/vpx_frame_buffer.h',
+ '<(libvpx_source)/vpx/vpx_image.h',
+ '<(libvpx_source)/vpx/vpx_integer.h',
+ '<(libvpx_source)/vpx_dsp/bitreader.c',
+ '<(libvpx_source)/vpx_dsp/bitreader.h',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitreader_buffer.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter.h',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.c',
+ '<(libvpx_source)/vpx_dsp/bitwriter_buffer.h',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.c',
+ '<(libvpx_source)/vpx_dsp/fwd_txfm.h',
+ '<(libvpx_source)/vpx_dsp/intrapred.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.c',
+ '<(libvpx_source)/vpx_dsp/inv_txfm.h',
+ '<(libvpx_source)/vpx_dsp/loopfilter.c',
+ '<(libvpx_source)/vpx_dsp/prob.c',
+ '<(libvpx_source)/vpx_dsp/prob.h',
+ '<(libvpx_source)/vpx_dsp/quantize.c',
+ '<(libvpx_source)/vpx_dsp/quantize.h',
+ '<(libvpx_source)/vpx_dsp/sad.c',
+ '<(libvpx_source)/vpx_dsp/subtract.c',
+ '<(libvpx_source)/vpx_dsp/txfm_common.h',
+ '<(libvpx_source)/vpx_dsp/variance.c',
+ '<(libvpx_source)/vpx_dsp/variance.h',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.c',
+ '<(libvpx_source)/vpx_dsp/vpx_convolve.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_common.h',
+ '<(libvpx_source)/vpx_dsp/vpx_dsp_rtcd.c',
+ '<(libvpx_source)/vpx_dsp/vpx_filter.h',
+ '<(libvpx_source)/vpx_dsp/x86/convolve.h',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_dct32x32_impl_avx2.h',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_dct32x32_impl_sse2.h',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_txfm_impl_sse2.h',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_txfm_sse2.h',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_txfm_ssse3_x86_64.asm',
+ '<(libvpx_source)/vpx_dsp/x86/halfpix_variance_impl_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/intrapred_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/intrapred_ssse3.asm',
+ '<(libvpx_source)/vpx_dsp/x86/inv_txfm_sse2.h',
+ '<(libvpx_source)/vpx_dsp/x86/inv_txfm_ssse3_x86_64.asm',
+ '<(libvpx_source)/vpx_dsp/x86/inv_wht_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/loopfilter_mmx.asm',
+ '<(libvpx_source)/vpx_dsp/x86/quantize_ssse3_x86_64.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad4d_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad_mmx.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad_sse3.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad_sse4.asm',
+ '<(libvpx_source)/vpx_dsp/x86/sad_ssse3.asm',
+ '<(libvpx_source)/vpx_dsp/x86/ssim_opt_x86_64.asm',
+ '<(libvpx_source)/vpx_dsp/x86/subpel_variance_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/subtract_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/txfm_common_sse2.h',
+ '<(libvpx_source)/vpx_dsp/x86/variance_impl_mmx.asm',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_asm_stubs.c',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_convolve_copy_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_8t_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_8t_ssse3.asm',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_bilinear_sse2.asm',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_bilinear_ssse3.asm',
+ '<(libvpx_source)/vpx_mem/include/vpx_mem_intrnl.h',
+ '<(libvpx_source)/vpx_mem/vpx_mem.c',
+ '<(libvpx_source)/vpx_mem/vpx_mem.h',
+ '<(libvpx_source)/vpx_ports/bitops.h',
+ '<(libvpx_source)/vpx_ports/emmintrin_compat.h',
+ '<(libvpx_source)/vpx_ports/emms.asm',
+ '<(libvpx_source)/vpx_ports/mem.h',
+ '<(libvpx_source)/vpx_ports/mem_ops.h',
+ '<(libvpx_source)/vpx_ports/mem_ops_aligned.h',
+ '<(libvpx_source)/vpx_ports/msvc.h',
+ '<(libvpx_source)/vpx_ports/system_state.h',
+ '<(libvpx_source)/vpx_ports/vpx_once.h',
+ '<(libvpx_source)/vpx_ports/vpx_timer.h',
+ '<(libvpx_source)/vpx_ports/x86.h',
+ '<(libvpx_source)/vpx_ports/x86_abi_support.asm',
+ '<(libvpx_source)/vpx_scale/generic/gen_scalers.c',
+ '<(libvpx_source)/vpx_scale/generic/vpx_scale.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12config.c',
+ '<(libvpx_source)/vpx_scale/generic/yv12extend.c',
+ '<(libvpx_source)/vpx_scale/vpx_scale.h',
+ '<(libvpx_source)/vpx_scale/vpx_scale_rtcd.c',
+ '<(libvpx_source)/vpx_scale/yv12config.h',
+ '<(libvpx_source)/vpx_util/endian_inl.h',
+ '<(libvpx_source)/vpx_util/vpx_thread.c',
+ '<(libvpx_source)/vpx_util/vpx_thread.h',
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs_x86_64_intrinsics.gypi b/third_party/libvpx_new/libvpx_srcs_x86_64_intrinsics.gypi
new file mode 100644
index 0000000..95fa0e7
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_x86_64_intrinsics.gypi
@@ -0,0 +1,123 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'targets': [
+ {
+ 'target_name': 'libvpx_intrinsics_mmx',
+ 'type': 'static_library',
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '<(libvpx_source)',
+ ],
+ 'sources': [
+ '<(libvpx_source)/vp8/common/x86/idct_blk_mmx.c',
+ '<(libvpx_source)/vp8/encoder/x86/vp8_enc_stubs_mmx.c',
+ '<(libvpx_source)/vpx_dsp/x86/variance_mmx.c',
+ ],
+ 'cflags': [ '-mmmx', ],
+ 'xcode_settings': { 'OTHER_CFLAGS': [ '-mmmx' ] },
+ },
+ {
+ 'target_name': 'libvpx_intrinsics_sse2',
+ 'type': 'static_library',
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '<(libvpx_source)',
+ ],
+ 'sources': [
+ '<(libvpx_source)/vp8/common/x86/idct_blk_sse2.c',
+ '<(libvpx_source)/vp8/common/x86/recon_wrapper_sse2.c',
+ '<(libvpx_source)/vp8/encoder/x86/denoising_sse2.c',
+ '<(libvpx_source)/vp8/encoder/x86/vp8_enc_stubs_sse2.c',
+ '<(libvpx_source)/vp8/encoder/x86/vp8_quantize_sse2.c',
+ '<(libvpx_source)/vp9/common/x86/vp9_idct_intrin_sse2.c',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_avg_intrin_sse2.c',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_dct_sse2.c',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_denoiser_sse2.c',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_quantize_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_txfm_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/halfpix_variance_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/inv_txfm_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/loopfilter_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/quantize_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/variance_sse2.c',
+ ],
+ 'cflags': [ '-msse2', ],
+ 'xcode_settings': { 'OTHER_CFLAGS': [ '-msse2' ] },
+ },
+ {
+ 'target_name': 'libvpx_intrinsics_ssse3',
+ 'type': 'static_library',
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '<(libvpx_source)',
+ ],
+ 'sources': [
+ '<(libvpx_source)/vp8/encoder/x86/quantize_ssse3.c',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_dct_ssse3.c',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_8t_intrin_ssse3.c',
+ ],
+ 'cflags': [ '-mssse3', ],
+ 'xcode_settings': { 'OTHER_CFLAGS': [ '-mssse3' ] },
+ 'conditions': [
+ ['OS=="win" and clang==1', {
+ # cl.exe's /arch flag doesn't have a setting for SSSE3/4, and cl.exe
+ # doesn't need it for intrinsics. clang-cl does need it, though.
+ 'msvs_settings': {
+ 'VCCLCompilerTool': { 'AdditionalOptions': [ '-mssse3' ] },
+ },
+ }],
+ ],
+ },
+ {
+ 'target_name': 'libvpx_intrinsics_sse4_1',
+ 'type': 'static_library',
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '<(libvpx_source)',
+ ],
+ 'sources': [
+ '<(libvpx_source)/vp8/encoder/x86/quantize_sse4.c',
+ ],
+ 'cflags': [ '-msse4.1', ],
+ 'xcode_settings': { 'OTHER_CFLAGS': [ '-msse4.1' ] },
+ 'conditions': [
+ ['OS=="win" and clang==1', {
+ # cl.exe's /arch flag doesn't have a setting for SSSE3/4, and cl.exe
+ # doesn't need it for intrinsics. clang-cl does need it, though.
+ 'msvs_settings': {
+ 'VCCLCompilerTool': { 'AdditionalOptions': [ '-msse4.1' ] },
+ },
+ }],
+ ],
+ },
+ {
+ 'target_name': 'libvpx_intrinsics_avx2',
+ 'type': 'static_library',
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '<(libvpx_source)',
+ ],
+ 'sources': [
+ '<(libvpx_source)/vp9/encoder/x86/vp9_error_intrin_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_txfm_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/loopfilter_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/sad4d_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/sad_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/variance_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/variance_impl_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_8t_intrin_avx2.c',
+ ],
+ 'cflags': [ '-mavx2', ],
+ 'xcode_settings': { 'OTHER_CFLAGS': [ '-mavx2' ] },
+ 'msvs_settings': {
+ 'VCCLCompilerTool': {
+ 'EnableEnhancedInstructionSet': '5', # /arch:AVX2
+ },
+ },
+ },
+ ],
+}
diff --git a/third_party/libvpx_new/libvpx_srcs_x86_intrinsics.gypi b/third_party/libvpx_new/libvpx_srcs_x86_intrinsics.gypi
new file mode 100644
index 0000000..95fa0e7
--- /dev/null
+++ b/third_party/libvpx_new/libvpx_srcs_x86_intrinsics.gypi
@@ -0,0 +1,123 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'targets': [
+ {
+ 'target_name': 'libvpx_intrinsics_mmx',
+ 'type': 'static_library',
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '<(libvpx_source)',
+ ],
+ 'sources': [
+ '<(libvpx_source)/vp8/common/x86/idct_blk_mmx.c',
+ '<(libvpx_source)/vp8/encoder/x86/vp8_enc_stubs_mmx.c',
+ '<(libvpx_source)/vpx_dsp/x86/variance_mmx.c',
+ ],
+ 'cflags': [ '-mmmx', ],
+ 'xcode_settings': { 'OTHER_CFLAGS': [ '-mmmx' ] },
+ },
+ {
+ 'target_name': 'libvpx_intrinsics_sse2',
+ 'type': 'static_library',
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '<(libvpx_source)',
+ ],
+ 'sources': [
+ '<(libvpx_source)/vp8/common/x86/idct_blk_sse2.c',
+ '<(libvpx_source)/vp8/common/x86/recon_wrapper_sse2.c',
+ '<(libvpx_source)/vp8/encoder/x86/denoising_sse2.c',
+ '<(libvpx_source)/vp8/encoder/x86/vp8_enc_stubs_sse2.c',
+ '<(libvpx_source)/vp8/encoder/x86/vp8_quantize_sse2.c',
+ '<(libvpx_source)/vp9/common/x86/vp9_idct_intrin_sse2.c',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_avg_intrin_sse2.c',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_dct_sse2.c',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_denoiser_sse2.c',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_quantize_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_txfm_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/halfpix_variance_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/inv_txfm_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/loopfilter_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/quantize_sse2.c',
+ '<(libvpx_source)/vpx_dsp/x86/variance_sse2.c',
+ ],
+ 'cflags': [ '-msse2', ],
+ 'xcode_settings': { 'OTHER_CFLAGS': [ '-msse2' ] },
+ },
+ {
+ 'target_name': 'libvpx_intrinsics_ssse3',
+ 'type': 'static_library',
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '<(libvpx_source)',
+ ],
+ 'sources': [
+ '<(libvpx_source)/vp8/encoder/x86/quantize_ssse3.c',
+ '<(libvpx_source)/vp9/encoder/x86/vp9_dct_ssse3.c',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_8t_intrin_ssse3.c',
+ ],
+ 'cflags': [ '-mssse3', ],
+ 'xcode_settings': { 'OTHER_CFLAGS': [ '-mssse3' ] },
+ 'conditions': [
+ ['OS=="win" and clang==1', {
+ # cl.exe's /arch flag doesn't have a setting for SSSE3/4, and cl.exe
+ # doesn't need it for intrinsics. clang-cl does need it, though.
+ 'msvs_settings': {
+ 'VCCLCompilerTool': { 'AdditionalOptions': [ '-mssse3' ] },
+ },
+ }],
+ ],
+ },
+ {
+ 'target_name': 'libvpx_intrinsics_sse4_1',
+ 'type': 'static_library',
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '<(libvpx_source)',
+ ],
+ 'sources': [
+ '<(libvpx_source)/vp8/encoder/x86/quantize_sse4.c',
+ ],
+ 'cflags': [ '-msse4.1', ],
+ 'xcode_settings': { 'OTHER_CFLAGS': [ '-msse4.1' ] },
+ 'conditions': [
+ ['OS=="win" and clang==1', {
+ # cl.exe's /arch flag doesn't have a setting for SSSE3/4, and cl.exe
+ # doesn't need it for intrinsics. clang-cl does need it, though.
+ 'msvs_settings': {
+ 'VCCLCompilerTool': { 'AdditionalOptions': [ '-msse4.1' ] },
+ },
+ }],
+ ],
+ },
+ {
+ 'target_name': 'libvpx_intrinsics_avx2',
+ 'type': 'static_library',
+ 'include_dirs': [
+ 'source/config/<(OS_CATEGORY)/<(target_arch_full)',
+ '<(libvpx_source)',
+ ],
+ 'sources': [
+ '<(libvpx_source)/vp9/encoder/x86/vp9_error_intrin_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/fwd_txfm_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/loopfilter_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/sad4d_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/sad_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/variance_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/variance_impl_avx2.c',
+ '<(libvpx_source)/vpx_dsp/x86/vpx_subpixel_8t_intrin_avx2.c',
+ ],
+ 'cflags': [ '-mavx2', ],
+ 'xcode_settings': { 'OTHER_CFLAGS': [ '-mavx2' ] },
+ 'msvs_settings': {
+ 'VCCLCompilerTool': {
+ 'EnableEnhancedInstructionSet': '5', # /arch:AVX2
+ },
+ },
+ },
+ ],
+}
diff --git a/third_party/libvpx_new/lint_config.sh b/third_party/libvpx_new/lint_config.sh
new file mode 100755
index 0000000..d57e451
--- /dev/null
+++ b/third_party/libvpx_new/lint_config.sh
@@ -0,0 +1,109 @@
+#!/bin/bash -e
+#
+# Copyright (c) 2012 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This script is used to compare vpx_config.h and vpx_config.asm to
+# verify the two files match.
+#
+# Arguments:
+#
+# -h - C Header file.
+# -a - ASM file.
+# -p - Print the options if correct.
+# -o - Output file.
+#
+# Usage:
+#
+# # Compare the two configuration files and output the final results.
+# ./lint_config.sh -h vpx_config.h -a vpx_config.asm -o libvpx.config -p
+
+export LC_ALL=C
+print_final="no"
+
+while getopts "h:a:o:p" flag
+do
+ if [ "$flag" = "h" ]; then
+ header_file=$OPTARG
+ elif [ "$flag" = "a" ]; then
+ asm_file=$OPTARG
+ elif [ "$flag" = "o" ]; then
+ out_file=$OPTARG
+ elif [ "$flag" = "p" ]; then
+ print_final="yes"
+ fi
+done
+
+if [ -z "$header_file" ]; then
+ echo "Header file not specified."
+ false
+ exit
+fi
+
+if [ -z "$asm_file" ]; then
+ echo "ASM file not specified."
+ false
+ exit
+fi
+
+# Concat header file and assembly file and select those ended with 0 or 1.
+combined_config="$(cat $header_file $asm_file | grep -E ' +[01] *$')"
+
+# Extra filtering for known exceptions.
+combined_config="$(echo "$combined_config" | grep -v DO1STROUNDING)"
+
+# Remove all spaces.
+combined_config="$(echo "$combined_config" | sed 's/[ \t]//g')"
+
+# Remove #define in the header file.
+combined_config="$(echo "$combined_config" | sed 's/.*define//')"
+
+# Remove equ in the ASM file.
+combined_config="$(echo "$combined_config" | sed 's/\.equ//')" # gas style
+combined_config="$(echo "$combined_config" | sed 's/equ//')" # rvds style
+
+# Remove %define in YASM ASM files.
+combined_config="$(echo "$combined_config" | sed 's/%define\s *//')" # yasm style
+
+# Remove useless comma in gas style assembly file.
+combined_config="$(echo "$combined_config" | sed 's/,//')"
+
+# Substitute 0 with =no.
+combined_config="$(echo "$combined_config" | sed 's/0$/=no/')"
+
+# Substitute 1 with =yes.
+combined_config="$(echo "$combined_config" | sed 's/1$/=yes/')"
+
+# Find the mismatch variables.
+odd_config="$(echo "$combined_config" | sort | uniq -u)"
+odd_vars="$(echo "$odd_config" | sed 's/=.*//' | uniq)"
+
+for var in $odd_vars; do
+ echo "Error: Configuration mismatch for $var."
+ echo "Header file: $header_file"
+ echo "$(cat -n $header_file | grep "$var[ \t]")"
+ echo "Assembly file: $asm_file"
+ echo "$(cat -n $asm_file | grep "$var[ \t]")"
+ echo ""
+done
+
+if [ -n "$odd_vars" ]; then
+ false
+ exit
+fi
+
+if [ "$print_final" = "no" ]; then
+ exit
+fi
+
+# Do some additional filter to make libvpx happy.
+combined_config="$(echo "$combined_config" | grep -v ARCH_X86=no)"
+combined_config="$(echo "$combined_config" | grep -v ARCH_X86_64=no)"
+
+# Print out the unique configurations.
+if [ -n "$out_file" ]; then
+ echo "$combined_config" | sort | uniq > $out_file
+else
+ echo "$combined_config" | sort | uniq
+fi
diff --git a/third_party/libvpx_new/run_perl.py b/third_party/libvpx_new/run_perl.py
new file mode 100755
index 0000000..a81828e
--- /dev/null
+++ b/third_party/libvpx_new/run_perl.py
@@ -0,0 +1,28 @@
+#!/usr/bin/python
+#
+# Copyright 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+"This script is used to run a perl script."
+
+import optparse
+import subprocess
+import sys
+
+parser = optparse.OptionParser()
+parser.description = __doc__
+parser.add_option('-s', '--script', help='path to a perl script.')
+parser.add_option('-i', '--input', help='file passed to stdin.')
+parser.add_option('-o', '--output', help='file saved from stdout.')
+
+
+options, args = parser.parse_args()
+if (not options.script or not options.input or not options.output):
+ parser.error('Must specify arguments for script, input and output.')
+ sys.exit(1)
+
+with open(options.output, 'w') as fo, open(options.input, 'r') as fi:
+ subprocess.check_call(['perl', options.script], stdout=fo, stdin=fi)
+
+sys.exit(0)
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vp8_rtcd.h b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vp8_rtcd.h
new file mode 100644
index 0000000..a7c415d
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vp8_rtcd.h
@@ -0,0 +1,336 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict4x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_armv6
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_c
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_neon(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mbuv_s)(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_neon(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mby_s)(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+
+void vp8_clear_system_state_c();
+#define vp8_clear_system_state vp8_clear_system_state_c
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_v6(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_neon(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem16x16)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_v6(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_neon(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem8x4)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_v6(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_neon(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem8x8)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_v6(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_neon(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+RTCD_EXTERN void (*vp8_dc_only_idct_add)(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_neon(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+RTCD_EXTERN int (*vp8_denoiser_filter)(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_uv_neon(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+RTCD_EXTERN int (*vp8_denoiser_filter_uv)(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_v6(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_neon(short *input, short *dq, unsigned char *output, int stride);
+RTCD_EXTERN void (*vp8_dequant_idct_add)(short *input, short *dq, unsigned char *output, int stride);
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_v6(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_neon(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+RTCD_EXTERN void (*vp8_dequant_idct_add_uv_block)(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_v6(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_neon(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+RTCD_EXTERN void (*vp8_dequant_idct_add_y_block)(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+void vp8_dequantize_b_v6(struct blockd*, short *dqc);
+void vp8_dequantize_b_neon(struct blockd*, short *dqc);
+RTCD_EXTERN void (*vp8_dequantize_b)(struct blockd*, short *dqc);
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_diamond_search_sad vp8_diamond_search_sad_c
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+void vp8_fast_quantize_b_neon(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_fast_quantize_b)(struct block *, struct blockd *);
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_c
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_c
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_full_search_sad vp8_full_search_sad_c
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+void vp8_intra4x4_predict_armv6(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_armv6
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_bh)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_bv)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_mbh)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_mbv)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_bh)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_bv)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_mbhs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_mbh)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_mbvs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_mbv)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_c
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_c
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_down vp8_mbpost_proc_down_c
+
+int vp8_mbuverror_c(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_c
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+#define vp8_plane_add_noise vp8_plane_add_noise_c
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_c
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_refining_search_sad vp8_refining_search_sad_c
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+#define vp8_regular_quantize_b vp8_regular_quantize_b_c
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_armv6(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_neon(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_fdct4x4)(short *input, short *output, int pitch);
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_armv6(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_neon(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_fdct8x4)(short *input, short *output, int pitch);
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_v6_dual(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_neon(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+RTCD_EXTERN void (*vp8_short_idct4x4llm)(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+void vp8_short_inv_walsh4x4_v6(short *input, short *output);
+void vp8_short_inv_walsh4x4_neon(short *input, short *output);
+RTCD_EXTERN void (*vp8_short_inv_walsh4x4)(short *input, short *output);
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_armv6(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_neon(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_walsh4x4)(short *input, short *output, int pitch);
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict4x4 vp8_sixtap_predict4x4_armv6
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+ vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_armv6;
+ if (flags & HAS_NEON) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_neon;
+ vp8_bilinear_predict8x4 = vp8_bilinear_predict8x4_armv6;
+ if (flags & HAS_NEON) vp8_bilinear_predict8x4 = vp8_bilinear_predict8x4_neon;
+ vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_armv6;
+ if (flags & HAS_NEON) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_neon;
+ vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_c;
+ if (flags & HAS_NEON) vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_neon;
+ vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_c;
+ if (flags & HAS_NEON) vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_neon;
+ vp8_copy_mem16x16 = vp8_copy_mem16x16_v6;
+ if (flags & HAS_NEON) vp8_copy_mem16x16 = vp8_copy_mem16x16_neon;
+ vp8_copy_mem8x4 = vp8_copy_mem8x4_v6;
+ if (flags & HAS_NEON) vp8_copy_mem8x4 = vp8_copy_mem8x4_neon;
+ vp8_copy_mem8x8 = vp8_copy_mem8x8_v6;
+ if (flags & HAS_NEON) vp8_copy_mem8x8 = vp8_copy_mem8x8_neon;
+ vp8_dc_only_idct_add = vp8_dc_only_idct_add_v6;
+ if (flags & HAS_NEON) vp8_dc_only_idct_add = vp8_dc_only_idct_add_neon;
+ vp8_denoiser_filter = vp8_denoiser_filter_c;
+ if (flags & HAS_NEON) vp8_denoiser_filter = vp8_denoiser_filter_neon;
+ vp8_denoiser_filter_uv = vp8_denoiser_filter_uv_c;
+ if (flags & HAS_NEON) vp8_denoiser_filter_uv = vp8_denoiser_filter_uv_neon;
+ vp8_dequant_idct_add = vp8_dequant_idct_add_v6;
+ if (flags & HAS_NEON) vp8_dequant_idct_add = vp8_dequant_idct_add_neon;
+ vp8_dequant_idct_add_uv_block = vp8_dequant_idct_add_uv_block_v6;
+ if (flags & HAS_NEON) vp8_dequant_idct_add_uv_block = vp8_dequant_idct_add_uv_block_neon;
+ vp8_dequant_idct_add_y_block = vp8_dequant_idct_add_y_block_v6;
+ if (flags & HAS_NEON) vp8_dequant_idct_add_y_block = vp8_dequant_idct_add_y_block_neon;
+ vp8_dequantize_b = vp8_dequantize_b_v6;
+ if (flags & HAS_NEON) vp8_dequantize_b = vp8_dequantize_b_neon;
+ vp8_fast_quantize_b = vp8_fast_quantize_b_c;
+ if (flags & HAS_NEON) vp8_fast_quantize_b = vp8_fast_quantize_b_neon;
+ vp8_loop_filter_bh = vp8_loop_filter_bh_armv6;
+ if (flags & HAS_NEON) vp8_loop_filter_bh = vp8_loop_filter_bh_neon;
+ vp8_loop_filter_bv = vp8_loop_filter_bv_armv6;
+ if (flags & HAS_NEON) vp8_loop_filter_bv = vp8_loop_filter_bv_neon;
+ vp8_loop_filter_mbh = vp8_loop_filter_mbh_armv6;
+ if (flags & HAS_NEON) vp8_loop_filter_mbh = vp8_loop_filter_mbh_neon;
+ vp8_loop_filter_mbv = vp8_loop_filter_mbv_armv6;
+ if (flags & HAS_NEON) vp8_loop_filter_mbv = vp8_loop_filter_mbv_neon;
+ vp8_loop_filter_simple_bh = vp8_loop_filter_bhs_armv6;
+ if (flags & HAS_NEON) vp8_loop_filter_simple_bh = vp8_loop_filter_bhs_neon;
+ vp8_loop_filter_simple_bv = vp8_loop_filter_bvs_armv6;
+ if (flags & HAS_NEON) vp8_loop_filter_simple_bv = vp8_loop_filter_bvs_neon;
+ vp8_loop_filter_simple_mbh = vp8_loop_filter_simple_horizontal_edge_armv6;
+ if (flags & HAS_NEON) vp8_loop_filter_simple_mbh = vp8_loop_filter_mbhs_neon;
+ vp8_loop_filter_simple_mbv = vp8_loop_filter_simple_vertical_edge_armv6;
+ if (flags & HAS_NEON) vp8_loop_filter_simple_mbv = vp8_loop_filter_mbvs_neon;
+ vp8_short_fdct4x4 = vp8_short_fdct4x4_armv6;
+ if (flags & HAS_NEON) vp8_short_fdct4x4 = vp8_short_fdct4x4_neon;
+ vp8_short_fdct8x4 = vp8_short_fdct8x4_armv6;
+ if (flags & HAS_NEON) vp8_short_fdct8x4 = vp8_short_fdct8x4_neon;
+ vp8_short_idct4x4llm = vp8_short_idct4x4llm_v6_dual;
+ if (flags & HAS_NEON) vp8_short_idct4x4llm = vp8_short_idct4x4llm_neon;
+ vp8_short_inv_walsh4x4 = vp8_short_inv_walsh4x4_v6;
+ if (flags & HAS_NEON) vp8_short_inv_walsh4x4 = vp8_short_inv_walsh4x4_neon;
+ vp8_short_walsh4x4 = vp8_short_walsh4x4_armv6;
+ if (flags & HAS_NEON) vp8_short_walsh4x4 = vp8_short_walsh4x4_neon;
+ vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_armv6;
+ if (flags & HAS_NEON) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_neon;
+ vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_armv6;
+ if (flags & HAS_NEON) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_neon;
+ vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_armv6;
+ if (flags & HAS_NEON) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_neon;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vp9_rtcd.h b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vp9_rtcd.h
new file mode 100644
index 0000000..7d69b4c
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vp9_rtcd.h
@@ -0,0 +1,174 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+#define vp9_avg_4x4 vp9_avg_4x4_c
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+unsigned int vp9_avg_8x8_neon(const uint8_t *, int p);
+RTCD_EXTERN unsigned int (*vp9_avg_8x8)(const uint8_t *, int p);
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+#define vp9_block_error vp9_block_error_c
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+int64_t vp9_block_error_fp_neon(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+RTCD_EXTERN int64_t (*vp9_block_error_fp)(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+#define vp9_denoiser_filter vp9_denoiser_filter_c
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_neon(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_fdct8x8_quant)(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_c
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_c
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_c
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_c
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_c
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+#define vp9_full_search_sad vp9_full_search_sad_c
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_c
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_16x16 vp9_hadamard_16x16_c
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_8x8 vp9_hadamard_8x8_c
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_c
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht4x4_16_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+RTCD_EXTERN void (*vp9_iht4x4_16_add)(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht8x8_64_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+RTCD_EXTERN void (*vp9_iht8x8_64_add)(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+int16_t vp9_int_pro_col_neon(uint8_t const *ref, const int width);
+RTCD_EXTERN int16_t (*vp9_int_pro_col)(uint8_t const *ref, const int width);
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+void vp9_int_pro_row_neon(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+RTCD_EXTERN void (*vp9_int_pro_row)(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_c
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_down vp9_mbpost_proc_down_c
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vp9_minmax_8x8 vp9_minmax_8x8_c
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+#define vp9_plane_add_noise vp9_plane_add_noise_c
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+#define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_c
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_neon(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+#define vp9_satd vp9_satd_c
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+#define vp9_temporal_filter_apply vp9_temporal_filter_apply_c
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+int vp9_vector_var_neon(int16_t const *ref, int16_t const *src, const int bwl);
+RTCD_EXTERN int (*vp9_vector_var)(int16_t const *ref, int16_t const *src, const int bwl);
+
+void vp9_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+ vp9_avg_8x8 = vp9_avg_8x8_c;
+ if (flags & HAS_NEON) vp9_avg_8x8 = vp9_avg_8x8_neon;
+ vp9_block_error_fp = vp9_block_error_fp_c;
+ if (flags & HAS_NEON) vp9_block_error_fp = vp9_block_error_fp_neon;
+ vp9_fdct8x8_quant = vp9_fdct8x8_quant_c;
+ if (flags & HAS_NEON) vp9_fdct8x8_quant = vp9_fdct8x8_quant_neon;
+ vp9_iht4x4_16_add = vp9_iht4x4_16_add_c;
+ if (flags & HAS_NEON) vp9_iht4x4_16_add = vp9_iht4x4_16_add_neon;
+ vp9_iht8x8_64_add = vp9_iht8x8_64_add_c;
+ if (flags & HAS_NEON) vp9_iht8x8_64_add = vp9_iht8x8_64_add_neon;
+ vp9_int_pro_col = vp9_int_pro_col_c;
+ if (flags & HAS_NEON) vp9_int_pro_col = vp9_int_pro_col_neon;
+ vp9_int_pro_row = vp9_int_pro_row_c;
+ if (flags & HAS_NEON) vp9_int_pro_row = vp9_int_pro_row_neon;
+ vp9_quantize_fp = vp9_quantize_fp_c;
+ if (flags & HAS_NEON) vp9_quantize_fp = vp9_quantize_fp_neon;
+ vp9_vector_var = vp9_vector_var_c;
+ if (flags & HAS_NEON) vp9_vector_var = vp9_vector_var_neon;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.asm b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.asm
new file mode 100644
index 0000000..5e71300
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.asm
@@ -0,0 +1,91 @@
+@ This file was created from a .asm file
+@ using the ads2gas.pl script.
+ .equ DO1STROUNDING, 0
+.equ ARCH_ARM , 1
+.equ ARCH_MIPS , 0
+.equ ARCH_X86 , 0
+.equ ARCH_X86_64 , 0
+.equ HAVE_EDSP , 0
+.equ HAVE_MEDIA , 1
+.equ HAVE_NEON , 1
+.equ HAVE_NEON_ASM , 1
+.equ HAVE_MIPS32 , 0
+.equ HAVE_DSPR2 , 0
+.equ HAVE_MSA , 0
+.equ HAVE_MIPS64 , 0
+.equ HAVE_MMX , 0
+.equ HAVE_SSE , 0
+.equ HAVE_SSE2 , 0
+.equ HAVE_SSE3 , 0
+.equ HAVE_SSSE3 , 0
+.equ HAVE_SSE4_1 , 0
+.equ HAVE_AVX , 0
+.equ HAVE_AVX2 , 0
+.equ HAVE_VPX_PORTS , 1
+.equ HAVE_STDINT_H , 1
+.equ HAVE_PTHREAD_H , 1
+.equ HAVE_SYS_MMAN_H , 1
+.equ HAVE_UNISTD_H , 0
+.equ CONFIG_DEPENDENCY_TRACKING , 1
+.equ CONFIG_EXTERNAL_BUILD , 1
+.equ CONFIG_INSTALL_DOCS , 0
+.equ CONFIG_INSTALL_BINS , 1
+.equ CONFIG_INSTALL_LIBS , 1
+.equ CONFIG_INSTALL_SRCS , 0
+.equ CONFIG_USE_X86INC , 0
+.equ CONFIG_DEBUG , 0
+.equ CONFIG_GPROF , 0
+.equ CONFIG_GCOV , 0
+.equ CONFIG_RVCT , 0
+.equ CONFIG_GCC , 1
+.equ CONFIG_MSVS , 0
+.equ CONFIG_PIC , 1
+.equ CONFIG_BIG_ENDIAN , 0
+.equ CONFIG_CODEC_SRCS , 0
+.equ CONFIG_DEBUG_LIBS , 0
+.equ CONFIG_DEQUANT_TOKENS , 0
+.equ CONFIG_DC_RECON , 0
+.equ CONFIG_RUNTIME_CPU_DETECT , 1
+.equ CONFIG_POSTPROC , 1
+.equ CONFIG_VP9_POSTPROC , 1
+.equ CONFIG_MULTITHREAD , 1
+.equ CONFIG_INTERNAL_STATS , 0
+.equ CONFIG_VP8_ENCODER , 1
+.equ CONFIG_VP8_DECODER , 1
+.equ CONFIG_VP9_ENCODER , 1
+.equ CONFIG_VP9_DECODER , 1
+.equ CONFIG_VP10_ENCODER , 0
+.equ CONFIG_VP10_DECODER , 0
+.equ CONFIG_VP8 , 1
+.equ CONFIG_VP9 , 1
+.equ CONFIG_VP10 , 0
+.equ CONFIG_ENCODERS , 1
+.equ CONFIG_DECODERS , 1
+.equ CONFIG_STATIC_MSVCRT , 0
+.equ CONFIG_SPATIAL_RESAMPLING , 1
+.equ CONFIG_REALTIME_ONLY , 1
+.equ CONFIG_ONTHEFLY_BITPACKING , 0
+.equ CONFIG_ERROR_CONCEALMENT , 0
+.equ CONFIG_SHARED , 0
+.equ CONFIG_STATIC , 1
+.equ CONFIG_SMALL , 0
+.equ CONFIG_POSTPROC_VISUALIZER , 0
+.equ CONFIG_OS_SUPPORT , 1
+.equ CONFIG_UNIT_TESTS , 0
+.equ CONFIG_WEBM_IO , 1
+.equ CONFIG_LIBYUV , 1
+.equ CONFIG_DECODE_PERF_TESTS , 0
+.equ CONFIG_ENCODE_PERF_TESTS , 0
+.equ CONFIG_MULTI_RES_ENCODING , 1
+.equ CONFIG_TEMPORAL_DENOISING , 1
+.equ CONFIG_VP9_TEMPORAL_DENOISING , 1
+.equ CONFIG_COEFFICIENT_RANGE_CHECKING , 0
+.equ CONFIG_VP9_HIGHBITDEPTH , 0
+.equ CONFIG_EXPERIMENTAL , 0
+.equ CONFIG_SIZE_LIMIT , 1
+.equ CONFIG_SPATIAL_SVC , 0
+.equ CONFIG_FP_MB_STATS , 0
+.equ CONFIG_EMULATE_HARDWARE , 0
+.equ DECODE_WIDTH_LIMIT , 16384
+.equ DECODE_HEIGHT_LIMIT , 16384
+ .section .note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.c b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.c
new file mode 100644
index 0000000..721ab0a
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=armv7-linux-gcc --enable-pic --enable-realtime-only --enable-runtime-cpu-detect --disable-edsp --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.h b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.h
new file mode 100644
index 0000000..f1dcd71
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 1
+#define ARCH_MIPS 0
+#define ARCH_X86 0
+#define ARCH_X86_64 0
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 1
+#define HAVE_NEON 1
+#define HAVE_NEON_ASM 1
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 0
+#define HAVE_SSE 0
+#define HAVE_SSE2 0
+#define HAVE_SSE3 0
+#define HAVE_SSSE3 0
+#define HAVE_SSE4_1 0
+#define HAVE_AVX 0
+#define HAVE_AVX2 0
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 0
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 1
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..64fce3a
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_dsp_rtcd.h
@@ -0,0 +1,947 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_avg_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_copy_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve_copy)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d135_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d135_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_16x16 vpx_d153_predictor_16x16_c
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_32x32 vpx_d153_predictor_32x32_c
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_4x4 vpx_d153_predictor_4x4_c
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_8x8 vpx_d153_predictor_8x8_c
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_16x16 vpx_d207_predictor_16x16_c
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_32x32 vpx_d207_predictor_32x32_c
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_4x4 vpx_d207_predictor_4x4_c
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_8x8 vpx_d207_predictor_8x8_c
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_32x32 vpx_d45_predictor_32x32_c
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_16x16 vpx_d63_predictor_16x16_c
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_32x32 vpx_d63_predictor_32x32_c
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_4x4 vpx_d63_predictor_4x4_c
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_8x8 vpx_d63_predictor_8x8_c
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_c
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_c
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32 vpx_fdct32x32_c
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_c
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_rd vpx_fdct32x32_rd_c
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_c
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_c
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_neon(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_1_neon(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get16x16var)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+unsigned int vpx_get4x4sse_cs_neon(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_get4x4sse_cs)(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get8x8var)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_c
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_10_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_10_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_256_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_256_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1024_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_1024_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1024_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_34_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_16_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct4x4_16_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct4x4_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_12_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_64_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_c
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_4_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_4)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_4_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_horizontal_4_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_8_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_8)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_8_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_horizontal_8_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+RTCD_EXTERN void (*vpx_lpf_vertical_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+RTCD_EXTERN void (*vpx_lpf_vertical_16_dual)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_4_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_vertical_4)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_4_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_vertical_4_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_8_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_vertical_8)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_8_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_vertical_8_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_media(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x8 vpx_mse16x8_c
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_c
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_c
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b vpx_quantize_b_c
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_media(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad16x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_c
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x3 vpx_sad16x16x3_c
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x4d_neon(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x8 vpx_sad16x16x8_c
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_c
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_c
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_c
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_c
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x3 vpx_sad16x8x3_c
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_c
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x8 vpx_sad16x8x8_c
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x16 vpx_sad32x16_c
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x16_avg vpx_sad32x16_avg_c
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_c
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x32_avg vpx_sad32x32_avg_c
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_neon(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x64 vpx_sad32x64_c
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x64_avg vpx_sad32x64_avg_c
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_c
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad4x4)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_c
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x3 vpx_sad4x4x3_c
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_c
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x8 vpx_sad4x4x8_c
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_c
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_c
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_c
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x32 vpx_sad64x32_c
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x32_avg vpx_sad64x32_avg_c
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_c
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x64_avg vpx_sad64x64_avg_c
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_neon(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad64x64x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad8x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_c
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x3 vpx_sad8x16x3_c
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_c
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x8 vpx_sad8x16x8_c
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_c
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_c
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_c
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_c
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x3 vpx_sad8x8x3_c
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_c
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x8 vpx_sad8x8x8_c
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_2d vpx_scaled_2d_c
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x16 vpx_sub_pixel_avg_variance16x16_c
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x32 vpx_sub_pixel_avg_variance16x32_c
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x8 vpx_sub_pixel_avg_variance16x8_c
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x16 vpx_sub_pixel_avg_variance32x16_c
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x32 vpx_sub_pixel_avg_variance32x32_c
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x64 vpx_sub_pixel_avg_variance32x64_c
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x4 vpx_sub_pixel_avg_variance4x4_c
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x8 vpx_sub_pixel_avg_variance4x8_c
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x32 vpx_sub_pixel_avg_variance64x32_c
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x64 vpx_sub_pixel_avg_variance64x64_c
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x16 vpx_sub_pixel_avg_variance8x16_c
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x4 vpx_sub_pixel_avg_variance8x4_c
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x8 vpx_sub_pixel_avg_variance8x8_c
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_media(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x32 vpx_sub_pixel_variance16x32_c
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x8 vpx_sub_pixel_variance16x8_c
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x16 vpx_sub_pixel_variance32x16_c
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x64 vpx_sub_pixel_variance32x64_c
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x4 vpx_sub_pixel_variance4x4_c
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x8 vpx_sub_pixel_variance4x8_c
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x32 vpx_sub_pixel_variance64x32_c
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x16 vpx_sub_pixel_variance8x16_c
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x4 vpx_sub_pixel_variance8x4_c
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_media(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+void vpx_subtract_block_neon(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+RTCD_EXTERN void (*vpx_subtract_block)(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_media(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x32 vpx_variance16x32_c
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x16 vpx_variance32x16_c
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x64_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x64)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_c
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_c
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x64)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance8x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_c
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_media(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance8x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_media(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_h vpx_variance_halfpixvar16x16_h_media
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_media(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_hv vpx_variance_halfpixvar16x16_hv_media
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_media(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_v vpx_variance_halfpixvar16x16_v_media
+
+void vpx_dsp_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+ vpx_convolve8 = vpx_convolve8_c;
+ if (flags & HAS_NEON) vpx_convolve8 = vpx_convolve8_neon;
+ vpx_convolve8_avg = vpx_convolve8_avg_c;
+ if (flags & HAS_NEON) vpx_convolve8_avg = vpx_convolve8_avg_neon;
+ vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_c;
+ if (flags & HAS_NEON) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_neon;
+ vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_c;
+ if (flags & HAS_NEON) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_neon;
+ vpx_convolve8_horiz = vpx_convolve8_horiz_c;
+ if (flags & HAS_NEON) vpx_convolve8_horiz = vpx_convolve8_horiz_neon;
+ vpx_convolve8_vert = vpx_convolve8_vert_c;
+ if (flags & HAS_NEON) vpx_convolve8_vert = vpx_convolve8_vert_neon;
+ vpx_convolve_avg = vpx_convolve_avg_c;
+ if (flags & HAS_NEON) vpx_convolve_avg = vpx_convolve_avg_neon;
+ vpx_convolve_copy = vpx_convolve_copy_c;
+ if (flags & HAS_NEON) vpx_convolve_copy = vpx_convolve_copy_neon;
+ vpx_d135_predictor_4x4 = vpx_d135_predictor_4x4_c;
+ if (flags & HAS_NEON) vpx_d135_predictor_4x4 = vpx_d135_predictor_4x4_neon;
+ vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_c;
+ if (flags & HAS_NEON) vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_neon;
+ vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_c;
+ if (flags & HAS_NEON) vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_neon;
+ vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_c;
+ if (flags & HAS_NEON) vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_neon;
+ vpx_dc_128_predictor_16x16 = vpx_dc_128_predictor_16x16_c;
+ if (flags & HAS_NEON) vpx_dc_128_predictor_16x16 = vpx_dc_128_predictor_16x16_neon;
+ vpx_dc_128_predictor_32x32 = vpx_dc_128_predictor_32x32_c;
+ if (flags & HAS_NEON) vpx_dc_128_predictor_32x32 = vpx_dc_128_predictor_32x32_neon;
+ vpx_dc_128_predictor_4x4 = vpx_dc_128_predictor_4x4_c;
+ if (flags & HAS_NEON) vpx_dc_128_predictor_4x4 = vpx_dc_128_predictor_4x4_neon;
+ vpx_dc_128_predictor_8x8 = vpx_dc_128_predictor_8x8_c;
+ if (flags & HAS_NEON) vpx_dc_128_predictor_8x8 = vpx_dc_128_predictor_8x8_neon;
+ vpx_dc_left_predictor_16x16 = vpx_dc_left_predictor_16x16_c;
+ if (flags & HAS_NEON) vpx_dc_left_predictor_16x16 = vpx_dc_left_predictor_16x16_neon;
+ vpx_dc_left_predictor_32x32 = vpx_dc_left_predictor_32x32_c;
+ if (flags & HAS_NEON) vpx_dc_left_predictor_32x32 = vpx_dc_left_predictor_32x32_neon;
+ vpx_dc_left_predictor_4x4 = vpx_dc_left_predictor_4x4_c;
+ if (flags & HAS_NEON) vpx_dc_left_predictor_4x4 = vpx_dc_left_predictor_4x4_neon;
+ vpx_dc_left_predictor_8x8 = vpx_dc_left_predictor_8x8_c;
+ if (flags & HAS_NEON) vpx_dc_left_predictor_8x8 = vpx_dc_left_predictor_8x8_neon;
+ vpx_dc_predictor_16x16 = vpx_dc_predictor_16x16_c;
+ if (flags & HAS_NEON) vpx_dc_predictor_16x16 = vpx_dc_predictor_16x16_neon;
+ vpx_dc_predictor_32x32 = vpx_dc_predictor_32x32_c;
+ if (flags & HAS_NEON) vpx_dc_predictor_32x32 = vpx_dc_predictor_32x32_neon;
+ vpx_dc_predictor_4x4 = vpx_dc_predictor_4x4_c;
+ if (flags & HAS_NEON) vpx_dc_predictor_4x4 = vpx_dc_predictor_4x4_neon;
+ vpx_dc_predictor_8x8 = vpx_dc_predictor_8x8_c;
+ if (flags & HAS_NEON) vpx_dc_predictor_8x8 = vpx_dc_predictor_8x8_neon;
+ vpx_dc_top_predictor_16x16 = vpx_dc_top_predictor_16x16_c;
+ if (flags & HAS_NEON) vpx_dc_top_predictor_16x16 = vpx_dc_top_predictor_16x16_neon;
+ vpx_dc_top_predictor_32x32 = vpx_dc_top_predictor_32x32_c;
+ if (flags & HAS_NEON) vpx_dc_top_predictor_32x32 = vpx_dc_top_predictor_32x32_neon;
+ vpx_dc_top_predictor_4x4 = vpx_dc_top_predictor_4x4_c;
+ if (flags & HAS_NEON) vpx_dc_top_predictor_4x4 = vpx_dc_top_predictor_4x4_neon;
+ vpx_dc_top_predictor_8x8 = vpx_dc_top_predictor_8x8_c;
+ if (flags & HAS_NEON) vpx_dc_top_predictor_8x8 = vpx_dc_top_predictor_8x8_neon;
+ vpx_fdct8x8 = vpx_fdct8x8_c;
+ if (flags & HAS_NEON) vpx_fdct8x8 = vpx_fdct8x8_neon;
+ vpx_fdct8x8_1 = vpx_fdct8x8_1_c;
+ if (flags & HAS_NEON) vpx_fdct8x8_1 = vpx_fdct8x8_1_neon;
+ vpx_get16x16var = vpx_get16x16var_c;
+ if (flags & HAS_NEON) vpx_get16x16var = vpx_get16x16var_neon;
+ vpx_get4x4sse_cs = vpx_get4x4sse_cs_c;
+ if (flags & HAS_NEON) vpx_get4x4sse_cs = vpx_get4x4sse_cs_neon;
+ vpx_get8x8var = vpx_get8x8var_c;
+ if (flags & HAS_NEON) vpx_get8x8var = vpx_get8x8var_neon;
+ vpx_h_predictor_16x16 = vpx_h_predictor_16x16_c;
+ if (flags & HAS_NEON) vpx_h_predictor_16x16 = vpx_h_predictor_16x16_neon;
+ vpx_h_predictor_32x32 = vpx_h_predictor_32x32_c;
+ if (flags & HAS_NEON) vpx_h_predictor_32x32 = vpx_h_predictor_32x32_neon;
+ vpx_h_predictor_4x4 = vpx_h_predictor_4x4_c;
+ if (flags & HAS_NEON) vpx_h_predictor_4x4 = vpx_h_predictor_4x4_neon;
+ vpx_h_predictor_8x8 = vpx_h_predictor_8x8_c;
+ if (flags & HAS_NEON) vpx_h_predictor_8x8 = vpx_h_predictor_8x8_neon;
+ vpx_idct16x16_10_add = vpx_idct16x16_10_add_c;
+ if (flags & HAS_NEON) vpx_idct16x16_10_add = vpx_idct16x16_10_add_neon;
+ vpx_idct16x16_1_add = vpx_idct16x16_1_add_c;
+ if (flags & HAS_NEON) vpx_idct16x16_1_add = vpx_idct16x16_1_add_neon;
+ vpx_idct16x16_256_add = vpx_idct16x16_256_add_c;
+ if (flags & HAS_NEON) vpx_idct16x16_256_add = vpx_idct16x16_256_add_neon;
+ vpx_idct32x32_1024_add = vpx_idct32x32_1024_add_c;
+ if (flags & HAS_NEON) vpx_idct32x32_1024_add = vpx_idct32x32_1024_add_neon;
+ vpx_idct32x32_1_add = vpx_idct32x32_1_add_c;
+ if (flags & HAS_NEON) vpx_idct32x32_1_add = vpx_idct32x32_1_add_neon;
+ vpx_idct32x32_34_add = vpx_idct32x32_34_add_c;
+ if (flags & HAS_NEON) vpx_idct32x32_34_add = vpx_idct32x32_1024_add_neon;
+ vpx_idct4x4_16_add = vpx_idct4x4_16_add_c;
+ if (flags & HAS_NEON) vpx_idct4x4_16_add = vpx_idct4x4_16_add_neon;
+ vpx_idct4x4_1_add = vpx_idct4x4_1_add_c;
+ if (flags & HAS_NEON) vpx_idct4x4_1_add = vpx_idct4x4_1_add_neon;
+ vpx_idct8x8_12_add = vpx_idct8x8_12_add_c;
+ if (flags & HAS_NEON) vpx_idct8x8_12_add = vpx_idct8x8_12_add_neon;
+ vpx_idct8x8_1_add = vpx_idct8x8_1_add_c;
+ if (flags & HAS_NEON) vpx_idct8x8_1_add = vpx_idct8x8_1_add_neon;
+ vpx_idct8x8_64_add = vpx_idct8x8_64_add_c;
+ if (flags & HAS_NEON) vpx_idct8x8_64_add = vpx_idct8x8_64_add_neon;
+ vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_c;
+ if (flags & HAS_NEON) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_neon;
+ vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_c;
+ if (flags & HAS_NEON) vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_neon;
+ vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_c;
+ if (flags & HAS_NEON) vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_neon;
+ vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_c;
+ if (flags & HAS_NEON) vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_neon;
+ vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_c;
+ if (flags & HAS_NEON) vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_neon;
+ vpx_lpf_vertical_16 = vpx_lpf_vertical_16_c;
+ if (flags & HAS_NEON) vpx_lpf_vertical_16 = vpx_lpf_vertical_16_neon;
+ vpx_lpf_vertical_16_dual = vpx_lpf_vertical_16_dual_c;
+ if (flags & HAS_NEON) vpx_lpf_vertical_16_dual = vpx_lpf_vertical_16_dual_neon;
+ vpx_lpf_vertical_4 = vpx_lpf_vertical_4_c;
+ if (flags & HAS_NEON) vpx_lpf_vertical_4 = vpx_lpf_vertical_4_neon;
+ vpx_lpf_vertical_4_dual = vpx_lpf_vertical_4_dual_c;
+ if (flags & HAS_NEON) vpx_lpf_vertical_4_dual = vpx_lpf_vertical_4_dual_neon;
+ vpx_lpf_vertical_8 = vpx_lpf_vertical_8_c;
+ if (flags & HAS_NEON) vpx_lpf_vertical_8 = vpx_lpf_vertical_8_neon;
+ vpx_lpf_vertical_8_dual = vpx_lpf_vertical_8_dual_c;
+ if (flags & HAS_NEON) vpx_lpf_vertical_8_dual = vpx_lpf_vertical_8_dual_neon;
+ vpx_mse16x16 = vpx_mse16x16_media;
+ if (flags & HAS_NEON) vpx_mse16x16 = vpx_mse16x16_neon;
+ vpx_sad16x16 = vpx_sad16x16_media;
+ if (flags & HAS_NEON) vpx_sad16x16 = vpx_sad16x16_neon;
+ vpx_sad16x16x4d = vpx_sad16x16x4d_c;
+ if (flags & HAS_NEON) vpx_sad16x16x4d = vpx_sad16x16x4d_neon;
+ vpx_sad16x8 = vpx_sad16x8_c;
+ if (flags & HAS_NEON) vpx_sad16x8 = vpx_sad16x8_neon;
+ vpx_sad32x32 = vpx_sad32x32_c;
+ if (flags & HAS_NEON) vpx_sad32x32 = vpx_sad32x32_neon;
+ vpx_sad32x32x4d = vpx_sad32x32x4d_c;
+ if (flags & HAS_NEON) vpx_sad32x32x4d = vpx_sad32x32x4d_neon;
+ vpx_sad4x4 = vpx_sad4x4_c;
+ if (flags & HAS_NEON) vpx_sad4x4 = vpx_sad4x4_neon;
+ vpx_sad64x64 = vpx_sad64x64_c;
+ if (flags & HAS_NEON) vpx_sad64x64 = vpx_sad64x64_neon;
+ vpx_sad64x64x4d = vpx_sad64x64x4d_c;
+ if (flags & HAS_NEON) vpx_sad64x64x4d = vpx_sad64x64x4d_neon;
+ vpx_sad8x16 = vpx_sad8x16_c;
+ if (flags & HAS_NEON) vpx_sad8x16 = vpx_sad8x16_neon;
+ vpx_sad8x8 = vpx_sad8x8_c;
+ if (flags & HAS_NEON) vpx_sad8x8 = vpx_sad8x8_neon;
+ vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_media;
+ if (flags & HAS_NEON) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_neon;
+ vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_c;
+ if (flags & HAS_NEON) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_neon;
+ vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_c;
+ if (flags & HAS_NEON) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_neon;
+ vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_media;
+ if (flags & HAS_NEON) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_neon;
+ vpx_subtract_block = vpx_subtract_block_c;
+ if (flags & HAS_NEON) vpx_subtract_block = vpx_subtract_block_neon;
+ vpx_tm_predictor_16x16 = vpx_tm_predictor_16x16_c;
+ if (flags & HAS_NEON) vpx_tm_predictor_16x16 = vpx_tm_predictor_16x16_neon;
+ vpx_tm_predictor_32x32 = vpx_tm_predictor_32x32_c;
+ if (flags & HAS_NEON) vpx_tm_predictor_32x32 = vpx_tm_predictor_32x32_neon;
+ vpx_tm_predictor_4x4 = vpx_tm_predictor_4x4_c;
+ if (flags & HAS_NEON) vpx_tm_predictor_4x4 = vpx_tm_predictor_4x4_neon;
+ vpx_tm_predictor_8x8 = vpx_tm_predictor_8x8_c;
+ if (flags & HAS_NEON) vpx_tm_predictor_8x8 = vpx_tm_predictor_8x8_neon;
+ vpx_v_predictor_16x16 = vpx_v_predictor_16x16_c;
+ if (flags & HAS_NEON) vpx_v_predictor_16x16 = vpx_v_predictor_16x16_neon;
+ vpx_v_predictor_32x32 = vpx_v_predictor_32x32_c;
+ if (flags & HAS_NEON) vpx_v_predictor_32x32 = vpx_v_predictor_32x32_neon;
+ vpx_v_predictor_4x4 = vpx_v_predictor_4x4_c;
+ if (flags & HAS_NEON) vpx_v_predictor_4x4 = vpx_v_predictor_4x4_neon;
+ vpx_v_predictor_8x8 = vpx_v_predictor_8x8_c;
+ if (flags & HAS_NEON) vpx_v_predictor_8x8 = vpx_v_predictor_8x8_neon;
+ vpx_variance16x16 = vpx_variance16x16_media;
+ if (flags & HAS_NEON) vpx_variance16x16 = vpx_variance16x16_neon;
+ vpx_variance16x8 = vpx_variance16x8_c;
+ if (flags & HAS_NEON) vpx_variance16x8 = vpx_variance16x8_neon;
+ vpx_variance32x32 = vpx_variance32x32_c;
+ if (flags & HAS_NEON) vpx_variance32x32 = vpx_variance32x32_neon;
+ vpx_variance32x64 = vpx_variance32x64_c;
+ if (flags & HAS_NEON) vpx_variance32x64 = vpx_variance32x64_neon;
+ vpx_variance64x32 = vpx_variance64x32_c;
+ if (flags & HAS_NEON) vpx_variance64x32 = vpx_variance64x32_neon;
+ vpx_variance64x64 = vpx_variance64x64_c;
+ if (flags & HAS_NEON) vpx_variance64x64 = vpx_variance64x64_neon;
+ vpx_variance8x16 = vpx_variance8x16_c;
+ if (flags & HAS_NEON) vpx_variance8x16 = vpx_variance8x16_neon;
+ vpx_variance8x8 = vpx_variance8x8_media;
+ if (flags & HAS_NEON) vpx_variance8x8 = vpx_variance8x8_neon;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_scale_rtcd.h
new file mode 100644
index 0000000..a1564b7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon-cpu-detect/vpx_scale_rtcd.h
@@ -0,0 +1,71 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon/vp8_rtcd.h b/third_party/libvpx_new/source/config/linux/arm-neon/vp8_rtcd.h
new file mode 100644
index 0000000..17d17eb
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon/vp8_rtcd.h
@@ -0,0 +1,272 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict16x16 vp8_bilinear_predict16x16_neon
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict4x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_armv6
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_neon
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x8 vp8_bilinear_predict8x8_neon
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_c
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_neon(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+#define vp8_build_intra_predictors_mbuv_s vp8_build_intra_predictors_mbuv_s_neon
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_neon(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+#define vp8_build_intra_predictors_mby_s vp8_build_intra_predictors_mby_s_neon
+
+void vp8_clear_system_state_c();
+#define vp8_clear_system_state vp8_clear_system_state_c
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_v6(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_neon(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem16x16 vp8_copy_mem16x16_neon
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_v6(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_neon(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x4 vp8_copy_mem8x4_neon
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_v6(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_neon(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x8 vp8_copy_mem8x8_neon
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_v6(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_neon(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+#define vp8_dc_only_idct_add vp8_dc_only_idct_add_neon
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_neon(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter vp8_denoiser_filter_neon
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_uv_neon(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_neon
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_v6(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_neon(short *input, short *dq, unsigned char *output, int stride);
+#define vp8_dequant_idct_add vp8_dequant_idct_add_neon
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_v6(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_neon(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_neon
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_v6(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_neon(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_neon
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+void vp8_dequantize_b_v6(struct blockd*, short *dqc);
+void vp8_dequantize_b_neon(struct blockd*, short *dqc);
+#define vp8_dequantize_b vp8_dequantize_b_neon
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_diamond_search_sad vp8_diamond_search_sad_c
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+void vp8_fast_quantize_b_neon(struct block *, struct blockd *);
+#define vp8_fast_quantize_b vp8_fast_quantize_b_neon
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_c
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_c
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_full_search_sad vp8_full_search_sad_c
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+void vp8_intra4x4_predict_armv6(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_armv6
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bh vp8_loop_filter_bh_neon
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bv vp8_loop_filter_bv_neon
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbh vp8_loop_filter_mbh_neon
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbv vp8_loop_filter_mbv_neon
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_neon
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_neon
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_mbhs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbh vp8_loop_filter_mbhs_neon
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_mbvs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbv vp8_loop_filter_mbvs_neon
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_c
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_c
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_down vp8_mbpost_proc_down_c
+
+int vp8_mbuverror_c(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_c
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+#define vp8_plane_add_noise vp8_plane_add_noise_c
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_c
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_refining_search_sad vp8_refining_search_sad_c
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+#define vp8_regular_quantize_b vp8_regular_quantize_b_c
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_armv6(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_neon(short *input, short *output, int pitch);
+#define vp8_short_fdct4x4 vp8_short_fdct4x4_neon
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_armv6(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_neon(short *input, short *output, int pitch);
+#define vp8_short_fdct8x4 vp8_short_fdct8x4_neon
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_v6_dual(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_neon(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+#define vp8_short_idct4x4llm vp8_short_idct4x4llm_neon
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+void vp8_short_inv_walsh4x4_v6(short *input, short *output);
+void vp8_short_inv_walsh4x4_neon(short *input, short *output);
+#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_neon
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_armv6(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_neon(short *input, short *output, int pitch);
+#define vp8_short_walsh4x4 vp8_short_walsh4x4_neon
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict16x16 vp8_sixtap_predict16x16_neon
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict4x4 vp8_sixtap_predict4x4_armv6
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x4 vp8_sixtap_predict8x4_neon
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x8 vp8_sixtap_predict8x8_neon
+
+void vp8_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon/vp9_rtcd.h b/third_party/libvpx_new/source/config/linux/arm-neon/vp9_rtcd.h
new file mode 100644
index 0000000..b8f6906
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon/vp9_rtcd.h
@@ -0,0 +1,156 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+#define vp9_avg_4x4 vp9_avg_4x4_c
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+unsigned int vp9_avg_8x8_neon(const uint8_t *, int p);
+#define vp9_avg_8x8 vp9_avg_8x8_neon
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+#define vp9_block_error vp9_block_error_c
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+int64_t vp9_block_error_fp_neon(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+#define vp9_block_error_fp vp9_block_error_fp_neon
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+#define vp9_denoiser_filter vp9_denoiser_filter_c
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_neon(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_fdct8x8_quant vp9_fdct8x8_quant_neon
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_c
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_c
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_c
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_c
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_c
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+#define vp9_full_search_sad vp9_full_search_sad_c
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_c
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_16x16 vp9_hadamard_16x16_c
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_8x8 vp9_hadamard_8x8_c
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_c
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht4x4_16_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht4x4_16_add vp9_iht4x4_16_add_neon
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht8x8_64_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht8x8_64_add vp9_iht8x8_64_add_neon
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+int16_t vp9_int_pro_col_neon(uint8_t const *ref, const int width);
+#define vp9_int_pro_col vp9_int_pro_col_neon
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+void vp9_int_pro_row_neon(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+#define vp9_int_pro_row vp9_int_pro_row_neon
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_c
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_down vp9_mbpost_proc_down_c
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vp9_minmax_8x8 vp9_minmax_8x8_c
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+#define vp9_plane_add_noise vp9_plane_add_noise_c
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+#define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_c
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_neon(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp vp9_quantize_fp_neon
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+#define vp9_satd vp9_satd_c
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+#define vp9_temporal_filter_apply vp9_temporal_filter_apply_c
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+int vp9_vector_var_neon(int16_t const *ref, int16_t const *src, const int bwl);
+#define vp9_vector_var vp9_vector_var_neon
+
+void vp9_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.asm b/third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.asm
new file mode 100644
index 0000000..3c7c8fe
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.asm
@@ -0,0 +1,91 @@
+@ This file was created from a .asm file
+@ using the ads2gas.pl script.
+ .equ DO1STROUNDING, 0
+.equ ARCH_ARM , 1
+.equ ARCH_MIPS , 0
+.equ ARCH_X86 , 0
+.equ ARCH_X86_64 , 0
+.equ HAVE_EDSP , 0
+.equ HAVE_MEDIA , 1
+.equ HAVE_NEON , 1
+.equ HAVE_NEON_ASM , 1
+.equ HAVE_MIPS32 , 0
+.equ HAVE_DSPR2 , 0
+.equ HAVE_MSA , 0
+.equ HAVE_MIPS64 , 0
+.equ HAVE_MMX , 0
+.equ HAVE_SSE , 0
+.equ HAVE_SSE2 , 0
+.equ HAVE_SSE3 , 0
+.equ HAVE_SSSE3 , 0
+.equ HAVE_SSE4_1 , 0
+.equ HAVE_AVX , 0
+.equ HAVE_AVX2 , 0
+.equ HAVE_VPX_PORTS , 1
+.equ HAVE_STDINT_H , 1
+.equ HAVE_PTHREAD_H , 1
+.equ HAVE_SYS_MMAN_H , 1
+.equ HAVE_UNISTD_H , 0
+.equ CONFIG_DEPENDENCY_TRACKING , 1
+.equ CONFIG_EXTERNAL_BUILD , 1
+.equ CONFIG_INSTALL_DOCS , 0
+.equ CONFIG_INSTALL_BINS , 1
+.equ CONFIG_INSTALL_LIBS , 1
+.equ CONFIG_INSTALL_SRCS , 0
+.equ CONFIG_USE_X86INC , 0
+.equ CONFIG_DEBUG , 0
+.equ CONFIG_GPROF , 0
+.equ CONFIG_GCOV , 0
+.equ CONFIG_RVCT , 0
+.equ CONFIG_GCC , 1
+.equ CONFIG_MSVS , 0
+.equ CONFIG_PIC , 1
+.equ CONFIG_BIG_ENDIAN , 0
+.equ CONFIG_CODEC_SRCS , 0
+.equ CONFIG_DEBUG_LIBS , 0
+.equ CONFIG_DEQUANT_TOKENS , 0
+.equ CONFIG_DC_RECON , 0
+.equ CONFIG_RUNTIME_CPU_DETECT , 0
+.equ CONFIG_POSTPROC , 1
+.equ CONFIG_VP9_POSTPROC , 1
+.equ CONFIG_MULTITHREAD , 1
+.equ CONFIG_INTERNAL_STATS , 0
+.equ CONFIG_VP8_ENCODER , 1
+.equ CONFIG_VP8_DECODER , 1
+.equ CONFIG_VP9_ENCODER , 1
+.equ CONFIG_VP9_DECODER , 1
+.equ CONFIG_VP10_ENCODER , 0
+.equ CONFIG_VP10_DECODER , 0
+.equ CONFIG_VP8 , 1
+.equ CONFIG_VP9 , 1
+.equ CONFIG_VP10 , 0
+.equ CONFIG_ENCODERS , 1
+.equ CONFIG_DECODERS , 1
+.equ CONFIG_STATIC_MSVCRT , 0
+.equ CONFIG_SPATIAL_RESAMPLING , 1
+.equ CONFIG_REALTIME_ONLY , 1
+.equ CONFIG_ONTHEFLY_BITPACKING , 0
+.equ CONFIG_ERROR_CONCEALMENT , 0
+.equ CONFIG_SHARED , 0
+.equ CONFIG_STATIC , 1
+.equ CONFIG_SMALL , 0
+.equ CONFIG_POSTPROC_VISUALIZER , 0
+.equ CONFIG_OS_SUPPORT , 1
+.equ CONFIG_UNIT_TESTS , 0
+.equ CONFIG_WEBM_IO , 1
+.equ CONFIG_LIBYUV , 1
+.equ CONFIG_DECODE_PERF_TESTS , 0
+.equ CONFIG_ENCODE_PERF_TESTS , 0
+.equ CONFIG_MULTI_RES_ENCODING , 1
+.equ CONFIG_TEMPORAL_DENOISING , 1
+.equ CONFIG_VP9_TEMPORAL_DENOISING , 1
+.equ CONFIG_COEFFICIENT_RANGE_CHECKING , 0
+.equ CONFIG_VP9_HIGHBITDEPTH , 0
+.equ CONFIG_EXPERIMENTAL , 0
+.equ CONFIG_SIZE_LIMIT , 1
+.equ CONFIG_SPATIAL_SVC , 0
+.equ CONFIG_FP_MB_STATS , 0
+.equ CONFIG_EMULATE_HARDWARE , 0
+.equ DECODE_WIDTH_LIMIT , 16384
+.equ DECODE_HEIGHT_LIMIT , 16384
+ .section .note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.c b/third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.c
new file mode 100644
index 0000000..e05d699
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=armv7-linux-gcc --enable-pic --enable-realtime-only --disable-edsp --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.h b/third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.h
new file mode 100644
index 0000000..ba25286
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 1
+#define ARCH_MIPS 0
+#define ARCH_X86 0
+#define ARCH_X86_64 0
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 1
+#define HAVE_NEON 1
+#define HAVE_NEON_ASM 1
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 0
+#define HAVE_SSE 0
+#define HAVE_SSE2 0
+#define HAVE_SSE3 0
+#define HAVE_SSSE3 0
+#define HAVE_SSE4_1 0
+#define HAVE_AVX 0
+#define HAVE_AVX2 0
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 0
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 0
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/linux/arm-neon/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..4de075d
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon/vpx_dsp_rtcd.h
@@ -0,0 +1,765 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8 vpx_convolve8_neon
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg vpx_convolve8_avg_neon
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_horiz vpx_convolve8_avg_horiz_neon
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_vert vpx_convolve8_avg_vert_neon
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_horiz vpx_convolve8_horiz_neon
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_vert vpx_convolve8_vert_neon
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_avg_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_avg vpx_convolve_avg_neon
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_copy_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_copy vpx_convolve_copy_neon
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d135_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_neon
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_16x16 vpx_d153_predictor_16x16_c
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_32x32 vpx_d153_predictor_32x32_c
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_4x4 vpx_d153_predictor_4x4_c
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_8x8 vpx_d153_predictor_8x8_c
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_16x16 vpx_d207_predictor_16x16_c
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_32x32 vpx_d207_predictor_32x32_c
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_4x4 vpx_d207_predictor_4x4_c
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_8x8 vpx_d207_predictor_8x8_c
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_16x16 vpx_d45_predictor_16x16_neon
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_32x32 vpx_d45_predictor_32x32_c
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_4x4 vpx_d45_predictor_4x4_neon
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_8x8 vpx_d45_predictor_8x8_neon
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_16x16 vpx_d63_predictor_16x16_c
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_32x32 vpx_d63_predictor_32x32_c
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_4x4 vpx_d63_predictor_4x4_c
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_8x8 vpx_d63_predictor_8x8_c
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_neon
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_neon
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_neon
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_neon
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_neon
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_neon
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_neon
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_neon
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_neon
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_neon
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_neon
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_neon
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_neon
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_neon
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_neon
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_neon
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_c
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_c
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32 vpx_fdct32x32_c
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_c
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_rd vpx_fdct32x32_rd_c
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_c
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_c
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_neon(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8 vpx_fdct8x8_neon
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_1_neon(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8_1 vpx_fdct8x8_1_neon
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get16x16var vpx_get16x16var_neon
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+unsigned int vpx_get4x4sse_cs_neon(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_neon
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get8x8var vpx_get8x8var_neon
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_c
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_16x16 vpx_h_predictor_16x16_neon
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_32x32 vpx_h_predictor_32x32_neon
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_4x4 vpx_h_predictor_4x4_neon
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_8x8 vpx_h_predictor_8x8_neon
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_10_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_10_add vpx_idct16x16_10_add_neon
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_1_add vpx_idct16x16_1_add_neon
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_256_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_256_add vpx_idct16x16_256_add_neon
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1024_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_neon
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1_add vpx_idct32x32_1_add_neon
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1024_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_34_add vpx_idct32x32_1024_add_neon
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_16_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_16_add vpx_idct4x4_16_add_neon
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_1_add vpx_idct4x4_1_add_neon
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_12_add vpx_idct8x8_12_add_neon
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_1_add vpx_idct8x8_1_add_neon
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_64_add vpx_idct8x8_64_add_neon
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_c
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_16 vpx_lpf_horizontal_16_neon
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_4_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_neon
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_4_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_neon
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_8_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_neon
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_8_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_neon
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16 vpx_lpf_vertical_16_neon
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_neon
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_4_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_4 vpx_lpf_vertical_4_neon
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_4_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_neon
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_8_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_8 vpx_lpf_vertical_8_neon
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_8_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_neon
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_media(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x16 vpx_mse16x16_neon
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x8 vpx_mse16x8_c
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_c
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_c
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b vpx_quantize_b_c
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_media(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x16 vpx_sad16x16_neon
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_c
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x3 vpx_sad16x16x3_c
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x4d_neon(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x4d vpx_sad16x16x4d_neon
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x8 vpx_sad16x16x8_c
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_c
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_c
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_c
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x8 vpx_sad16x8_neon
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_c
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x3 vpx_sad16x8x3_c
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_c
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x8 vpx_sad16x8x8_c
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x16 vpx_sad32x16_c
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x16_avg vpx_sad32x16_avg_c
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_c
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x32 vpx_sad32x32_neon
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x32_avg vpx_sad32x32_avg_c
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_neon(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x4d vpx_sad32x32x4d_neon
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x64 vpx_sad32x64_c
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x64_avg vpx_sad32x64_avg_c
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_c
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x4 vpx_sad4x4_neon
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_c
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x3 vpx_sad4x4x3_c
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_c
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x8 vpx_sad4x4x8_c
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_c
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_c
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_c
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x32 vpx_sad64x32_c
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x32_avg vpx_sad64x32_avg_c
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_c
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x64 vpx_sad64x64_neon
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x64_avg vpx_sad64x64_avg_c
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_neon(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x4d vpx_sad64x64x4d_neon
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x16 vpx_sad8x16_neon
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_c
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x3 vpx_sad8x16x3_c
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_c
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x8 vpx_sad8x16x8_c
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_c
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_c
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_c
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x8 vpx_sad8x8_neon
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_c
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x3 vpx_sad8x8x3_c
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_c
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x8 vpx_sad8x8x8_c
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_2d vpx_scaled_2d_c
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x16 vpx_sub_pixel_avg_variance16x16_c
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x32 vpx_sub_pixel_avg_variance16x32_c
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x8 vpx_sub_pixel_avg_variance16x8_c
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x16 vpx_sub_pixel_avg_variance32x16_c
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x32 vpx_sub_pixel_avg_variance32x32_c
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x64 vpx_sub_pixel_avg_variance32x64_c
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x4 vpx_sub_pixel_avg_variance4x4_c
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x8 vpx_sub_pixel_avg_variance4x8_c
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x32 vpx_sub_pixel_avg_variance64x32_c
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x64 vpx_sub_pixel_avg_variance64x64_c
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x16 vpx_sub_pixel_avg_variance8x16_c
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x4 vpx_sub_pixel_avg_variance8x4_c
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x8 vpx_sub_pixel_avg_variance8x8_c
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_media(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x16 vpx_sub_pixel_variance16x16_neon
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x32 vpx_sub_pixel_variance16x32_c
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x8 vpx_sub_pixel_variance16x8_c
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x16 vpx_sub_pixel_variance32x16_c
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x32 vpx_sub_pixel_variance32x32_neon
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x64 vpx_sub_pixel_variance32x64_c
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x4 vpx_sub_pixel_variance4x4_c
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x8 vpx_sub_pixel_variance4x8_c
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x32 vpx_sub_pixel_variance64x32_c
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x64 vpx_sub_pixel_variance64x64_neon
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x16 vpx_sub_pixel_variance8x16_c
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x4 vpx_sub_pixel_variance8x4_c
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_media(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x8 vpx_sub_pixel_variance8x8_neon
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+void vpx_subtract_block_neon(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+#define vpx_subtract_block vpx_subtract_block_neon
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_neon
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_neon
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_neon
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_neon
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_16x16 vpx_v_predictor_16x16_neon
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_32x32 vpx_v_predictor_32x32_neon
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_4x4 vpx_v_predictor_4x4_neon
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_8x8 vpx_v_predictor_8x8_neon
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_media(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x16 vpx_variance16x16_neon
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x32 vpx_variance16x32_c
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x8 vpx_variance16x8_neon
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x16 vpx_variance32x16_c
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x32 vpx_variance32x32_neon
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x64_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x64 vpx_variance32x64_neon
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_c
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_c
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x32 vpx_variance64x32_neon
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x64 vpx_variance64x64_neon
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x16 vpx_variance8x16_neon
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_c
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_media(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x8 vpx_variance8x8_neon
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_media(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_h vpx_variance_halfpixvar16x16_h_media
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_media(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_hv vpx_variance_halfpixvar16x16_hv_media
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_media(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_v vpx_variance_halfpixvar16x16_v_media
+
+void vpx_dsp_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm-neon/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/linux/arm-neon/vpx_scale_rtcd.h
new file mode 100644
index 0000000..a1564b7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm-neon/vpx_scale_rtcd.h
@@ -0,0 +1,71 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm/vp8_rtcd.h b/third_party/libvpx_new/source/config/linux/arm/vp8_rtcd.h
new file mode 100644
index 0000000..6cd65fb
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm/vp8_rtcd.h
@@ -0,0 +1,240 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict16x16 vp8_bilinear_predict16x16_armv6
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict4x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_armv6
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_armv6
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x8 vp8_bilinear_predict8x8_armv6
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_c
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+#define vp8_build_intra_predictors_mbuv_s vp8_build_intra_predictors_mbuv_s_c
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+#define vp8_build_intra_predictors_mby_s vp8_build_intra_predictors_mby_s_c
+
+void vp8_clear_system_state_c();
+#define vp8_clear_system_state vp8_clear_system_state_c
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_v6(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem16x16 vp8_copy_mem16x16_v6
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_v6(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x4 vp8_copy_mem8x4_v6
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_v6(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x8 vp8_copy_mem8x8_v6
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_v6(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+#define vp8_dc_only_idct_add vp8_dc_only_idct_add_v6
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter vp8_denoiser_filter_c
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_c
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_v6(short *input, short *dq, unsigned char *output, int stride);
+#define vp8_dequant_idct_add vp8_dequant_idct_add_v6
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_v6(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_v6
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_v6(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_v6
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+void vp8_dequantize_b_v6(struct blockd*, short *dqc);
+#define vp8_dequantize_b vp8_dequantize_b_v6
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_diamond_search_sad vp8_diamond_search_sad_c
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+#define vp8_fast_quantize_b vp8_fast_quantize_b_c
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_c
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_c
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_full_search_sad vp8_full_search_sad_c
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+void vp8_intra4x4_predict_armv6(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_armv6
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bh vp8_loop_filter_bh_armv6
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bv vp8_loop_filter_bv_armv6
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbh vp8_loop_filter_mbh_armv6
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_armv6(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbv vp8_loop_filter_mbv_armv6
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_armv6
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_armv6
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbh vp8_loop_filter_simple_horizontal_edge_armv6
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_armv6(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbv vp8_loop_filter_simple_vertical_edge_armv6
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_c
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_c
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_down vp8_mbpost_proc_down_c
+
+int vp8_mbuverror_c(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_c
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+#define vp8_plane_add_noise vp8_plane_add_noise_c
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_c
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_refining_search_sad vp8_refining_search_sad_c
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+#define vp8_regular_quantize_b vp8_regular_quantize_b_c
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_armv6(short *input, short *output, int pitch);
+#define vp8_short_fdct4x4 vp8_short_fdct4x4_armv6
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_armv6(short *input, short *output, int pitch);
+#define vp8_short_fdct8x4 vp8_short_fdct8x4_armv6
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_v6_dual(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+#define vp8_short_idct4x4llm vp8_short_idct4x4llm_v6_dual
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+void vp8_short_inv_walsh4x4_v6(short *input, short *output);
+#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_v6
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_armv6(short *input, short *output, int pitch);
+#define vp8_short_walsh4x4 vp8_short_walsh4x4_armv6
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict16x16 vp8_sixtap_predict16x16_armv6
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict4x4 vp8_sixtap_predict4x4_armv6
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x4 vp8_sixtap_predict8x4_armv6
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_armv6(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x8 vp8_sixtap_predict8x8_armv6
+
+void vp8_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm/vp9_rtcd.h b/third_party/libvpx_new/source/config/linux/arm/vp9_rtcd.h
new file mode 100644
index 0000000..7b46d9e
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm/vp9_rtcd.h
@@ -0,0 +1,147 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+#define vp9_avg_4x4 vp9_avg_4x4_c
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+#define vp9_avg_8x8 vp9_avg_8x8_c
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+#define vp9_block_error vp9_block_error_c
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+#define vp9_block_error_fp vp9_block_error_fp_c
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+#define vp9_denoiser_filter vp9_denoiser_filter_c
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_fdct8x8_quant vp9_fdct8x8_quant_c
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_c
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_c
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_c
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_c
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_c
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+#define vp9_full_search_sad vp9_full_search_sad_c
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_c
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_16x16 vp9_hadamard_16x16_c
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_8x8 vp9_hadamard_8x8_c
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_c
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht4x4_16_add vp9_iht4x4_16_add_c
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht8x8_64_add vp9_iht8x8_64_add_c
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+#define vp9_int_pro_col vp9_int_pro_col_c
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+#define vp9_int_pro_row vp9_int_pro_row_c
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_c
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_down vp9_mbpost_proc_down_c
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vp9_minmax_8x8 vp9_minmax_8x8_c
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+#define vp9_plane_add_noise vp9_plane_add_noise_c
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+#define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_c
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp vp9_quantize_fp_c
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+#define vp9_satd vp9_satd_c
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+#define vp9_temporal_filter_apply vp9_temporal_filter_apply_c
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+#define vp9_vector_var vp9_vector_var_c
+
+void vp9_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm/vpx_config.asm b/third_party/libvpx_new/source/config/linux/arm/vpx_config.asm
new file mode 100644
index 0000000..67c1aa9
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm/vpx_config.asm
@@ -0,0 +1,91 @@
+@ This file was created from a .asm file
+@ using the ads2gas.pl script.
+ .equ DO1STROUNDING, 0
+.equ ARCH_ARM , 1
+.equ ARCH_MIPS , 0
+.equ ARCH_X86 , 0
+.equ ARCH_X86_64 , 0
+.equ HAVE_EDSP , 0
+.equ HAVE_MEDIA , 1
+.equ HAVE_NEON , 0
+.equ HAVE_NEON_ASM , 0
+.equ HAVE_MIPS32 , 0
+.equ HAVE_DSPR2 , 0
+.equ HAVE_MSA , 0
+.equ HAVE_MIPS64 , 0
+.equ HAVE_MMX , 0
+.equ HAVE_SSE , 0
+.equ HAVE_SSE2 , 0
+.equ HAVE_SSE3 , 0
+.equ HAVE_SSSE3 , 0
+.equ HAVE_SSE4_1 , 0
+.equ HAVE_AVX , 0
+.equ HAVE_AVX2 , 0
+.equ HAVE_VPX_PORTS , 1
+.equ HAVE_STDINT_H , 1
+.equ HAVE_PTHREAD_H , 1
+.equ HAVE_SYS_MMAN_H , 1
+.equ HAVE_UNISTD_H , 0
+.equ CONFIG_DEPENDENCY_TRACKING , 1
+.equ CONFIG_EXTERNAL_BUILD , 1
+.equ CONFIG_INSTALL_DOCS , 0
+.equ CONFIG_INSTALL_BINS , 0
+.equ CONFIG_INSTALL_LIBS , 0
+.equ CONFIG_INSTALL_SRCS , 0
+.equ CONFIG_USE_X86INC , 0
+.equ CONFIG_DEBUG , 0
+.equ CONFIG_GPROF , 0
+.equ CONFIG_GCOV , 0
+.equ CONFIG_RVCT , 0
+.equ CONFIG_GCC , 1
+.equ CONFIG_MSVS , 0
+.equ CONFIG_PIC , 1
+.equ CONFIG_BIG_ENDIAN , 0
+.equ CONFIG_CODEC_SRCS , 0
+.equ CONFIG_DEBUG_LIBS , 0
+.equ CONFIG_DEQUANT_TOKENS , 0
+.equ CONFIG_DC_RECON , 0
+.equ CONFIG_RUNTIME_CPU_DETECT , 0
+.equ CONFIG_POSTPROC , 1
+.equ CONFIG_VP9_POSTPROC , 1
+.equ CONFIG_MULTITHREAD , 1
+.equ CONFIG_INTERNAL_STATS , 0
+.equ CONFIG_VP8_ENCODER , 1
+.equ CONFIG_VP8_DECODER , 1
+.equ CONFIG_VP9_ENCODER , 1
+.equ CONFIG_VP9_DECODER , 1
+.equ CONFIG_VP10_ENCODER , 0
+.equ CONFIG_VP10_DECODER , 0
+.equ CONFIG_VP8 , 1
+.equ CONFIG_VP9 , 1
+.equ CONFIG_VP10 , 0
+.equ CONFIG_ENCODERS , 1
+.equ CONFIG_DECODERS , 1
+.equ CONFIG_STATIC_MSVCRT , 0
+.equ CONFIG_SPATIAL_RESAMPLING , 1
+.equ CONFIG_REALTIME_ONLY , 1
+.equ CONFIG_ONTHEFLY_BITPACKING , 0
+.equ CONFIG_ERROR_CONCEALMENT , 0
+.equ CONFIG_SHARED , 0
+.equ CONFIG_STATIC , 1
+.equ CONFIG_SMALL , 0
+.equ CONFIG_POSTPROC_VISUALIZER , 0
+.equ CONFIG_OS_SUPPORT , 1
+.equ CONFIG_UNIT_TESTS , 0
+.equ CONFIG_WEBM_IO , 1
+.equ CONFIG_LIBYUV , 1
+.equ CONFIG_DECODE_PERF_TESTS , 0
+.equ CONFIG_ENCODE_PERF_TESTS , 0
+.equ CONFIG_MULTI_RES_ENCODING , 1
+.equ CONFIG_TEMPORAL_DENOISING , 1
+.equ CONFIG_VP9_TEMPORAL_DENOISING , 1
+.equ CONFIG_COEFFICIENT_RANGE_CHECKING , 0
+.equ CONFIG_VP9_HIGHBITDEPTH , 0
+.equ CONFIG_EXPERIMENTAL , 0
+.equ CONFIG_SIZE_LIMIT , 1
+.equ CONFIG_SPATIAL_SVC , 0
+.equ CONFIG_FP_MB_STATS , 0
+.equ CONFIG_EMULATE_HARDWARE , 0
+.equ DECODE_WIDTH_LIMIT , 16384
+.equ DECODE_HEIGHT_LIMIT , 16384
+ .section .note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx_new/source/config/linux/arm/vpx_config.c b/third_party/libvpx_new/source/config/linux/arm/vpx_config.c
new file mode 100644
index 0000000..0b06ef9
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=armv6-linux-gcc --enable-pic --enable-realtime-only --disable-install-bins --disable-install-libs --disable-edsp --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/linux/arm/vpx_config.h b/third_party/libvpx_new/source/config/linux/arm/vpx_config.h
new file mode 100644
index 0000000..849f8ee
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 1
+#define ARCH_MIPS 0
+#define ARCH_X86 0
+#define ARCH_X86_64 0
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 1
+#define HAVE_NEON 0
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 0
+#define HAVE_SSE 0
+#define HAVE_SSE2 0
+#define HAVE_SSE3 0
+#define HAVE_SSSE3 0
+#define HAVE_SSE4_1 0
+#define HAVE_AVX 0
+#define HAVE_AVX2 0
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 0
+#define CONFIG_INSTALL_LIBS 0
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 0
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 0
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/linux/arm/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/linux/arm/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..bb570a0
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm/vpx_dsp_rtcd.h
@@ -0,0 +1,674 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8 vpx_convolve8_c
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg vpx_convolve8_avg_c
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_horiz vpx_convolve8_avg_horiz_c
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_vert vpx_convolve8_avg_vert_c
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_horiz vpx_convolve8_horiz_c
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_vert vpx_convolve8_vert_c
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_avg vpx_convolve_avg_c
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_copy vpx_convolve_copy_c
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_16x16 vpx_d153_predictor_16x16_c
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_32x32 vpx_d153_predictor_32x32_c
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_4x4 vpx_d153_predictor_4x4_c
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_8x8 vpx_d153_predictor_8x8_c
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_16x16 vpx_d207_predictor_16x16_c
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_32x32 vpx_d207_predictor_32x32_c
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_4x4 vpx_d207_predictor_4x4_c
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_8x8 vpx_d207_predictor_8x8_c
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_16x16 vpx_d45_predictor_16x16_c
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_32x32 vpx_d45_predictor_32x32_c
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_4x4 vpx_d45_predictor_4x4_c
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_8x8 vpx_d45_predictor_8x8_c
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_16x16 vpx_d63_predictor_16x16_c
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_32x32 vpx_d63_predictor_32x32_c
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_4x4 vpx_d63_predictor_4x4_c
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_8x8 vpx_d63_predictor_8x8_c
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_c
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_c
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_c
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_c
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_c
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_c
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_c
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_c
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_c
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_c
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_c
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_c
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_c
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_c
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_c
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_c
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_c
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_c
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32 vpx_fdct32x32_c
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_c
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_rd vpx_fdct32x32_rd_c
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_c
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_c
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8 vpx_fdct8x8_c
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8_1 vpx_fdct8x8_1_c
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get16x16var vpx_get16x16var_c
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get8x8var vpx_get8x8var_c
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_c
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_16x16 vpx_h_predictor_16x16_c
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_32x32 vpx_h_predictor_32x32_c
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_4x4 vpx_h_predictor_4x4_c
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_8x8 vpx_h_predictor_8x8_c
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_10_add vpx_idct16x16_10_add_c
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_1_add vpx_idct16x16_1_add_c
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_256_add vpx_idct16x16_256_add_c
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_c
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1_add vpx_idct32x32_1_add_c
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_34_add vpx_idct32x32_34_add_c
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_16_add vpx_idct4x4_16_add_c
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_1_add vpx_idct4x4_1_add_c
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_12_add vpx_idct8x8_12_add_c
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_1_add vpx_idct8x8_1_add_c
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_64_add vpx_idct8x8_64_add_c
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_c
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_16 vpx_lpf_horizontal_16_c
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_c
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_c
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_c
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_c
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16 vpx_lpf_vertical_16_c
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_c
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_4 vpx_lpf_vertical_4_c
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_c
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_8 vpx_lpf_vertical_8_c
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_c
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_media(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x16 vpx_mse16x16_media
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x8 vpx_mse16x8_c
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_c
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_c
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b vpx_quantize_b_c
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_media(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x16 vpx_sad16x16_media
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_c
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x3 vpx_sad16x16x3_c
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x4d vpx_sad16x16x4d_c
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x8 vpx_sad16x16x8_c
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_c
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_c
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_c
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x8 vpx_sad16x8_c
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_c
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x3 vpx_sad16x8x3_c
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_c
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x8 vpx_sad16x8x8_c
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x16 vpx_sad32x16_c
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x16_avg vpx_sad32x16_avg_c
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_c
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x32 vpx_sad32x32_c
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x32_avg vpx_sad32x32_avg_c
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x4d vpx_sad32x32x4d_c
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x64 vpx_sad32x64_c
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x64_avg vpx_sad32x64_avg_c
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_c
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x4 vpx_sad4x4_c
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_c
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x3 vpx_sad4x4x3_c
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_c
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x8 vpx_sad4x4x8_c
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_c
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_c
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_c
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x32 vpx_sad64x32_c
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x32_avg vpx_sad64x32_avg_c
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_c
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x64 vpx_sad64x64_c
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x64_avg vpx_sad64x64_avg_c
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x4d vpx_sad64x64x4d_c
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x16 vpx_sad8x16_c
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_c
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x3 vpx_sad8x16x3_c
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_c
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x8 vpx_sad8x16x8_c
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_c
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_c
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_c
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x8 vpx_sad8x8_c
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_c
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x3 vpx_sad8x8x3_c
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_c
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x8 vpx_sad8x8x8_c
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_2d vpx_scaled_2d_c
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x16 vpx_sub_pixel_avg_variance16x16_c
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x32 vpx_sub_pixel_avg_variance16x32_c
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x8 vpx_sub_pixel_avg_variance16x8_c
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x16 vpx_sub_pixel_avg_variance32x16_c
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x32 vpx_sub_pixel_avg_variance32x32_c
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x64 vpx_sub_pixel_avg_variance32x64_c
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x4 vpx_sub_pixel_avg_variance4x4_c
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x8 vpx_sub_pixel_avg_variance4x8_c
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x32 vpx_sub_pixel_avg_variance64x32_c
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x64 vpx_sub_pixel_avg_variance64x64_c
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x16 vpx_sub_pixel_avg_variance8x16_c
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x4 vpx_sub_pixel_avg_variance8x4_c
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x8 vpx_sub_pixel_avg_variance8x8_c
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_media(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x16 vpx_sub_pixel_variance16x16_media
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x32 vpx_sub_pixel_variance16x32_c
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x8 vpx_sub_pixel_variance16x8_c
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x16 vpx_sub_pixel_variance32x16_c
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x32 vpx_sub_pixel_variance32x32_c
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x64 vpx_sub_pixel_variance32x64_c
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x4 vpx_sub_pixel_variance4x4_c
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x8 vpx_sub_pixel_variance4x8_c
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x32 vpx_sub_pixel_variance64x32_c
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x64 vpx_sub_pixel_variance64x64_c
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x16 vpx_sub_pixel_variance8x16_c
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x4 vpx_sub_pixel_variance8x4_c
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_media(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x8 vpx_sub_pixel_variance8x8_media
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+#define vpx_subtract_block vpx_subtract_block_c
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_c
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_c
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_c
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_c
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_16x16 vpx_v_predictor_16x16_c
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_32x32 vpx_v_predictor_32x32_c
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_4x4 vpx_v_predictor_4x4_c
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_8x8 vpx_v_predictor_8x8_c
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_media(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x16 vpx_variance16x16_media
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x32 vpx_variance16x32_c
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x8 vpx_variance16x8_c
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x16 vpx_variance32x16_c
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x32 vpx_variance32x32_c
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x64 vpx_variance32x64_c
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_c
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_c
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x32 vpx_variance64x32_c
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x64 vpx_variance64x64_c
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x16 vpx_variance8x16_c
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_c
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_media(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x8 vpx_variance8x8_media
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_media(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_h vpx_variance_halfpixvar16x16_h_media
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_media(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_hv vpx_variance_halfpixvar16x16_hv_media
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_media(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_v vpx_variance_halfpixvar16x16_v_media
+
+void vpx_dsp_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/linux/arm/vpx_scale_rtcd.h
new file mode 100644
index 0000000..a1564b7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm/vpx_scale_rtcd.h
@@ -0,0 +1,71 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm64/vp8_rtcd.h b/third_party/libvpx_new/source/config/linux/arm64/vp8_rtcd.h
new file mode 100644
index 0000000..74456fe
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm64/vp8_rtcd.h
@@ -0,0 +1,242 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict16x16 vp8_bilinear_predict16x16_neon
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_c
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_neon
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x8 vp8_bilinear_predict8x8_neon
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_c
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_neon(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+#define vp8_build_intra_predictors_mbuv_s vp8_build_intra_predictors_mbuv_s_neon
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_neon(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+#define vp8_build_intra_predictors_mby_s vp8_build_intra_predictors_mby_s_neon
+
+void vp8_clear_system_state_c();
+#define vp8_clear_system_state vp8_clear_system_state_c
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_neon(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem16x16 vp8_copy_mem16x16_neon
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_neon(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x4 vp8_copy_mem8x4_neon
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_neon(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x8 vp8_copy_mem8x8_neon
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_neon(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+#define vp8_dc_only_idct_add vp8_dc_only_idct_add_neon
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_neon(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter vp8_denoiser_filter_neon
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_uv_neon(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_neon
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_neon(short *input, short *dq, unsigned char *output, int stride);
+#define vp8_dequant_idct_add vp8_dequant_idct_add_neon
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_neon(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_neon
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_neon(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_neon
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+void vp8_dequantize_b_neon(struct blockd*, short *dqc);
+#define vp8_dequantize_b vp8_dequantize_b_neon
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_diamond_search_sad vp8_diamond_search_sad_c
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+void vp8_fast_quantize_b_neon(struct block *, struct blockd *);
+#define vp8_fast_quantize_b vp8_fast_quantize_b_neon
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_c
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_c
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_full_search_sad vp8_full_search_sad_c
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_c
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bh vp8_loop_filter_bh_neon
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bv vp8_loop_filter_bv_neon
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbh vp8_loop_filter_mbh_neon
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_neon(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbv vp8_loop_filter_mbv_neon
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_neon
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_neon
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_mbhs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbh vp8_loop_filter_mbhs_neon
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_mbvs_neon(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbv vp8_loop_filter_mbvs_neon
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_c
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_c
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_down vp8_mbpost_proc_down_c
+
+int vp8_mbuverror_c(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_c
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+#define vp8_plane_add_noise vp8_plane_add_noise_c
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_c
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_refining_search_sad vp8_refining_search_sad_c
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+#define vp8_regular_quantize_b vp8_regular_quantize_b_c
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_neon(short *input, short *output, int pitch);
+#define vp8_short_fdct4x4 vp8_short_fdct4x4_neon
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_neon(short *input, short *output, int pitch);
+#define vp8_short_fdct8x4 vp8_short_fdct8x4_neon
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_neon(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+#define vp8_short_idct4x4llm vp8_short_idct4x4llm_neon
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+void vp8_short_inv_walsh4x4_neon(short *input, short *output);
+#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_neon
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_neon(short *input, short *output, int pitch);
+#define vp8_short_walsh4x4 vp8_short_walsh4x4_neon
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict16x16 vp8_sixtap_predict16x16_neon
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict4x4 vp8_sixtap_predict4x4_c
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x4 vp8_sixtap_predict8x4_neon
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_neon(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x8 vp8_sixtap_predict8x8_neon
+
+void vp8_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm64/vp9_rtcd.h b/third_party/libvpx_new/source/config/linux/arm64/vp9_rtcd.h
new file mode 100644
index 0000000..b8f6906
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm64/vp9_rtcd.h
@@ -0,0 +1,156 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+#define vp9_avg_4x4 vp9_avg_4x4_c
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+unsigned int vp9_avg_8x8_neon(const uint8_t *, int p);
+#define vp9_avg_8x8 vp9_avg_8x8_neon
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+#define vp9_block_error vp9_block_error_c
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+int64_t vp9_block_error_fp_neon(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+#define vp9_block_error_fp vp9_block_error_fp_neon
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+#define vp9_denoiser_filter vp9_denoiser_filter_c
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_neon(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_fdct8x8_quant vp9_fdct8x8_quant_neon
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_c
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_c
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_c
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_c
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_c
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+#define vp9_full_search_sad vp9_full_search_sad_c
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_c
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_16x16 vp9_hadamard_16x16_c
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_8x8 vp9_hadamard_8x8_c
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_c
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht4x4_16_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht4x4_16_add vp9_iht4x4_16_add_neon
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht8x8_64_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht8x8_64_add vp9_iht8x8_64_add_neon
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+int16_t vp9_int_pro_col_neon(uint8_t const *ref, const int width);
+#define vp9_int_pro_col vp9_int_pro_col_neon
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+void vp9_int_pro_row_neon(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+#define vp9_int_pro_row vp9_int_pro_row_neon
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_c
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_down vp9_mbpost_proc_down_c
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vp9_minmax_8x8 vp9_minmax_8x8_c
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+#define vp9_plane_add_noise vp9_plane_add_noise_c
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+#define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_c
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_neon(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp vp9_quantize_fp_neon
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+#define vp9_satd vp9_satd_c
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+#define vp9_temporal_filter_apply vp9_temporal_filter_apply_c
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+int vp9_vector_var_neon(int16_t const *ref, int16_t const *src, const int bwl);
+#define vp9_vector_var vp9_vector_var_neon
+
+void vp9_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm64/vpx_config.asm b/third_party/libvpx_new/source/config/linux/arm64/vpx_config.asm
new file mode 100644
index 0000000..2504a60
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm64/vpx_config.asm
@@ -0,0 +1,91 @@
+@ This file was created from a .asm file
+@ using the ads2gas.pl script.
+ .equ DO1STROUNDING, 0
+.equ ARCH_ARM , 1
+.equ ARCH_MIPS , 0
+.equ ARCH_X86 , 0
+.equ ARCH_X86_64 , 0
+.equ HAVE_EDSP , 0
+.equ HAVE_MEDIA , 0
+.equ HAVE_NEON , 1
+.equ HAVE_NEON_ASM , 0
+.equ HAVE_MIPS32 , 0
+.equ HAVE_DSPR2 , 0
+.equ HAVE_MSA , 0
+.equ HAVE_MIPS64 , 0
+.equ HAVE_MMX , 0
+.equ HAVE_SSE , 0
+.equ HAVE_SSE2 , 0
+.equ HAVE_SSE3 , 0
+.equ HAVE_SSSE3 , 0
+.equ HAVE_SSE4_1 , 0
+.equ HAVE_AVX , 0
+.equ HAVE_AVX2 , 0
+.equ HAVE_VPX_PORTS , 1
+.equ HAVE_STDINT_H , 1
+.equ HAVE_PTHREAD_H , 1
+.equ HAVE_SYS_MMAN_H , 1
+.equ HAVE_UNISTD_H , 0
+.equ CONFIG_DEPENDENCY_TRACKING , 1
+.equ CONFIG_EXTERNAL_BUILD , 1
+.equ CONFIG_INSTALL_DOCS , 0
+.equ CONFIG_INSTALL_BINS , 1
+.equ CONFIG_INSTALL_LIBS , 1
+.equ CONFIG_INSTALL_SRCS , 0
+.equ CONFIG_USE_X86INC , 0
+.equ CONFIG_DEBUG , 0
+.equ CONFIG_GPROF , 0
+.equ CONFIG_GCOV , 0
+.equ CONFIG_RVCT , 0
+.equ CONFIG_GCC , 1
+.equ CONFIG_MSVS , 0
+.equ CONFIG_PIC , 1
+.equ CONFIG_BIG_ENDIAN , 0
+.equ CONFIG_CODEC_SRCS , 0
+.equ CONFIG_DEBUG_LIBS , 0
+.equ CONFIG_DEQUANT_TOKENS , 0
+.equ CONFIG_DC_RECON , 0
+.equ CONFIG_RUNTIME_CPU_DETECT , 0
+.equ CONFIG_POSTPROC , 1
+.equ CONFIG_VP9_POSTPROC , 1
+.equ CONFIG_MULTITHREAD , 1
+.equ CONFIG_INTERNAL_STATS , 0
+.equ CONFIG_VP8_ENCODER , 1
+.equ CONFIG_VP8_DECODER , 1
+.equ CONFIG_VP9_ENCODER , 1
+.equ CONFIG_VP9_DECODER , 1
+.equ CONFIG_VP10_ENCODER , 0
+.equ CONFIG_VP10_DECODER , 0
+.equ CONFIG_VP8 , 1
+.equ CONFIG_VP9 , 1
+.equ CONFIG_VP10 , 0
+.equ CONFIG_ENCODERS , 1
+.equ CONFIG_DECODERS , 1
+.equ CONFIG_STATIC_MSVCRT , 0
+.equ CONFIG_SPATIAL_RESAMPLING , 1
+.equ CONFIG_REALTIME_ONLY , 1
+.equ CONFIG_ONTHEFLY_BITPACKING , 0
+.equ CONFIG_ERROR_CONCEALMENT , 0
+.equ CONFIG_SHARED , 0
+.equ CONFIG_STATIC , 1
+.equ CONFIG_SMALL , 0
+.equ CONFIG_POSTPROC_VISUALIZER , 0
+.equ CONFIG_OS_SUPPORT , 1
+.equ CONFIG_UNIT_TESTS , 0
+.equ CONFIG_WEBM_IO , 1
+.equ CONFIG_LIBYUV , 1
+.equ CONFIG_DECODE_PERF_TESTS , 0
+.equ CONFIG_ENCODE_PERF_TESTS , 0
+.equ CONFIG_MULTI_RES_ENCODING , 1
+.equ CONFIG_TEMPORAL_DENOISING , 1
+.equ CONFIG_VP9_TEMPORAL_DENOISING , 1
+.equ CONFIG_COEFFICIENT_RANGE_CHECKING , 0
+.equ CONFIG_VP9_HIGHBITDEPTH , 0
+.equ CONFIG_EXPERIMENTAL , 0
+.equ CONFIG_SIZE_LIMIT , 1
+.equ CONFIG_SPATIAL_SVC , 0
+.equ CONFIG_FP_MB_STATS , 0
+.equ CONFIG_EMULATE_HARDWARE , 0
+.equ DECODE_WIDTH_LIMIT , 16384
+.equ DECODE_HEIGHT_LIMIT , 16384
+ .section .note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx_new/source/config/linux/arm64/vpx_config.c b/third_party/libvpx_new/source/config/linux/arm64/vpx_config.c
new file mode 100644
index 0000000..6674d94
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm64/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--force-target=armv8-linux-gcc --enable-pic --enable-realtime-only --disable-edsp --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/linux/arm64/vpx_config.h b/third_party/libvpx_new/source/config/linux/arm64/vpx_config.h
new file mode 100644
index 0000000..317cd03
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm64/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 1
+#define ARCH_MIPS 0
+#define ARCH_X86 0
+#define ARCH_X86_64 0
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 0
+#define HAVE_NEON 1
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 0
+#define HAVE_SSE 0
+#define HAVE_SSE2 0
+#define HAVE_SSE3 0
+#define HAVE_SSSE3 0
+#define HAVE_SSE4_1 0
+#define HAVE_AVX 0
+#define HAVE_AVX2 0
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 0
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 0
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/linux/arm64/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/linux/arm64/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..2cac9e6
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm64/vpx_dsp_rtcd.h
@@ -0,0 +1,750 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8 vpx_convolve8_neon
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg vpx_convolve8_avg_neon
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_horiz vpx_convolve8_avg_horiz_neon
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_vert vpx_convolve8_avg_vert_neon
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_horiz vpx_convolve8_horiz_neon
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_vert vpx_convolve8_vert_neon
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_avg_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_avg vpx_convolve_avg_neon
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_copy_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_copy vpx_convolve_copy_neon
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d135_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_neon
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_16x16 vpx_d153_predictor_16x16_c
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_32x32 vpx_d153_predictor_32x32_c
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_4x4 vpx_d153_predictor_4x4_c
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_8x8 vpx_d153_predictor_8x8_c
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_16x16 vpx_d207_predictor_16x16_c
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_32x32 vpx_d207_predictor_32x32_c
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_4x4 vpx_d207_predictor_4x4_c
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_8x8 vpx_d207_predictor_8x8_c
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_16x16 vpx_d45_predictor_16x16_neon
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_32x32 vpx_d45_predictor_32x32_c
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_4x4 vpx_d45_predictor_4x4_neon
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_8x8 vpx_d45_predictor_8x8_neon
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_16x16 vpx_d63_predictor_16x16_c
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_32x32 vpx_d63_predictor_32x32_c
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_4x4 vpx_d63_predictor_4x4_c
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_8x8 vpx_d63_predictor_8x8_c
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_neon
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_neon
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_neon
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_neon
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_neon
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_neon
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_neon
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_neon
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_neon
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_neon
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_neon
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_neon
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_neon
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_neon
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_neon
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_neon
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_c
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_c
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32 vpx_fdct32x32_c
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_c
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_rd vpx_fdct32x32_rd_c
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_c
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_c
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_neon(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8 vpx_fdct8x8_neon
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_1_neon(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8_1 vpx_fdct8x8_1_neon
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get16x16var vpx_get16x16var_neon
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+unsigned int vpx_get4x4sse_cs_neon(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_neon
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get8x8var vpx_get8x8var_neon
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_c
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_16x16 vpx_h_predictor_16x16_neon
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_32x32 vpx_h_predictor_32x32_neon
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_4x4 vpx_h_predictor_4x4_neon
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_8x8 vpx_h_predictor_8x8_neon
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_10_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_10_add vpx_idct16x16_10_add_neon
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_1_add vpx_idct16x16_1_add_neon
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_256_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_256_add vpx_idct16x16_256_add_neon
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1024_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_neon
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1_add vpx_idct32x32_1_add_neon
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_34_add vpx_idct32x32_34_add_c
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_16_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_16_add vpx_idct4x4_16_add_neon
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_1_add vpx_idct4x4_1_add_neon
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_12_add vpx_idct8x8_12_add_neon
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_1_add vpx_idct8x8_1_add_neon
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_neon(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_64_add vpx_idct8x8_64_add_neon
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_c
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_16 vpx_lpf_horizontal_16_c
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_4_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_neon
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_4_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_neon
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_8_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_neon
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_c
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16 vpx_lpf_vertical_16_c
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_c
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_4_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_4 vpx_lpf_vertical_4_neon
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_4_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_neon
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_8_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_8 vpx_lpf_vertical_8_neon
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_c
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x16 vpx_mse16x16_neon
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x8 vpx_mse16x8_c
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_c
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_c
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b vpx_quantize_b_c
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x16 vpx_sad16x16_neon
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_c
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x3 vpx_sad16x16x3_c
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x4d_neon(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x4d vpx_sad16x16x4d_neon
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x8 vpx_sad16x16x8_c
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_c
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_c
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_c
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x8 vpx_sad16x8_neon
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_c
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x3 vpx_sad16x8x3_c
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_c
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x8 vpx_sad16x8x8_c
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x16 vpx_sad32x16_c
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x16_avg vpx_sad32x16_avg_c
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_c
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x32 vpx_sad32x32_neon
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x32_avg vpx_sad32x32_avg_c
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_neon(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x4d vpx_sad32x32x4d_neon
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x64 vpx_sad32x64_c
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x64_avg vpx_sad32x64_avg_c
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_c
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x4 vpx_sad4x4_neon
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_c
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x3 vpx_sad4x4x3_c
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_c
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x8 vpx_sad4x4x8_c
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_c
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_c
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_c
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x32 vpx_sad64x32_c
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x32_avg vpx_sad64x32_avg_c
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_c
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x64 vpx_sad64x64_neon
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x64_avg vpx_sad64x64_avg_c
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_neon(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x4d vpx_sad64x64x4d_neon
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x16 vpx_sad8x16_neon
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_c
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x3 vpx_sad8x16x3_c
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_c
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x8 vpx_sad8x16x8_c
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_c
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_c
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_c
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_neon(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x8 vpx_sad8x8_neon
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_c
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x3 vpx_sad8x8x3_c
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_c
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x8 vpx_sad8x8x8_c
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_2d vpx_scaled_2d_c
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x16 vpx_sub_pixel_avg_variance16x16_c
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x32 vpx_sub_pixel_avg_variance16x32_c
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x8 vpx_sub_pixel_avg_variance16x8_c
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x16 vpx_sub_pixel_avg_variance32x16_c
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x32 vpx_sub_pixel_avg_variance32x32_c
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x64 vpx_sub_pixel_avg_variance32x64_c
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x4 vpx_sub_pixel_avg_variance4x4_c
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x8 vpx_sub_pixel_avg_variance4x8_c
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x32 vpx_sub_pixel_avg_variance64x32_c
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x64 vpx_sub_pixel_avg_variance64x64_c
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x16 vpx_sub_pixel_avg_variance8x16_c
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x4 vpx_sub_pixel_avg_variance8x4_c
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x8 vpx_sub_pixel_avg_variance8x8_c
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x16 vpx_sub_pixel_variance16x16_neon
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x32 vpx_sub_pixel_variance16x32_c
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x8 vpx_sub_pixel_variance16x8_c
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x16 vpx_sub_pixel_variance32x16_c
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x32 vpx_sub_pixel_variance32x32_neon
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x64 vpx_sub_pixel_variance32x64_c
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x4 vpx_sub_pixel_variance4x4_c
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x8 vpx_sub_pixel_variance4x8_c
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x32 vpx_sub_pixel_variance64x32_c
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x64 vpx_sub_pixel_variance64x64_neon
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x16 vpx_sub_pixel_variance8x16_c
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x4 vpx_sub_pixel_variance8x4_c
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x8 vpx_sub_pixel_variance8x8_neon
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+void vpx_subtract_block_neon(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+#define vpx_subtract_block vpx_subtract_block_neon
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_neon
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_neon
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_neon
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_neon
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_16x16_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_16x16 vpx_v_predictor_16x16_neon
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_32x32_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_32x32 vpx_v_predictor_32x32_neon
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_4x4 vpx_v_predictor_4x4_neon
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_8x8 vpx_v_predictor_8x8_neon
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x16 vpx_variance16x16_neon
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x32 vpx_variance16x32_c
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x8 vpx_variance16x8_neon
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x16 vpx_variance32x16_c
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x32 vpx_variance32x32_neon
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x64_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x64 vpx_variance32x64_neon
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_c
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_c
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x32 vpx_variance64x32_neon
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x64 vpx_variance64x64_neon
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x16 vpx_variance8x16_neon
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_c
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x8 vpx_variance8x8_neon
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_h vpx_variance_halfpixvar16x16_h_c
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_hv vpx_variance_halfpixvar16x16_hv_c
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_v vpx_variance_halfpixvar16x16_v_c
+
+void vpx_dsp_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/arm64/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/linux/arm64/vpx_scale_rtcd.h
new file mode 100644
index 0000000..a1564b7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/arm64/vpx_scale_rtcd.h
@@ -0,0 +1,71 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+#include "vpx_ports/arm.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = arm_cpu_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/generic/vp8_rtcd.h b/third_party/libvpx_new/source/config/linux/generic/vp8_rtcd.h
new file mode 100644
index 0000000..dc2834b
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/generic/vp8_rtcd.h
@@ -0,0 +1,205 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict16x16 vp8_bilinear_predict16x16_c
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_c
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_c
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x8 vp8_bilinear_predict8x8_c
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_c
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+#define vp8_build_intra_predictors_mbuv_s vp8_build_intra_predictors_mbuv_s_c
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+#define vp8_build_intra_predictors_mby_s vp8_build_intra_predictors_mby_s_c
+
+void vp8_clear_system_state_c();
+#define vp8_clear_system_state vp8_clear_system_state_c
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem16x16 vp8_copy_mem16x16_c
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x4 vp8_copy_mem8x4_c
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x8 vp8_copy_mem8x8_c
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+#define vp8_dc_only_idct_add vp8_dc_only_idct_add_c
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter vp8_denoiser_filter_c
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_c
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+#define vp8_dequant_idct_add vp8_dequant_idct_add_c
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_c
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_c
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+#define vp8_dequantize_b vp8_dequantize_b_c
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_diamond_search_sad vp8_diamond_search_sad_c
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+#define vp8_fast_quantize_b vp8_fast_quantize_b_c
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_c
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_c
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_full_search_sad vp8_full_search_sad_c
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_c
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bh vp8_loop_filter_bh_c
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bv vp8_loop_filter_bv_c
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbh vp8_loop_filter_mbh_c
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbv vp8_loop_filter_mbv_c
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_c
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_c
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbh vp8_loop_filter_simple_horizontal_edge_c
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbv vp8_loop_filter_simple_vertical_edge_c
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_c
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_c
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_down vp8_mbpost_proc_down_c
+
+int vp8_mbuverror_c(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_c
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+#define vp8_plane_add_noise vp8_plane_add_noise_c
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_c
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_refining_search_sad vp8_refining_search_sad_c
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+#define vp8_regular_quantize_b vp8_regular_quantize_b_c
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+#define vp8_short_fdct4x4 vp8_short_fdct4x4_c
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+#define vp8_short_fdct8x4 vp8_short_fdct8x4_c
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+#define vp8_short_idct4x4llm vp8_short_idct4x4llm_c
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_c
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+#define vp8_short_walsh4x4 vp8_short_walsh4x4_c
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict16x16 vp8_sixtap_predict16x16_c
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict4x4 vp8_sixtap_predict4x4_c
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x4 vp8_sixtap_predict8x4_c
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x8 vp8_sixtap_predict8x8_c
+
+void vp8_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/generic/vp9_rtcd.h b/third_party/libvpx_new/source/config/linux/generic/vp9_rtcd.h
new file mode 100644
index 0000000..b50359b
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/generic/vp9_rtcd.h
@@ -0,0 +1,142 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+#define vp9_avg_4x4 vp9_avg_4x4_c
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+#define vp9_avg_8x8 vp9_avg_8x8_c
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+#define vp9_block_error vp9_block_error_c
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+#define vp9_block_error_fp vp9_block_error_fp_c
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+#define vp9_denoiser_filter vp9_denoiser_filter_c
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_fdct8x8_quant vp9_fdct8x8_quant_c
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_c
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_c
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_c
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_c
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_c
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+#define vp9_full_search_sad vp9_full_search_sad_c
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_c
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_16x16 vp9_hadamard_16x16_c
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_8x8 vp9_hadamard_8x8_c
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_c
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht4x4_16_add vp9_iht4x4_16_add_c
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht8x8_64_add vp9_iht8x8_64_add_c
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+#define vp9_int_pro_col vp9_int_pro_col_c
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+#define vp9_int_pro_row vp9_int_pro_row_c
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_c
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_down vp9_mbpost_proc_down_c
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vp9_minmax_8x8 vp9_minmax_8x8_c
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+#define vp9_plane_add_noise vp9_plane_add_noise_c
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+#define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_c
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp vp9_quantize_fp_c
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+#define vp9_satd vp9_satd_c
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+#define vp9_temporal_filter_apply vp9_temporal_filter_apply_c
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+#define vp9_vector_var vp9_vector_var_c
+
+void vp9_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/generic/vpx_config.asm b/third_party/libvpx_new/source/config/linux/generic/vpx_config.asm
new file mode 100644
index 0000000..fe14db8
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/generic/vpx_config.asm
@@ -0,0 +1,91 @@
+@ This file was created from a .asm file
+@ using the ads2gas.pl script.
+ .equ DO1STROUNDING, 0
+.equ ARCH_ARM , 0
+.equ ARCH_MIPS , 0
+.equ ARCH_X86 , 0
+.equ ARCH_X86_64 , 0
+.equ HAVE_EDSP , 0
+.equ HAVE_MEDIA , 0
+.equ HAVE_NEON , 0
+.equ HAVE_NEON_ASM , 0
+.equ HAVE_MIPS32 , 0
+.equ HAVE_DSPR2 , 0
+.equ HAVE_MSA , 0
+.equ HAVE_MIPS64 , 0
+.equ HAVE_MMX , 0
+.equ HAVE_SSE , 0
+.equ HAVE_SSE2 , 0
+.equ HAVE_SSE3 , 0
+.equ HAVE_SSSE3 , 0
+.equ HAVE_SSE4_1 , 0
+.equ HAVE_AVX , 0
+.equ HAVE_AVX2 , 0
+.equ HAVE_VPX_PORTS , 1
+.equ HAVE_STDINT_H , 1
+.equ HAVE_PTHREAD_H , 1
+.equ HAVE_SYS_MMAN_H , 1
+.equ HAVE_UNISTD_H , 0
+.equ CONFIG_DEPENDENCY_TRACKING , 1
+.equ CONFIG_EXTERNAL_BUILD , 1
+.equ CONFIG_INSTALL_DOCS , 0
+.equ CONFIG_INSTALL_BINS , 1
+.equ CONFIG_INSTALL_LIBS , 1
+.equ CONFIG_INSTALL_SRCS , 0
+.equ CONFIG_USE_X86INC , 0
+.equ CONFIG_DEBUG , 0
+.equ CONFIG_GPROF , 0
+.equ CONFIG_GCOV , 0
+.equ CONFIG_RVCT , 0
+.equ CONFIG_GCC , 1
+.equ CONFIG_MSVS , 0
+.equ CONFIG_PIC , 1
+.equ CONFIG_BIG_ENDIAN , 0
+.equ CONFIG_CODEC_SRCS , 0
+.equ CONFIG_DEBUG_LIBS , 0
+.equ CONFIG_DEQUANT_TOKENS , 0
+.equ CONFIG_DC_RECON , 0
+.equ CONFIG_RUNTIME_CPU_DETECT , 0
+.equ CONFIG_POSTPROC , 1
+.equ CONFIG_VP9_POSTPROC , 1
+.equ CONFIG_MULTITHREAD , 1
+.equ CONFIG_INTERNAL_STATS , 0
+.equ CONFIG_VP8_ENCODER , 1
+.equ CONFIG_VP8_DECODER , 1
+.equ CONFIG_VP9_ENCODER , 1
+.equ CONFIG_VP9_DECODER , 1
+.equ CONFIG_VP10_ENCODER , 0
+.equ CONFIG_VP10_DECODER , 0
+.equ CONFIG_VP8 , 1
+.equ CONFIG_VP9 , 1
+.equ CONFIG_VP10 , 0
+.equ CONFIG_ENCODERS , 1
+.equ CONFIG_DECODERS , 1
+.equ CONFIG_STATIC_MSVCRT , 0
+.equ CONFIG_SPATIAL_RESAMPLING , 1
+.equ CONFIG_REALTIME_ONLY , 1
+.equ CONFIG_ONTHEFLY_BITPACKING , 0
+.equ CONFIG_ERROR_CONCEALMENT , 0
+.equ CONFIG_SHARED , 0
+.equ CONFIG_STATIC , 1
+.equ CONFIG_SMALL , 0
+.equ CONFIG_POSTPROC_VISUALIZER , 0
+.equ CONFIG_OS_SUPPORT , 1
+.equ CONFIG_UNIT_TESTS , 0
+.equ CONFIG_WEBM_IO , 1
+.equ CONFIG_LIBYUV , 1
+.equ CONFIG_DECODE_PERF_TESTS , 0
+.equ CONFIG_ENCODE_PERF_TESTS , 0
+.equ CONFIG_MULTI_RES_ENCODING , 1
+.equ CONFIG_TEMPORAL_DENOISING , 1
+.equ CONFIG_VP9_TEMPORAL_DENOISING , 1
+.equ CONFIG_COEFFICIENT_RANGE_CHECKING , 0
+.equ CONFIG_VP9_HIGHBITDEPTH , 0
+.equ CONFIG_EXPERIMENTAL , 0
+.equ CONFIG_SIZE_LIMIT , 1
+.equ CONFIG_SPATIAL_SVC , 0
+.equ CONFIG_FP_MB_STATS , 0
+.equ CONFIG_EMULATE_HARDWARE , 0
+.equ DECODE_WIDTH_LIMIT , 16384
+.equ DECODE_HEIGHT_LIMIT , 16384
+ .section .note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx_new/source/config/linux/generic/vpx_config.c b/third_party/libvpx_new/source/config/linux/generic/vpx_config.c
new file mode 100644
index 0000000..2a18a45
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/generic/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=generic-gnu --enable-pic --enable-realtime-only --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/linux/generic/vpx_config.h b/third_party/libvpx_new/source/config/linux/generic/vpx_config.h
new file mode 100644
index 0000000..08e4452
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/generic/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 0
+#define ARCH_MIPS 0
+#define ARCH_X86 0
+#define ARCH_X86_64 0
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 0
+#define HAVE_NEON 0
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 0
+#define HAVE_SSE 0
+#define HAVE_SSE2 0
+#define HAVE_SSE3 0
+#define HAVE_SSSE3 0
+#define HAVE_SSE4_1 0
+#define HAVE_AVX 0
+#define HAVE_AVX2 0
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 0
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 0
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/linux/generic/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/linux/generic/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..010cbe7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/generic/vpx_dsp_rtcd.h
@@ -0,0 +1,660 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8 vpx_convolve8_c
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg vpx_convolve8_avg_c
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_horiz vpx_convolve8_avg_horiz_c
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_vert vpx_convolve8_avg_vert_c
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_horiz vpx_convolve8_horiz_c
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_vert vpx_convolve8_vert_c
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_avg vpx_convolve_avg_c
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_copy vpx_convolve_copy_c
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_16x16 vpx_d153_predictor_16x16_c
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_32x32 vpx_d153_predictor_32x32_c
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_4x4 vpx_d153_predictor_4x4_c
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_8x8 vpx_d153_predictor_8x8_c
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_16x16 vpx_d207_predictor_16x16_c
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_32x32 vpx_d207_predictor_32x32_c
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_4x4 vpx_d207_predictor_4x4_c
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_8x8 vpx_d207_predictor_8x8_c
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_16x16 vpx_d45_predictor_16x16_c
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_32x32 vpx_d45_predictor_32x32_c
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_4x4 vpx_d45_predictor_4x4_c
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_8x8 vpx_d45_predictor_8x8_c
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_16x16 vpx_d63_predictor_16x16_c
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_32x32 vpx_d63_predictor_32x32_c
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_4x4 vpx_d63_predictor_4x4_c
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_8x8 vpx_d63_predictor_8x8_c
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_c
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_c
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_c
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_c
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_c
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_c
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_c
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_c
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_c
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_c
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_c
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_c
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_c
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_c
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_c
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_c
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_c
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_c
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32 vpx_fdct32x32_c
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_c
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_rd vpx_fdct32x32_rd_c
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_c
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_c
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8 vpx_fdct8x8_c
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8_1 vpx_fdct8x8_1_c
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get16x16var vpx_get16x16var_c
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get8x8var vpx_get8x8var_c
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_c
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_16x16 vpx_h_predictor_16x16_c
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_32x32 vpx_h_predictor_32x32_c
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_4x4 vpx_h_predictor_4x4_c
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_8x8 vpx_h_predictor_8x8_c
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_10_add vpx_idct16x16_10_add_c
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_1_add vpx_idct16x16_1_add_c
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_256_add vpx_idct16x16_256_add_c
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_c
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1_add vpx_idct32x32_1_add_c
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_34_add vpx_idct32x32_34_add_c
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_16_add vpx_idct4x4_16_add_c
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_1_add vpx_idct4x4_1_add_c
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_12_add vpx_idct8x8_12_add_c
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_1_add vpx_idct8x8_1_add_c
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_64_add vpx_idct8x8_64_add_c
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_c
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_16 vpx_lpf_horizontal_16_c
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_c
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_c
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_c
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_c
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16 vpx_lpf_vertical_16_c
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_c
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_4 vpx_lpf_vertical_4_c
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_c
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_8 vpx_lpf_vertical_8_c
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_c
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x16 vpx_mse16x16_c
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x8 vpx_mse16x8_c
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_c
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_c
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b vpx_quantize_b_c
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x16 vpx_sad16x16_c
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_c
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x3 vpx_sad16x16x3_c
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x4d vpx_sad16x16x4d_c
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x8 vpx_sad16x16x8_c
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_c
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_c
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_c
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x8 vpx_sad16x8_c
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_c
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x3 vpx_sad16x8x3_c
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_c
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x8 vpx_sad16x8x8_c
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x16 vpx_sad32x16_c
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x16_avg vpx_sad32x16_avg_c
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_c
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x32 vpx_sad32x32_c
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x32_avg vpx_sad32x32_avg_c
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x4d vpx_sad32x32x4d_c
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x64 vpx_sad32x64_c
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x64_avg vpx_sad32x64_avg_c
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_c
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x4 vpx_sad4x4_c
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_c
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x3 vpx_sad4x4x3_c
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_c
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x8 vpx_sad4x4x8_c
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_c
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_c
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_c
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x32 vpx_sad64x32_c
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x32_avg vpx_sad64x32_avg_c
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_c
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x64 vpx_sad64x64_c
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x64_avg vpx_sad64x64_avg_c
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x4d vpx_sad64x64x4d_c
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x16 vpx_sad8x16_c
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_c
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x3 vpx_sad8x16x3_c
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_c
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x8 vpx_sad8x16x8_c
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_c
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_c
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_c
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x8 vpx_sad8x8_c
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_c
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x3 vpx_sad8x8x3_c
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_c
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x8 vpx_sad8x8x8_c
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_2d vpx_scaled_2d_c
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x16 vpx_sub_pixel_avg_variance16x16_c
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x32 vpx_sub_pixel_avg_variance16x32_c
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x8 vpx_sub_pixel_avg_variance16x8_c
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x16 vpx_sub_pixel_avg_variance32x16_c
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x32 vpx_sub_pixel_avg_variance32x32_c
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x64 vpx_sub_pixel_avg_variance32x64_c
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x4 vpx_sub_pixel_avg_variance4x4_c
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x8 vpx_sub_pixel_avg_variance4x8_c
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x32 vpx_sub_pixel_avg_variance64x32_c
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x64 vpx_sub_pixel_avg_variance64x64_c
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x16 vpx_sub_pixel_avg_variance8x16_c
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x4 vpx_sub_pixel_avg_variance8x4_c
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x8 vpx_sub_pixel_avg_variance8x8_c
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x16 vpx_sub_pixel_variance16x16_c
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x32 vpx_sub_pixel_variance16x32_c
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x8 vpx_sub_pixel_variance16x8_c
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x16 vpx_sub_pixel_variance32x16_c
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x32 vpx_sub_pixel_variance32x32_c
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x64 vpx_sub_pixel_variance32x64_c
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x4 vpx_sub_pixel_variance4x4_c
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x8 vpx_sub_pixel_variance4x8_c
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x32 vpx_sub_pixel_variance64x32_c
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x64 vpx_sub_pixel_variance64x64_c
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x16 vpx_sub_pixel_variance8x16_c
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x4 vpx_sub_pixel_variance8x4_c
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x8 vpx_sub_pixel_variance8x8_c
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+#define vpx_subtract_block vpx_subtract_block_c
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_c
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_c
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_c
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_c
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_16x16 vpx_v_predictor_16x16_c
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_32x32 vpx_v_predictor_32x32_c
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_4x4 vpx_v_predictor_4x4_c
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_8x8 vpx_v_predictor_8x8_c
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x16 vpx_variance16x16_c
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x32 vpx_variance16x32_c
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x8 vpx_variance16x8_c
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x16 vpx_variance32x16_c
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x32 vpx_variance32x32_c
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x64 vpx_variance32x64_c
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_c
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_c
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x32 vpx_variance64x32_c
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x64 vpx_variance64x64_c
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x16 vpx_variance8x16_c
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_c
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x8 vpx_variance8x8_c
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_h vpx_variance_halfpixvar16x16_h_c
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_hv vpx_variance_halfpixvar16x16_hv_c
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_v vpx_variance_halfpixvar16x16_v_c
+
+void vpx_dsp_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/generic/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/linux/generic/vpx_scale_rtcd.h
new file mode 100644
index 0000000..f419cc7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/generic/vpx_scale_rtcd.h
@@ -0,0 +1,66 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/ia32/vp8_rtcd.h b/third_party/libvpx_new/source/config/linux/ia32/vp8_rtcd.h
new file mode 100644
index 0000000..d08f080
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/ia32/vp8_rtcd.h
@@ -0,0 +1,430 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict4x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+int vp8_block_error_mmx(short *coeff, short *dqcoeff);
+int vp8_block_error_xmm(short *coeff, short *dqcoeff);
+RTCD_EXTERN int (*vp8_block_error)(short *coeff, short *dqcoeff);
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_sse2(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_ssse3(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mbuv_s)(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_sse2(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_ssse3(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mby_s)(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+
+void vp8_clear_system_state_c();
+void vpx_reset_mmx_state();
+RTCD_EXTERN void (*vp8_clear_system_state)();
+
+void vp8_copy32xn_c(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse2(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse3(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+RTCD_EXTERN void (*vp8_copy32xn)(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_sse2(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem16x16)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem8x4)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem8x8)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_mmx(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+RTCD_EXTERN void (*vp8_dc_only_idct_add)(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_sse2(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+RTCD_EXTERN int (*vp8_denoiser_filter)(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_uv_sse2(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+RTCD_EXTERN int (*vp8_denoiser_filter_uv)(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_mmx(short *input, short *dq, unsigned char *output, int stride);
+RTCD_EXTERN void (*vp8_dequant_idct_add)(short *input, short *dq, unsigned char *output, int stride);
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_mmx(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_sse2(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+RTCD_EXTERN void (*vp8_dequant_idct_add_uv_block)(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_mmx(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_sse2(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+RTCD_EXTERN void (*vp8_dequant_idct_add_y_block)(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+void vp8_dequantize_b_mmx(struct blockd*, short *dqc);
+RTCD_EXTERN void (*vp8_dequantize_b)(struct blockd*, short *dqc);
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_diamond_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_diamond_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+void vp8_fast_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_fast_quantize_b_ssse3(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_fast_quantize_b)(struct block *, struct blockd *);
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight16x16_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp8_filter_by_weight16x16)(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight8x8_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp8_filter_by_weight8x8)(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx3(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx8(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_full_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_c
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_bh)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_bv)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_mbh)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_mbv)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_bh)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_bv)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_mbh)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_mbv)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+int vp8_mbblock_error_mmx(struct macroblock *mb, int dc);
+int vp8_mbblock_error_xmm(struct macroblock *mb, int dc);
+RTCD_EXTERN int (*vp8_mbblock_error)(struct macroblock *mb, int dc);
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_across_ip_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+RTCD_EXTERN void (*vp8_mbpost_proc_across_ip)(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_mmx(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+RTCD_EXTERN void (*vp8_mbpost_proc_down)(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+
+int vp8_mbuverror_c(struct macroblock *mb);
+int vp8_mbuverror_mmx(struct macroblock *mb);
+int vp8_mbuverror_xmm(struct macroblock *mb);
+RTCD_EXTERN int (*vp8_mbuverror)(struct macroblock *mb);
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_mmx(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_wmt(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+RTCD_EXTERN void (*vp8_plane_add_noise)(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+void vp8_post_proc_down_and_across_mb_row_sse2(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+RTCD_EXTERN void (*vp8_post_proc_down_and_across_mb_row)(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_refining_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_refining_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse4_1(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_regular_quantize_b)(struct block *, struct blockd *);
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_sse2(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_fdct4x4)(short *input, short *output, int pitch);
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_sse2(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_fdct8x4)(short *input, short *output, int pitch);
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_mmx(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+RTCD_EXTERN void (*vp8_short_idct4x4llm)(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+void vp8_short_inv_walsh4x4_mmx(short *input, short *output);
+void vp8_short_inv_walsh4x4_sse2(short *input, short *output);
+RTCD_EXTERN void (*vp8_short_inv_walsh4x4)(short *input, short *output);
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_sse2(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_walsh4x4)(short *input, short *output, int pitch);
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict4x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_mmx;
+ if (flags & HAS_SSE2) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_ssse3;
+ vp8_bilinear_predict4x4 = vp8_bilinear_predict4x4_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict4x4 = vp8_bilinear_predict4x4_mmx;
+ vp8_bilinear_predict8x4 = vp8_bilinear_predict8x4_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict8x4 = vp8_bilinear_predict8x4_mmx;
+ vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_mmx;
+ if (flags & HAS_SSE2) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_ssse3;
+ vp8_block_error = vp8_block_error_c;
+ if (flags & HAS_MMX) vp8_block_error = vp8_block_error_mmx;
+ if (flags & HAS_SSE2) vp8_block_error = vp8_block_error_xmm;
+ vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_c;
+ if (flags & HAS_SSE2) vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_ssse3;
+ vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_c;
+ if (flags & HAS_SSE2) vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_ssse3;
+ vp8_clear_system_state = vp8_clear_system_state_c;
+ if (flags & HAS_MMX) vp8_clear_system_state = vpx_reset_mmx_state;
+ vp8_copy32xn = vp8_copy32xn_c;
+ if (flags & HAS_SSE2) vp8_copy32xn = vp8_copy32xn_sse2;
+ if (flags & HAS_SSE3) vp8_copy32xn = vp8_copy32xn_sse3;
+ vp8_copy_mem16x16 = vp8_copy_mem16x16_c;
+ if (flags & HAS_MMX) vp8_copy_mem16x16 = vp8_copy_mem16x16_mmx;
+ if (flags & HAS_SSE2) vp8_copy_mem16x16 = vp8_copy_mem16x16_sse2;
+ vp8_copy_mem8x4 = vp8_copy_mem8x4_c;
+ if (flags & HAS_MMX) vp8_copy_mem8x4 = vp8_copy_mem8x4_mmx;
+ vp8_copy_mem8x8 = vp8_copy_mem8x8_c;
+ if (flags & HAS_MMX) vp8_copy_mem8x8 = vp8_copy_mem8x8_mmx;
+ vp8_dc_only_idct_add = vp8_dc_only_idct_add_c;
+ if (flags & HAS_MMX) vp8_dc_only_idct_add = vp8_dc_only_idct_add_mmx;
+ vp8_denoiser_filter = vp8_denoiser_filter_c;
+ if (flags & HAS_SSE2) vp8_denoiser_filter = vp8_denoiser_filter_sse2;
+ vp8_denoiser_filter_uv = vp8_denoiser_filter_uv_c;
+ if (flags & HAS_SSE2) vp8_denoiser_filter_uv = vp8_denoiser_filter_uv_sse2;
+ vp8_dequant_idct_add = vp8_dequant_idct_add_c;
+ if (flags & HAS_MMX) vp8_dequant_idct_add = vp8_dequant_idct_add_mmx;
+ vp8_dequant_idct_add_uv_block = vp8_dequant_idct_add_uv_block_c;
+ if (flags & HAS_MMX) vp8_dequant_idct_add_uv_block = vp8_dequant_idct_add_uv_block_mmx;
+ if (flags & HAS_SSE2) vp8_dequant_idct_add_uv_block = vp8_dequant_idct_add_uv_block_sse2;
+ vp8_dequant_idct_add_y_block = vp8_dequant_idct_add_y_block_c;
+ if (flags & HAS_MMX) vp8_dequant_idct_add_y_block = vp8_dequant_idct_add_y_block_mmx;
+ if (flags & HAS_SSE2) vp8_dequant_idct_add_y_block = vp8_dequant_idct_add_y_block_sse2;
+ vp8_dequantize_b = vp8_dequantize_b_c;
+ if (flags & HAS_MMX) vp8_dequantize_b = vp8_dequantize_b_mmx;
+ vp8_diamond_search_sad = vp8_diamond_search_sad_c;
+ if (flags & HAS_SSE3) vp8_diamond_search_sad = vp8_diamond_search_sadx4;
+ vp8_fast_quantize_b = vp8_fast_quantize_b_c;
+ if (flags & HAS_SSE2) vp8_fast_quantize_b = vp8_fast_quantize_b_sse2;
+ if (flags & HAS_SSSE3) vp8_fast_quantize_b = vp8_fast_quantize_b_ssse3;
+ vp8_filter_by_weight16x16 = vp8_filter_by_weight16x16_c;
+ if (flags & HAS_SSE2) vp8_filter_by_weight16x16 = vp8_filter_by_weight16x16_sse2;
+ vp8_filter_by_weight8x8 = vp8_filter_by_weight8x8_c;
+ if (flags & HAS_SSE2) vp8_filter_by_weight8x8 = vp8_filter_by_weight8x8_sse2;
+ vp8_full_search_sad = vp8_full_search_sad_c;
+ if (flags & HAS_SSE3) vp8_full_search_sad = vp8_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp8_full_search_sad = vp8_full_search_sadx8;
+ vp8_loop_filter_bh = vp8_loop_filter_bh_c;
+ if (flags & HAS_MMX) vp8_loop_filter_bh = vp8_loop_filter_bh_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_bh = vp8_loop_filter_bh_sse2;
+ vp8_loop_filter_bv = vp8_loop_filter_bv_c;
+ if (flags & HAS_MMX) vp8_loop_filter_bv = vp8_loop_filter_bv_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_bv = vp8_loop_filter_bv_sse2;
+ vp8_loop_filter_mbh = vp8_loop_filter_mbh_c;
+ if (flags & HAS_MMX) vp8_loop_filter_mbh = vp8_loop_filter_mbh_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_mbh = vp8_loop_filter_mbh_sse2;
+ vp8_loop_filter_mbv = vp8_loop_filter_mbv_c;
+ if (flags & HAS_MMX) vp8_loop_filter_mbv = vp8_loop_filter_mbv_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_mbv = vp8_loop_filter_mbv_sse2;
+ vp8_loop_filter_simple_bh = vp8_loop_filter_bhs_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_bh = vp8_loop_filter_bhs_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_bh = vp8_loop_filter_bhs_sse2;
+ vp8_loop_filter_simple_bv = vp8_loop_filter_bvs_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_bv = vp8_loop_filter_bvs_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_bv = vp8_loop_filter_bvs_sse2;
+ vp8_loop_filter_simple_mbh = vp8_loop_filter_simple_horizontal_edge_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_mbh = vp8_loop_filter_simple_horizontal_edge_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_mbh = vp8_loop_filter_simple_horizontal_edge_sse2;
+ vp8_loop_filter_simple_mbv = vp8_loop_filter_simple_vertical_edge_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_mbv = vp8_loop_filter_simple_vertical_edge_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_mbv = vp8_loop_filter_simple_vertical_edge_sse2;
+ vp8_mbblock_error = vp8_mbblock_error_c;
+ if (flags & HAS_MMX) vp8_mbblock_error = vp8_mbblock_error_mmx;
+ if (flags & HAS_SSE2) vp8_mbblock_error = vp8_mbblock_error_xmm;
+ vp8_mbpost_proc_across_ip = vp8_mbpost_proc_across_ip_c;
+ if (flags & HAS_SSE2) vp8_mbpost_proc_across_ip = vp8_mbpost_proc_across_ip_xmm;
+ vp8_mbpost_proc_down = vp8_mbpost_proc_down_c;
+ if (flags & HAS_MMX) vp8_mbpost_proc_down = vp8_mbpost_proc_down_mmx;
+ if (flags & HAS_SSE2) vp8_mbpost_proc_down = vp8_mbpost_proc_down_xmm;
+ vp8_mbuverror = vp8_mbuverror_c;
+ if (flags & HAS_MMX) vp8_mbuverror = vp8_mbuverror_mmx;
+ if (flags & HAS_SSE2) vp8_mbuverror = vp8_mbuverror_xmm;
+ vp8_plane_add_noise = vp8_plane_add_noise_c;
+ if (flags & HAS_MMX) vp8_plane_add_noise = vp8_plane_add_noise_mmx;
+ if (flags & HAS_SSE2) vp8_plane_add_noise = vp8_plane_add_noise_wmt;
+ vp8_post_proc_down_and_across_mb_row = vp8_post_proc_down_and_across_mb_row_c;
+ if (flags & HAS_SSE2) vp8_post_proc_down_and_across_mb_row = vp8_post_proc_down_and_across_mb_row_sse2;
+ vp8_refining_search_sad = vp8_refining_search_sad_c;
+ if (flags & HAS_SSE3) vp8_refining_search_sad = vp8_refining_search_sadx4;
+ vp8_regular_quantize_b = vp8_regular_quantize_b_c;
+ if (flags & HAS_SSE2) vp8_regular_quantize_b = vp8_regular_quantize_b_sse2;
+ if (flags & HAS_SSE4_1) vp8_regular_quantize_b = vp8_regular_quantize_b_sse4_1;
+ vp8_short_fdct4x4 = vp8_short_fdct4x4_c;
+ if (flags & HAS_MMX) vp8_short_fdct4x4 = vp8_short_fdct4x4_mmx;
+ if (flags & HAS_SSE2) vp8_short_fdct4x4 = vp8_short_fdct4x4_sse2;
+ vp8_short_fdct8x4 = vp8_short_fdct8x4_c;
+ if (flags & HAS_MMX) vp8_short_fdct8x4 = vp8_short_fdct8x4_mmx;
+ if (flags & HAS_SSE2) vp8_short_fdct8x4 = vp8_short_fdct8x4_sse2;
+ vp8_short_idct4x4llm = vp8_short_idct4x4llm_c;
+ if (flags & HAS_MMX) vp8_short_idct4x4llm = vp8_short_idct4x4llm_mmx;
+ vp8_short_inv_walsh4x4 = vp8_short_inv_walsh4x4_c;
+ if (flags & HAS_MMX) vp8_short_inv_walsh4x4 = vp8_short_inv_walsh4x4_mmx;
+ if (flags & HAS_SSE2) vp8_short_inv_walsh4x4 = vp8_short_inv_walsh4x4_sse2;
+ vp8_short_walsh4x4 = vp8_short_walsh4x4_c;
+ if (flags & HAS_SSE2) vp8_short_walsh4x4 = vp8_short_walsh4x4_sse2;
+ vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_mmx;
+ if (flags & HAS_SSE2) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_ssse3;
+ vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_mmx;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_ssse3;
+ vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_mmx;
+ if (flags & HAS_SSE2) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_ssse3;
+ vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_mmx;
+ if (flags & HAS_SSE2) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_ssse3;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/ia32/vp9_rtcd.h b/third_party/libvpx_new/source/config/linux/ia32/vp9_rtcd.h
new file mode 100644
index 0000000..0c0a793
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/ia32/vp9_rtcd.h
@@ -0,0 +1,238 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+unsigned int vp9_avg_4x4_sse2(const uint8_t *, int p);
+RTCD_EXTERN unsigned int (*vp9_avg_4x4)(const uint8_t *, int p);
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+unsigned int vp9_avg_8x8_sse2(const uint8_t *, int p);
+RTCD_EXTERN unsigned int (*vp9_avg_8x8)(const uint8_t *, int p);
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_sse2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_avx2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+RTCD_EXTERN int64_t (*vp9_block_error)(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+int64_t vp9_block_error_fp_sse2(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+RTCD_EXTERN int64_t (*vp9_block_error_fp)(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+int vp9_denoiser_filter_sse2(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+RTCD_EXTERN int (*vp9_denoiser_filter)(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_sse2(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_ssse3(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_fdct8x8_quant)(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht16x16_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+RTCD_EXTERN void (*vp9_fht16x16)(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht4x4_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+RTCD_EXTERN void (*vp9_fht4x4)(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht8x8_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+RTCD_EXTERN void (*vp9_fht8x8)(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight16x16_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp9_filter_by_weight16x16)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight8x8_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp9_filter_by_weight8x8)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx3(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx8(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+RTCD_EXTERN int (*vp9_full_search_sad)(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vp9_fwht4x4_mmx(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vp9_fwht4x4)(const int16_t *input, tran_low_t *output, int stride);
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_16x16_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vp9_hadamard_16x16)(int16_t const *src_diff, int src_stride, int16_t *coeff);
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_8x8_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vp9_hadamard_8x8)(int16_t const *src_diff, int src_stride, int16_t *coeff);
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+void vp9_iht16x16_256_add_sse2(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+RTCD_EXTERN void (*vp9_iht16x16_256_add)(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+RTCD_EXTERN void (*vp9_iht4x4_16_add)(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+RTCD_EXTERN void (*vp9_iht8x8_64_add)(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+int16_t vp9_int_pro_col_sse2(uint8_t const *ref, const int width);
+RTCD_EXTERN int16_t (*vp9_int_pro_col)(uint8_t const *ref, const int width);
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+void vp9_int_pro_row_sse2(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+RTCD_EXTERN void (*vp9_int_pro_row)(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_across_ip_xmm(uint8_t *src, int pitch, int rows, int cols, int flimit);
+RTCD_EXTERN void (*vp9_mbpost_proc_across_ip)(uint8_t *src, int pitch, int rows, int cols, int flimit);
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_down_xmm(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+RTCD_EXTERN void (*vp9_mbpost_proc_down)(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+void vp9_minmax_8x8_sse2(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+RTCD_EXTERN void (*vp9_minmax_8x8)(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+void vp9_plane_add_noise_wmt(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+RTCD_EXTERN void (*vp9_plane_add_noise)(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+void vp9_post_proc_down_and_across_xmm(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+RTCD_EXTERN void (*vp9_post_proc_down_and_across)(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+int16_t vp9_satd_sse2(const int16_t *coeff, int length);
+RTCD_EXTERN int16_t (*vp9_satd)(const int16_t *coeff, int length);
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+void vp9_temporal_filter_apply_sse2(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+RTCD_EXTERN void (*vp9_temporal_filter_apply)(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+int vp9_vector_var_sse2(int16_t const *ref, int16_t const *src, const int bwl);
+RTCD_EXTERN int (*vp9_vector_var)(int16_t const *ref, int16_t const *src, const int bwl);
+
+void vp9_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp9_avg_4x4 = vp9_avg_4x4_c;
+ if (flags & HAS_SSE2) vp9_avg_4x4 = vp9_avg_4x4_sse2;
+ vp9_avg_8x8 = vp9_avg_8x8_c;
+ if (flags & HAS_SSE2) vp9_avg_8x8 = vp9_avg_8x8_sse2;
+ vp9_block_error = vp9_block_error_c;
+ if (flags & HAS_SSE2) vp9_block_error = vp9_block_error_sse2;
+ if (flags & HAS_AVX2) vp9_block_error = vp9_block_error_avx2;
+ vp9_block_error_fp = vp9_block_error_fp_c;
+ if (flags & HAS_SSE2) vp9_block_error_fp = vp9_block_error_fp_sse2;
+ vp9_denoiser_filter = vp9_denoiser_filter_c;
+ if (flags & HAS_SSE2) vp9_denoiser_filter = vp9_denoiser_filter_sse2;
+ vp9_fdct8x8_quant = vp9_fdct8x8_quant_c;
+ if (flags & HAS_SSE2) vp9_fdct8x8_quant = vp9_fdct8x8_quant_sse2;
+ if (flags & HAS_SSSE3) vp9_fdct8x8_quant = vp9_fdct8x8_quant_ssse3;
+ vp9_fht16x16 = vp9_fht16x16_c;
+ if (flags & HAS_SSE2) vp9_fht16x16 = vp9_fht16x16_sse2;
+ vp9_fht4x4 = vp9_fht4x4_c;
+ if (flags & HAS_SSE2) vp9_fht4x4 = vp9_fht4x4_sse2;
+ vp9_fht8x8 = vp9_fht8x8_c;
+ if (flags & HAS_SSE2) vp9_fht8x8 = vp9_fht8x8_sse2;
+ vp9_filter_by_weight16x16 = vp9_filter_by_weight16x16_c;
+ if (flags & HAS_SSE2) vp9_filter_by_weight16x16 = vp9_filter_by_weight16x16_sse2;
+ vp9_filter_by_weight8x8 = vp9_filter_by_weight8x8_c;
+ if (flags & HAS_SSE2) vp9_filter_by_weight8x8 = vp9_filter_by_weight8x8_sse2;
+ vp9_full_search_sad = vp9_full_search_sad_c;
+ if (flags & HAS_SSE3) vp9_full_search_sad = vp9_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp9_full_search_sad = vp9_full_search_sadx8;
+ vp9_fwht4x4 = vp9_fwht4x4_c;
+ if (flags & HAS_MMX) vp9_fwht4x4 = vp9_fwht4x4_mmx;
+ vp9_hadamard_16x16 = vp9_hadamard_16x16_c;
+ if (flags & HAS_SSE2) vp9_hadamard_16x16 = vp9_hadamard_16x16_sse2;
+ vp9_hadamard_8x8 = vp9_hadamard_8x8_c;
+ if (flags & HAS_SSE2) vp9_hadamard_8x8 = vp9_hadamard_8x8_sse2;
+ vp9_iht16x16_256_add = vp9_iht16x16_256_add_c;
+ if (flags & HAS_SSE2) vp9_iht16x16_256_add = vp9_iht16x16_256_add_sse2;
+ vp9_iht4x4_16_add = vp9_iht4x4_16_add_c;
+ if (flags & HAS_SSE2) vp9_iht4x4_16_add = vp9_iht4x4_16_add_sse2;
+ vp9_iht8x8_64_add = vp9_iht8x8_64_add_c;
+ if (flags & HAS_SSE2) vp9_iht8x8_64_add = vp9_iht8x8_64_add_sse2;
+ vp9_int_pro_col = vp9_int_pro_col_c;
+ if (flags & HAS_SSE2) vp9_int_pro_col = vp9_int_pro_col_sse2;
+ vp9_int_pro_row = vp9_int_pro_row_c;
+ if (flags & HAS_SSE2) vp9_int_pro_row = vp9_int_pro_row_sse2;
+ vp9_mbpost_proc_across_ip = vp9_mbpost_proc_across_ip_c;
+ if (flags & HAS_SSE2) vp9_mbpost_proc_across_ip = vp9_mbpost_proc_across_ip_xmm;
+ vp9_mbpost_proc_down = vp9_mbpost_proc_down_c;
+ if (flags & HAS_SSE2) vp9_mbpost_proc_down = vp9_mbpost_proc_down_xmm;
+ vp9_minmax_8x8 = vp9_minmax_8x8_c;
+ if (flags & HAS_SSE2) vp9_minmax_8x8 = vp9_minmax_8x8_sse2;
+ vp9_plane_add_noise = vp9_plane_add_noise_c;
+ if (flags & HAS_SSE2) vp9_plane_add_noise = vp9_plane_add_noise_wmt;
+ vp9_post_proc_down_and_across = vp9_post_proc_down_and_across_c;
+ if (flags & HAS_SSE2) vp9_post_proc_down_and_across = vp9_post_proc_down_and_across_xmm;
+ vp9_quantize_fp = vp9_quantize_fp_c;
+ if (flags & HAS_SSE2) vp9_quantize_fp = vp9_quantize_fp_sse2;
+ vp9_satd = vp9_satd_c;
+ if (flags & HAS_SSE2) vp9_satd = vp9_satd_sse2;
+ vp9_temporal_filter_apply = vp9_temporal_filter_apply_c;
+ if (flags & HAS_SSE2) vp9_temporal_filter_apply = vp9_temporal_filter_apply_sse2;
+ vp9_vector_var = vp9_vector_var_c;
+ if (flags & HAS_SSE2) vp9_vector_var = vp9_vector_var_sse2;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/ia32/vpx_config.asm b/third_party/libvpx_new/source/config/linux/ia32/vpx_config.asm
new file mode 100644
index 0000000..90b0da0
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/ia32/vpx_config.asm
@@ -0,0 +1,87 @@
+%define ARCH_ARM 0
+%define ARCH_MIPS 0
+%define ARCH_X86 1
+%define ARCH_X86_64 0
+%define HAVE_EDSP 0
+%define HAVE_MEDIA 0
+%define HAVE_NEON 0
+%define HAVE_NEON_ASM 0
+%define HAVE_MIPS32 0
+%define HAVE_DSPR2 0
+%define HAVE_MSA 0
+%define HAVE_MIPS64 0
+%define HAVE_MMX 1
+%define HAVE_SSE 1
+%define HAVE_SSE2 1
+%define HAVE_SSE3 1
+%define HAVE_SSSE3 1
+%define HAVE_SSE4_1 1
+%define HAVE_AVX 1
+%define HAVE_AVX2 1
+%define HAVE_VPX_PORTS 1
+%define HAVE_STDINT_H 1
+%define HAVE_PTHREAD_H 1
+%define HAVE_SYS_MMAN_H 1
+%define HAVE_UNISTD_H 0
+%define CONFIG_DEPENDENCY_TRACKING 1
+%define CONFIG_EXTERNAL_BUILD 1
+%define CONFIG_INSTALL_DOCS 0
+%define CONFIG_INSTALL_BINS 1
+%define CONFIG_INSTALL_LIBS 1
+%define CONFIG_INSTALL_SRCS 0
+%define CONFIG_USE_X86INC 1
+%define CONFIG_DEBUG 0
+%define CONFIG_GPROF 0
+%define CONFIG_GCOV 0
+%define CONFIG_RVCT 0
+%define CONFIG_GCC 1
+%define CONFIG_MSVS 0
+%define CONFIG_PIC 1
+%define CONFIG_BIG_ENDIAN 0
+%define CONFIG_CODEC_SRCS 0
+%define CONFIG_DEBUG_LIBS 0
+%define CONFIG_DEQUANT_TOKENS 0
+%define CONFIG_DC_RECON 0
+%define CONFIG_RUNTIME_CPU_DETECT 1
+%define CONFIG_POSTPROC 1
+%define CONFIG_VP9_POSTPROC 1
+%define CONFIG_MULTITHREAD 1
+%define CONFIG_INTERNAL_STATS 0
+%define CONFIG_VP8_ENCODER 1
+%define CONFIG_VP8_DECODER 1
+%define CONFIG_VP9_ENCODER 1
+%define CONFIG_VP9_DECODER 1
+%define CONFIG_VP10_ENCODER 0
+%define CONFIG_VP10_DECODER 0
+%define CONFIG_VP8 1
+%define CONFIG_VP9 1
+%define CONFIG_VP10 0
+%define CONFIG_ENCODERS 1
+%define CONFIG_DECODERS 1
+%define CONFIG_STATIC_MSVCRT 0
+%define CONFIG_SPATIAL_RESAMPLING 1
+%define CONFIG_REALTIME_ONLY 1
+%define CONFIG_ONTHEFLY_BITPACKING 0
+%define CONFIG_ERROR_CONCEALMENT 0
+%define CONFIG_SHARED 0
+%define CONFIG_STATIC 1
+%define CONFIG_SMALL 0
+%define CONFIG_POSTPROC_VISUALIZER 0
+%define CONFIG_OS_SUPPORT 1
+%define CONFIG_UNIT_TESTS 0
+%define CONFIG_WEBM_IO 1
+%define CONFIG_LIBYUV 1
+%define CONFIG_DECODE_PERF_TESTS 0
+%define CONFIG_ENCODE_PERF_TESTS 0
+%define CONFIG_MULTI_RES_ENCODING 1
+%define CONFIG_TEMPORAL_DENOISING 1
+%define CONFIG_VP9_TEMPORAL_DENOISING 1
+%define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+%define CONFIG_VP9_HIGHBITDEPTH 0
+%define CONFIG_EXPERIMENTAL 0
+%define CONFIG_SIZE_LIMIT 1
+%define CONFIG_SPATIAL_SVC 0
+%define CONFIG_FP_MB_STATS 0
+%define CONFIG_EMULATE_HARDWARE 0
+%define DECODE_WIDTH_LIMIT 16384
+%define DECODE_HEIGHT_LIMIT 16384
diff --git a/third_party/libvpx_new/source/config/linux/ia32/vpx_config.c b/third_party/libvpx_new/source/config/linux/ia32/vpx_config.c
new file mode 100644
index 0000000..08b58cc
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/ia32/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=x86-linux-gcc --disable-ccache --enable-pic --enable-realtime-only --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/linux/ia32/vpx_config.h b/third_party/libvpx_new/source/config/linux/ia32/vpx_config.h
new file mode 100644
index 0000000..06b5ed9
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/ia32/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 0
+#define ARCH_MIPS 0
+#define ARCH_X86 1
+#define ARCH_X86_64 0
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 0
+#define HAVE_NEON 0
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 1
+#define HAVE_SSE 1
+#define HAVE_SSE2 1
+#define HAVE_SSE3 1
+#define HAVE_SSSE3 1
+#define HAVE_SSE4_1 1
+#define HAVE_AVX 1
+#define HAVE_AVX2 1
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 1
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 1
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/linux/ia32/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/linux/ia32/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..8f0da9d
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/ia32/vpx_dsp_rtcd.h
@@ -0,0 +1,1383 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_copy_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve_copy)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct16x16)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct16x16_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32_rd)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct4x4)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct4x4_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get16x16var)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get8x8var)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+unsigned int vpx_get_mb_ss_mmx(const int16_t *);
+unsigned int vpx_get_mb_ss_sse2(const int16_t *);
+RTCD_EXTERN unsigned int (*vpx_get_mb_ss)(const int16_t *);
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_10_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_10_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_256_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_256_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1024_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_1024_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_34_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_34_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct4x4_16_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct4x4_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_12_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_64_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_iwht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_iwht4x4_16_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_avx2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_4)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_horizontal_4_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_8)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_horizontal_8_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+RTCD_EXTERN void (*vpx_lpf_vertical_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+RTCD_EXTERN void (*vpx_lpf_vertical_16_dual)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_vertical_4)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_vertical_4_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_vertical_8)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_vertical_8_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse8x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse8x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vpx_quantize_b)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad16x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad16x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad16x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad16x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad16x8_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x16x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x64x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad4x4)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x4_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad4x4_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x8_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad4x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x8_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad4x8_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x8x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x8x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad64x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad64x64x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad8x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad8x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x4_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad8x4)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x4_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad8x4_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x4x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x4x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad8x8_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_scaled_2d_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_scaled_2d)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+void vpx_subtract_block_sse2(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+RTCD_EXTERN void (*vpx_subtract_block)(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_c
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x64)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance4x4)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance4x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x64)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance8x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance8x4)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance8x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_variance_halfpixvar16x16_h)(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_variance_halfpixvar16x16_hv)(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_variance_halfpixvar16x16_v)(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+
+void vpx_dsp_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vpx_convolve8 = vpx_convolve8_c;
+ if (flags & HAS_SSE2) vpx_convolve8 = vpx_convolve8_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8 = vpx_convolve8_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8 = vpx_convolve8_avx2;
+ vpx_convolve8_avg = vpx_convolve8_avg_c;
+ if (flags & HAS_SSE2) vpx_convolve8_avg = vpx_convolve8_avg_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg = vpx_convolve8_avg_ssse3;
+ vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_c;
+ if (flags & HAS_SSE2) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_ssse3;
+ vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_c;
+ if (flags & HAS_SSE2) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_ssse3;
+ vpx_convolve8_horiz = vpx_convolve8_horiz_c;
+ if (flags & HAS_SSE2) vpx_convolve8_horiz = vpx_convolve8_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_horiz = vpx_convolve8_horiz_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_horiz = vpx_convolve8_horiz_avx2;
+ vpx_convolve8_vert = vpx_convolve8_vert_c;
+ if (flags & HAS_SSE2) vpx_convolve8_vert = vpx_convolve8_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_vert = vpx_convolve8_vert_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_vert = vpx_convolve8_vert_avx2;
+ vpx_convolve_avg = vpx_convolve_avg_c;
+ if (flags & HAS_SSE2) vpx_convolve_avg = vpx_convolve_avg_sse2;
+ vpx_convolve_copy = vpx_convolve_copy_c;
+ if (flags & HAS_SSE2) vpx_convolve_copy = vpx_convolve_copy_sse2;
+ vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_ssse3;
+ vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_ssse3;
+ vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_ssse3;
+ vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_ssse3;
+ vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_ssse3;
+ vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_ssse3;
+ vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_ssse3;
+ vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_ssse3;
+ vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_ssse3;
+ vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_ssse3;
+ vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_ssse3;
+ vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_ssse3;
+ vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_ssse3;
+ vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_ssse3;
+ vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_ssse3;
+ vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_ssse3;
+ vpx_dc_128_predictor_16x16 = vpx_dc_128_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_128_predictor_16x16 = vpx_dc_128_predictor_16x16_sse2;
+ vpx_dc_128_predictor_32x32 = vpx_dc_128_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_128_predictor_32x32 = vpx_dc_128_predictor_32x32_sse2;
+ vpx_dc_128_predictor_4x4 = vpx_dc_128_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_128_predictor_4x4 = vpx_dc_128_predictor_4x4_sse;
+ vpx_dc_128_predictor_8x8 = vpx_dc_128_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_128_predictor_8x8 = vpx_dc_128_predictor_8x8_sse;
+ vpx_dc_left_predictor_16x16 = vpx_dc_left_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_left_predictor_16x16 = vpx_dc_left_predictor_16x16_sse2;
+ vpx_dc_left_predictor_32x32 = vpx_dc_left_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_left_predictor_32x32 = vpx_dc_left_predictor_32x32_sse2;
+ vpx_dc_left_predictor_4x4 = vpx_dc_left_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_left_predictor_4x4 = vpx_dc_left_predictor_4x4_sse;
+ vpx_dc_left_predictor_8x8 = vpx_dc_left_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_left_predictor_8x8 = vpx_dc_left_predictor_8x8_sse;
+ vpx_dc_predictor_16x16 = vpx_dc_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_predictor_16x16 = vpx_dc_predictor_16x16_sse2;
+ vpx_dc_predictor_32x32 = vpx_dc_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_predictor_32x32 = vpx_dc_predictor_32x32_sse2;
+ vpx_dc_predictor_4x4 = vpx_dc_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_predictor_4x4 = vpx_dc_predictor_4x4_sse;
+ vpx_dc_predictor_8x8 = vpx_dc_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_predictor_8x8 = vpx_dc_predictor_8x8_sse;
+ vpx_dc_top_predictor_16x16 = vpx_dc_top_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_top_predictor_16x16 = vpx_dc_top_predictor_16x16_sse2;
+ vpx_dc_top_predictor_32x32 = vpx_dc_top_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_top_predictor_32x32 = vpx_dc_top_predictor_32x32_sse2;
+ vpx_dc_top_predictor_4x4 = vpx_dc_top_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_top_predictor_4x4 = vpx_dc_top_predictor_4x4_sse;
+ vpx_dc_top_predictor_8x8 = vpx_dc_top_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_top_predictor_8x8 = vpx_dc_top_predictor_8x8_sse;
+ vpx_fdct16x16 = vpx_fdct16x16_c;
+ if (flags & HAS_SSE2) vpx_fdct16x16 = vpx_fdct16x16_sse2;
+ vpx_fdct16x16_1 = vpx_fdct16x16_1_c;
+ if (flags & HAS_SSE2) vpx_fdct16x16_1 = vpx_fdct16x16_1_sse2;
+ vpx_fdct32x32 = vpx_fdct32x32_c;
+ if (flags & HAS_SSE2) vpx_fdct32x32 = vpx_fdct32x32_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32 = vpx_fdct32x32_avx2;
+ vpx_fdct32x32_1 = vpx_fdct32x32_1_c;
+ if (flags & HAS_SSE2) vpx_fdct32x32_1 = vpx_fdct32x32_1_sse2;
+ vpx_fdct32x32_rd = vpx_fdct32x32_rd_c;
+ if (flags & HAS_SSE2) vpx_fdct32x32_rd = vpx_fdct32x32_rd_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32_rd = vpx_fdct32x32_rd_avx2;
+ vpx_fdct4x4 = vpx_fdct4x4_c;
+ if (flags & HAS_SSE2) vpx_fdct4x4 = vpx_fdct4x4_sse2;
+ vpx_fdct4x4_1 = vpx_fdct4x4_1_c;
+ if (flags & HAS_SSE2) vpx_fdct4x4_1 = vpx_fdct4x4_1_sse2;
+ vpx_fdct8x8 = vpx_fdct8x8_c;
+ if (flags & HAS_SSE2) vpx_fdct8x8 = vpx_fdct8x8_sse2;
+ vpx_fdct8x8_1 = vpx_fdct8x8_1_c;
+ if (flags & HAS_SSE2) vpx_fdct8x8_1 = vpx_fdct8x8_1_sse2;
+ vpx_get16x16var = vpx_get16x16var_c;
+ if (flags & HAS_SSE2) vpx_get16x16var = vpx_get16x16var_sse2;
+ if (flags & HAS_AVX2) vpx_get16x16var = vpx_get16x16var_avx2;
+ vpx_get8x8var = vpx_get8x8var_c;
+ if (flags & HAS_MMX) vpx_get8x8var = vpx_get8x8var_mmx;
+ if (flags & HAS_SSE2) vpx_get8x8var = vpx_get8x8var_sse2;
+ vpx_get_mb_ss = vpx_get_mb_ss_c;
+ if (flags & HAS_MMX) vpx_get_mb_ss = vpx_get_mb_ss_mmx;
+ if (flags & HAS_SSE2) vpx_get_mb_ss = vpx_get_mb_ss_sse2;
+ vpx_h_predictor_16x16 = vpx_h_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_16x16 = vpx_h_predictor_16x16_ssse3;
+ vpx_h_predictor_32x32 = vpx_h_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_32x32 = vpx_h_predictor_32x32_ssse3;
+ vpx_h_predictor_4x4 = vpx_h_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_4x4 = vpx_h_predictor_4x4_ssse3;
+ vpx_h_predictor_8x8 = vpx_h_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_8x8 = vpx_h_predictor_8x8_ssse3;
+ vpx_idct16x16_10_add = vpx_idct16x16_10_add_c;
+ if (flags & HAS_SSE2) vpx_idct16x16_10_add = vpx_idct16x16_10_add_sse2;
+ vpx_idct16x16_1_add = vpx_idct16x16_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct16x16_1_add = vpx_idct16x16_1_add_sse2;
+ vpx_idct16x16_256_add = vpx_idct16x16_256_add_c;
+ if (flags & HAS_SSE2) vpx_idct16x16_256_add = vpx_idct16x16_256_add_sse2;
+ vpx_idct32x32_1024_add = vpx_idct32x32_1024_add_c;
+ if (flags & HAS_SSE2) vpx_idct32x32_1024_add = vpx_idct32x32_1024_add_sse2;
+ vpx_idct32x32_1_add = vpx_idct32x32_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct32x32_1_add = vpx_idct32x32_1_add_sse2;
+ vpx_idct32x32_34_add = vpx_idct32x32_34_add_c;
+ if (flags & HAS_SSE2) vpx_idct32x32_34_add = vpx_idct32x32_34_add_sse2;
+ vpx_idct4x4_16_add = vpx_idct4x4_16_add_c;
+ if (flags & HAS_SSE2) vpx_idct4x4_16_add = vpx_idct4x4_16_add_sse2;
+ vpx_idct4x4_1_add = vpx_idct4x4_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct4x4_1_add = vpx_idct4x4_1_add_sse2;
+ vpx_idct8x8_12_add = vpx_idct8x8_12_add_c;
+ if (flags & HAS_SSE2) vpx_idct8x8_12_add = vpx_idct8x8_12_add_sse2;
+ vpx_idct8x8_1_add = vpx_idct8x8_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct8x8_1_add = vpx_idct8x8_1_add_sse2;
+ vpx_idct8x8_64_add = vpx_idct8x8_64_add_c;
+ if (flags & HAS_SSE2) vpx_idct8x8_64_add = vpx_idct8x8_64_add_sse2;
+ vpx_iwht4x4_16_add = vpx_iwht4x4_16_add_c;
+ if (flags & HAS_SSE2) vpx_iwht4x4_16_add = vpx_iwht4x4_16_add_sse2;
+ vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_sse2;
+ if (flags & HAS_AVX2) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_avx2;
+ vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_c;
+ if (flags & HAS_MMX) vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_mmx;
+ vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_sse2;
+ vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_sse2;
+ vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_sse2;
+ vpx_lpf_vertical_16 = vpx_lpf_vertical_16_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_16 = vpx_lpf_vertical_16_sse2;
+ vpx_lpf_vertical_16_dual = vpx_lpf_vertical_16_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_16_dual = vpx_lpf_vertical_16_dual_sse2;
+ vpx_lpf_vertical_4 = vpx_lpf_vertical_4_c;
+ if (flags & HAS_MMX) vpx_lpf_vertical_4 = vpx_lpf_vertical_4_mmx;
+ vpx_lpf_vertical_4_dual = vpx_lpf_vertical_4_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_4_dual = vpx_lpf_vertical_4_dual_sse2;
+ vpx_lpf_vertical_8 = vpx_lpf_vertical_8_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_8 = vpx_lpf_vertical_8_sse2;
+ vpx_lpf_vertical_8_dual = vpx_lpf_vertical_8_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_8_dual = vpx_lpf_vertical_8_dual_sse2;
+ vpx_mse16x16 = vpx_mse16x16_c;
+ if (flags & HAS_MMX) vpx_mse16x16 = vpx_mse16x16_mmx;
+ if (flags & HAS_SSE2) vpx_mse16x16 = vpx_mse16x16_sse2;
+ if (flags & HAS_AVX2) vpx_mse16x16 = vpx_mse16x16_avx2;
+ vpx_mse16x8 = vpx_mse16x8_c;
+ if (flags & HAS_SSE2) vpx_mse16x8 = vpx_mse16x8_sse2;
+ vpx_mse8x16 = vpx_mse8x16_c;
+ if (flags & HAS_SSE2) vpx_mse8x16 = vpx_mse8x16_sse2;
+ vpx_mse8x8 = vpx_mse8x8_c;
+ if (flags & HAS_SSE2) vpx_mse8x8 = vpx_mse8x8_sse2;
+ vpx_quantize_b = vpx_quantize_b_c;
+ if (flags & HAS_SSE2) vpx_quantize_b = vpx_quantize_b_sse2;
+ vpx_sad16x16 = vpx_sad16x16_c;
+ if (flags & HAS_MMX) vpx_sad16x16 = vpx_sad16x16_mmx;
+ if (flags & HAS_SSE2) vpx_sad16x16 = vpx_sad16x16_sse2;
+ vpx_sad16x16_avg = vpx_sad16x16_avg_c;
+ if (flags & HAS_SSE2) vpx_sad16x16_avg = vpx_sad16x16_avg_sse2;
+ vpx_sad16x16x3 = vpx_sad16x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x16x3 = vpx_sad16x16x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x16x3 = vpx_sad16x16x3_ssse3;
+ vpx_sad16x16x4d = vpx_sad16x16x4d_c;
+ if (flags & HAS_SSE2) vpx_sad16x16x4d = vpx_sad16x16x4d_sse2;
+ vpx_sad16x16x8 = vpx_sad16x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x16x8 = vpx_sad16x16x8_sse4_1;
+ vpx_sad16x32 = vpx_sad16x32_c;
+ if (flags & HAS_SSE2) vpx_sad16x32 = vpx_sad16x32_sse2;
+ vpx_sad16x32_avg = vpx_sad16x32_avg_c;
+ if (flags & HAS_SSE2) vpx_sad16x32_avg = vpx_sad16x32_avg_sse2;
+ vpx_sad16x32x4d = vpx_sad16x32x4d_c;
+ if (flags & HAS_SSE2) vpx_sad16x32x4d = vpx_sad16x32x4d_sse2;
+ vpx_sad16x8 = vpx_sad16x8_c;
+ if (flags & HAS_MMX) vpx_sad16x8 = vpx_sad16x8_mmx;
+ if (flags & HAS_SSE2) vpx_sad16x8 = vpx_sad16x8_sse2;
+ vpx_sad16x8_avg = vpx_sad16x8_avg_c;
+ if (flags & HAS_SSE2) vpx_sad16x8_avg = vpx_sad16x8_avg_sse2;
+ vpx_sad16x8x3 = vpx_sad16x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x8x3 = vpx_sad16x8x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x8x3 = vpx_sad16x8x3_ssse3;
+ vpx_sad16x8x4d = vpx_sad16x8x4d_c;
+ if (flags & HAS_SSE2) vpx_sad16x8x4d = vpx_sad16x8x4d_sse2;
+ vpx_sad16x8x8 = vpx_sad16x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x8x8 = vpx_sad16x8x8_sse4_1;
+ vpx_sad32x16 = vpx_sad32x16_c;
+ if (flags & HAS_SSE2) vpx_sad32x16 = vpx_sad32x16_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16 = vpx_sad32x16_avx2;
+ vpx_sad32x16_avg = vpx_sad32x16_avg_c;
+ if (flags & HAS_SSE2) vpx_sad32x16_avg = vpx_sad32x16_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16_avg = vpx_sad32x16_avg_avx2;
+ vpx_sad32x16x4d = vpx_sad32x16x4d_c;
+ if (flags & HAS_SSE2) vpx_sad32x16x4d = vpx_sad32x16x4d_sse2;
+ vpx_sad32x32 = vpx_sad32x32_c;
+ if (flags & HAS_SSE2) vpx_sad32x32 = vpx_sad32x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32 = vpx_sad32x32_avx2;
+ vpx_sad32x32_avg = vpx_sad32x32_avg_c;
+ if (flags & HAS_SSE2) vpx_sad32x32_avg = vpx_sad32x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32_avg = vpx_sad32x32_avg_avx2;
+ vpx_sad32x32x4d = vpx_sad32x32x4d_c;
+ if (flags & HAS_SSE2) vpx_sad32x32x4d = vpx_sad32x32x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32x4d = vpx_sad32x32x4d_avx2;
+ vpx_sad32x64 = vpx_sad32x64_c;
+ if (flags & HAS_SSE2) vpx_sad32x64 = vpx_sad32x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64 = vpx_sad32x64_avx2;
+ vpx_sad32x64_avg = vpx_sad32x64_avg_c;
+ if (flags & HAS_SSE2) vpx_sad32x64_avg = vpx_sad32x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64_avg = vpx_sad32x64_avg_avx2;
+ vpx_sad32x64x4d = vpx_sad32x64x4d_c;
+ if (flags & HAS_SSE2) vpx_sad32x64x4d = vpx_sad32x64x4d_sse2;
+ vpx_sad4x4 = vpx_sad4x4_c;
+ if (flags & HAS_MMX) vpx_sad4x4 = vpx_sad4x4_mmx;
+ if (flags & HAS_SSE) vpx_sad4x4 = vpx_sad4x4_sse;
+ vpx_sad4x4_avg = vpx_sad4x4_avg_c;
+ if (flags & HAS_SSE) vpx_sad4x4_avg = vpx_sad4x4_avg_sse;
+ vpx_sad4x4x3 = vpx_sad4x4x3_c;
+ if (flags & HAS_SSE3) vpx_sad4x4x3 = vpx_sad4x4x3_sse3;
+ vpx_sad4x4x4d = vpx_sad4x4x4d_c;
+ if (flags & HAS_SSE) vpx_sad4x4x4d = vpx_sad4x4x4d_sse;
+ vpx_sad4x4x8 = vpx_sad4x4x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad4x4x8 = vpx_sad4x4x8_sse4_1;
+ vpx_sad4x8 = vpx_sad4x8_c;
+ if (flags & HAS_SSE) vpx_sad4x8 = vpx_sad4x8_sse;
+ vpx_sad4x8_avg = vpx_sad4x8_avg_c;
+ if (flags & HAS_SSE) vpx_sad4x8_avg = vpx_sad4x8_avg_sse;
+ vpx_sad4x8x4d = vpx_sad4x8x4d_c;
+ if (flags & HAS_SSE) vpx_sad4x8x4d = vpx_sad4x8x4d_sse;
+ vpx_sad64x32 = vpx_sad64x32_c;
+ if (flags & HAS_SSE2) vpx_sad64x32 = vpx_sad64x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32 = vpx_sad64x32_avx2;
+ vpx_sad64x32_avg = vpx_sad64x32_avg_c;
+ if (flags & HAS_SSE2) vpx_sad64x32_avg = vpx_sad64x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32_avg = vpx_sad64x32_avg_avx2;
+ vpx_sad64x32x4d = vpx_sad64x32x4d_c;
+ if (flags & HAS_SSE2) vpx_sad64x32x4d = vpx_sad64x32x4d_sse2;
+ vpx_sad64x64 = vpx_sad64x64_c;
+ if (flags & HAS_SSE2) vpx_sad64x64 = vpx_sad64x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64 = vpx_sad64x64_avx2;
+ vpx_sad64x64_avg = vpx_sad64x64_avg_c;
+ if (flags & HAS_SSE2) vpx_sad64x64_avg = vpx_sad64x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64_avg = vpx_sad64x64_avg_avx2;
+ vpx_sad64x64x4d = vpx_sad64x64x4d_c;
+ if (flags & HAS_SSE2) vpx_sad64x64x4d = vpx_sad64x64x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64x4d = vpx_sad64x64x4d_avx2;
+ vpx_sad8x16 = vpx_sad8x16_c;
+ if (flags & HAS_MMX) vpx_sad8x16 = vpx_sad8x16_mmx;
+ if (flags & HAS_SSE2) vpx_sad8x16 = vpx_sad8x16_sse2;
+ vpx_sad8x16_avg = vpx_sad8x16_avg_c;
+ if (flags & HAS_SSE2) vpx_sad8x16_avg = vpx_sad8x16_avg_sse2;
+ vpx_sad8x16x3 = vpx_sad8x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x16x3 = vpx_sad8x16x3_sse3;
+ vpx_sad8x16x4d = vpx_sad8x16x4d_c;
+ if (flags & HAS_SSE2) vpx_sad8x16x4d = vpx_sad8x16x4d_sse2;
+ vpx_sad8x16x8 = vpx_sad8x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x16x8 = vpx_sad8x16x8_sse4_1;
+ vpx_sad8x4 = vpx_sad8x4_c;
+ if (flags & HAS_SSE2) vpx_sad8x4 = vpx_sad8x4_sse2;
+ vpx_sad8x4_avg = vpx_sad8x4_avg_c;
+ if (flags & HAS_SSE2) vpx_sad8x4_avg = vpx_sad8x4_avg_sse2;
+ vpx_sad8x4x4d = vpx_sad8x4x4d_c;
+ if (flags & HAS_SSE2) vpx_sad8x4x4d = vpx_sad8x4x4d_sse2;
+ vpx_sad8x8 = vpx_sad8x8_c;
+ if (flags & HAS_MMX) vpx_sad8x8 = vpx_sad8x8_mmx;
+ if (flags & HAS_SSE2) vpx_sad8x8 = vpx_sad8x8_sse2;
+ vpx_sad8x8_avg = vpx_sad8x8_avg_c;
+ if (flags & HAS_SSE2) vpx_sad8x8_avg = vpx_sad8x8_avg_sse2;
+ vpx_sad8x8x3 = vpx_sad8x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x8x3 = vpx_sad8x8x3_sse3;
+ vpx_sad8x8x4d = vpx_sad8x8x4d_c;
+ if (flags & HAS_SSE2) vpx_sad8x8x4d = vpx_sad8x8x4d_sse2;
+ vpx_sad8x8x8 = vpx_sad8x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x8x8 = vpx_sad8x8x8_sse4_1;
+ vpx_scaled_2d = vpx_scaled_2d_c;
+ if (flags & HAS_SSSE3) vpx_scaled_2d = vpx_scaled_2d_ssse3;
+ vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_ssse3;
+ vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_ssse3;
+ vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_ssse3;
+ vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_ssse3;
+ vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_avx2;
+ vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_ssse3;
+ vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_c;
+ if (flags & HAS_SSE) vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_ssse3;
+ vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_c;
+ if (flags & HAS_SSE) vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_ssse3;
+ vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_ssse3;
+ vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_avx2;
+ vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_ssse3;
+ vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_ssse3;
+ vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_ssse3;
+ vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_ssse3;
+ vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_ssse3;
+ vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_ssse3;
+ vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_ssse3;
+ vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_avx2;
+ vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_ssse3;
+ vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_mmx;
+ if (flags & HAS_SSE) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_ssse3;
+ vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_c;
+ if (flags & HAS_SSE) vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_ssse3;
+ vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_ssse3;
+ vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_avx2;
+ vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_ssse3;
+ vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_ssse3;
+ vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_ssse3;
+ vpx_subtract_block = vpx_subtract_block_c;
+ if (flags & HAS_SSE2) vpx_subtract_block = vpx_subtract_block_sse2;
+ vpx_tm_predictor_16x16 = vpx_tm_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_tm_predictor_16x16 = vpx_tm_predictor_16x16_sse2;
+ vpx_tm_predictor_4x4 = vpx_tm_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_tm_predictor_4x4 = vpx_tm_predictor_4x4_sse;
+ vpx_tm_predictor_8x8 = vpx_tm_predictor_8x8_c;
+ if (flags & HAS_SSE2) vpx_tm_predictor_8x8 = vpx_tm_predictor_8x8_sse2;
+ vpx_v_predictor_16x16 = vpx_v_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_v_predictor_16x16 = vpx_v_predictor_16x16_sse2;
+ vpx_v_predictor_32x32 = vpx_v_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_v_predictor_32x32 = vpx_v_predictor_32x32_sse2;
+ vpx_v_predictor_4x4 = vpx_v_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_v_predictor_4x4 = vpx_v_predictor_4x4_sse;
+ vpx_v_predictor_8x8 = vpx_v_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_v_predictor_8x8 = vpx_v_predictor_8x8_sse;
+ vpx_variance16x16 = vpx_variance16x16_c;
+ if (flags & HAS_MMX) vpx_variance16x16 = vpx_variance16x16_mmx;
+ if (flags & HAS_SSE2) vpx_variance16x16 = vpx_variance16x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance16x16 = vpx_variance16x16_avx2;
+ vpx_variance16x32 = vpx_variance16x32_c;
+ if (flags & HAS_SSE2) vpx_variance16x32 = vpx_variance16x32_sse2;
+ vpx_variance16x8 = vpx_variance16x8_c;
+ if (flags & HAS_MMX) vpx_variance16x8 = vpx_variance16x8_mmx;
+ if (flags & HAS_SSE2) vpx_variance16x8 = vpx_variance16x8_sse2;
+ vpx_variance32x16 = vpx_variance32x16_c;
+ if (flags & HAS_SSE2) vpx_variance32x16 = vpx_variance32x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x16 = vpx_variance32x16_avx2;
+ vpx_variance32x32 = vpx_variance32x32_c;
+ if (flags & HAS_SSE2) vpx_variance32x32 = vpx_variance32x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x32 = vpx_variance32x32_avx2;
+ vpx_variance32x64 = vpx_variance32x64_c;
+ if (flags & HAS_SSE2) vpx_variance32x64 = vpx_variance32x64_sse2;
+ vpx_variance4x4 = vpx_variance4x4_c;
+ if (flags & HAS_MMX) vpx_variance4x4 = vpx_variance4x4_mmx;
+ if (flags & HAS_SSE2) vpx_variance4x4 = vpx_variance4x4_sse2;
+ vpx_variance4x8 = vpx_variance4x8_c;
+ if (flags & HAS_SSE2) vpx_variance4x8 = vpx_variance4x8_sse2;
+ vpx_variance64x32 = vpx_variance64x32_c;
+ if (flags & HAS_SSE2) vpx_variance64x32 = vpx_variance64x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x32 = vpx_variance64x32_avx2;
+ vpx_variance64x64 = vpx_variance64x64_c;
+ if (flags & HAS_SSE2) vpx_variance64x64 = vpx_variance64x64_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x64 = vpx_variance64x64_avx2;
+ vpx_variance8x16 = vpx_variance8x16_c;
+ if (flags & HAS_MMX) vpx_variance8x16 = vpx_variance8x16_mmx;
+ if (flags & HAS_SSE2) vpx_variance8x16 = vpx_variance8x16_sse2;
+ vpx_variance8x4 = vpx_variance8x4_c;
+ if (flags & HAS_SSE2) vpx_variance8x4 = vpx_variance8x4_sse2;
+ vpx_variance8x8 = vpx_variance8x8_c;
+ if (flags & HAS_MMX) vpx_variance8x8 = vpx_variance8x8_mmx;
+ if (flags & HAS_SSE2) vpx_variance8x8 = vpx_variance8x8_sse2;
+ vpx_variance_halfpixvar16x16_h = vpx_variance_halfpixvar16x16_h_c;
+ if (flags & HAS_MMX) vpx_variance_halfpixvar16x16_h = vpx_variance_halfpixvar16x16_h_mmx;
+ if (flags & HAS_SSE2) vpx_variance_halfpixvar16x16_h = vpx_variance_halfpixvar16x16_h_sse2;
+ vpx_variance_halfpixvar16x16_hv = vpx_variance_halfpixvar16x16_hv_c;
+ if (flags & HAS_MMX) vpx_variance_halfpixvar16x16_hv = vpx_variance_halfpixvar16x16_hv_mmx;
+ if (flags & HAS_SSE2) vpx_variance_halfpixvar16x16_hv = vpx_variance_halfpixvar16x16_hv_sse2;
+ vpx_variance_halfpixvar16x16_v = vpx_variance_halfpixvar16x16_v_c;
+ if (flags & HAS_MMX) vpx_variance_halfpixvar16x16_v = vpx_variance_halfpixvar16x16_v_mmx;
+ if (flags & HAS_SSE2) vpx_variance_halfpixvar16x16_v = vpx_variance_halfpixvar16x16_v_sse2;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/ia32/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/linux/ia32/vpx_scale_rtcd.h
new file mode 100644
index 0000000..ddf7d01
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/ia32/vpx_scale_rtcd.h
@@ -0,0 +1,69 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/mips64el/vp8_rtcd.h b/third_party/libvpx_new/source/config/linux/mips64el/vp8_rtcd.h
new file mode 100644
index 0000000..a023cfa
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mips64el/vp8_rtcd.h
@@ -0,0 +1,208 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict16x16 vp8_bilinear_predict16x16_c
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_c
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_c
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x8 vp8_bilinear_predict8x8_c
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_c
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+#define vp8_build_intra_predictors_mbuv_s vp8_build_intra_predictors_mbuv_s_c
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+#define vp8_build_intra_predictors_mby_s vp8_build_intra_predictors_mby_s_c
+
+void vp8_clear_system_state_c();
+#define vp8_clear_system_state vp8_clear_system_state_c
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem16x16 vp8_copy_mem16x16_c
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x4 vp8_copy_mem8x4_c
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x8 vp8_copy_mem8x8_c
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+#define vp8_dc_only_idct_add vp8_dc_only_idct_add_c
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter vp8_denoiser_filter_c
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_c
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+#define vp8_dequant_idct_add vp8_dequant_idct_add_c
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_c
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_c
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+#define vp8_dequantize_b vp8_dequantize_b_c
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_diamond_search_sad vp8_diamond_search_sad_c
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+#define vp8_fast_quantize_b vp8_fast_quantize_b_c
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_c
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_c
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_full_search_sad vp8_full_search_sad_c
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_c
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bh vp8_loop_filter_bh_c
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bv vp8_loop_filter_bv_c
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbh vp8_loop_filter_mbh_c
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbv vp8_loop_filter_mbv_c
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_c
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_c
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbh vp8_loop_filter_simple_horizontal_edge_c
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbv vp8_loop_filter_simple_vertical_edge_c
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_c
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_c
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_down vp8_mbpost_proc_down_c
+
+int vp8_mbuverror_c(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_c
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+#define vp8_plane_add_noise vp8_plane_add_noise_c
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_c
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_refining_search_sad vp8_refining_search_sad_c
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+#define vp8_regular_quantize_b vp8_regular_quantize_b_c
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+#define vp8_short_fdct4x4 vp8_short_fdct4x4_c
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+#define vp8_short_fdct8x4 vp8_short_fdct8x4_c
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+#define vp8_short_idct4x4llm vp8_short_idct4x4llm_c
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_c
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+#define vp8_short_walsh4x4 vp8_short_walsh4x4_c
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict16x16 vp8_sixtap_predict16x16_c
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict4x4 vp8_sixtap_predict4x4_c
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x4 vp8_sixtap_predict8x4_c
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x8 vp8_sixtap_predict8x8_c
+
+void vp8_temporal_filter_apply_c(unsigned char *frame1, unsigned int stride, unsigned char *frame2, unsigned int block_size, int strength, int filter_weight, unsigned int *accumulator, unsigned short *count);
+#define vp8_temporal_filter_apply vp8_temporal_filter_apply_c
+
+void vp8_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/mips64el/vp9_rtcd.h b/third_party/libvpx_new/source/config/linux/mips64el/vp9_rtcd.h
new file mode 100644
index 0000000..b50359b
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mips64el/vp9_rtcd.h
@@ -0,0 +1,142 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+#define vp9_avg_4x4 vp9_avg_4x4_c
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+#define vp9_avg_8x8 vp9_avg_8x8_c
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+#define vp9_block_error vp9_block_error_c
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+#define vp9_block_error_fp vp9_block_error_fp_c
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+#define vp9_denoiser_filter vp9_denoiser_filter_c
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_fdct8x8_quant vp9_fdct8x8_quant_c
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_c
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_c
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_c
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_c
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_c
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+#define vp9_full_search_sad vp9_full_search_sad_c
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_c
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_16x16 vp9_hadamard_16x16_c
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_8x8 vp9_hadamard_8x8_c
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_c
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht4x4_16_add vp9_iht4x4_16_add_c
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht8x8_64_add vp9_iht8x8_64_add_c
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+#define vp9_int_pro_col vp9_int_pro_col_c
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+#define vp9_int_pro_row vp9_int_pro_row_c
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_c
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_down vp9_mbpost_proc_down_c
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vp9_minmax_8x8 vp9_minmax_8x8_c
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+#define vp9_plane_add_noise vp9_plane_add_noise_c
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+#define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_c
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp vp9_quantize_fp_c
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+#define vp9_satd vp9_satd_c
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+#define vp9_temporal_filter_apply vp9_temporal_filter_apply_c
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+#define vp9_vector_var vp9_vector_var_c
+
+void vp9_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/mips64el/vpx_config.c b/third_party/libvpx_new/source/config/linux/mips64el/vpx_config.c
new file mode 100644
index 0000000..9e6876b
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mips64el/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=mips64-linux-gcc --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/linux/mips64el/vpx_config.h b/third_party/libvpx_new/source/config/linux/mips64el/vpx_config.h
new file mode 100644
index 0000000..fa1b533
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mips64el/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 0
+#define ARCH_MIPS 1
+#define ARCH_X86 0
+#define ARCH_X86_64 0
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 0
+#define HAVE_NEON 0
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 1
+#define HAVE_MMX 0
+#define HAVE_SSE 0
+#define HAVE_SSE2 0
+#define HAVE_SSE3 0
+#define HAVE_SSSE3 0
+#define HAVE_SSE4_1 0
+#define HAVE_AVX 0
+#define HAVE_AVX2 0
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 0
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 0
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 1
+#define CONFIG_DC_RECON 1
+#define CONFIG_RUNTIME_CPU_DETECT 0
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 0
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/linux/mips64el/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/linux/mips64el/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..010cbe7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mips64el/vpx_dsp_rtcd.h
@@ -0,0 +1,660 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8 vpx_convolve8_c
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg vpx_convolve8_avg_c
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_horiz vpx_convolve8_avg_horiz_c
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_vert vpx_convolve8_avg_vert_c
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_horiz vpx_convolve8_horiz_c
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_vert vpx_convolve8_vert_c
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_avg vpx_convolve_avg_c
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_copy vpx_convolve_copy_c
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_16x16 vpx_d153_predictor_16x16_c
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_32x32 vpx_d153_predictor_32x32_c
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_4x4 vpx_d153_predictor_4x4_c
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_8x8 vpx_d153_predictor_8x8_c
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_16x16 vpx_d207_predictor_16x16_c
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_32x32 vpx_d207_predictor_32x32_c
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_4x4 vpx_d207_predictor_4x4_c
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_8x8 vpx_d207_predictor_8x8_c
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_16x16 vpx_d45_predictor_16x16_c
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_32x32 vpx_d45_predictor_32x32_c
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_4x4 vpx_d45_predictor_4x4_c
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_8x8 vpx_d45_predictor_8x8_c
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_16x16 vpx_d63_predictor_16x16_c
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_32x32 vpx_d63_predictor_32x32_c
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_4x4 vpx_d63_predictor_4x4_c
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_8x8 vpx_d63_predictor_8x8_c
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_c
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_c
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_c
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_c
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_c
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_c
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_c
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_c
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_c
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_c
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_c
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_c
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_c
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_c
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_c
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_c
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_c
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_c
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32 vpx_fdct32x32_c
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_c
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_rd vpx_fdct32x32_rd_c
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_c
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_c
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8 vpx_fdct8x8_c
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8_1 vpx_fdct8x8_1_c
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get16x16var vpx_get16x16var_c
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get8x8var vpx_get8x8var_c
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_c
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_16x16 vpx_h_predictor_16x16_c
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_32x32 vpx_h_predictor_32x32_c
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_4x4 vpx_h_predictor_4x4_c
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_8x8 vpx_h_predictor_8x8_c
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_10_add vpx_idct16x16_10_add_c
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_1_add vpx_idct16x16_1_add_c
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_256_add vpx_idct16x16_256_add_c
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_c
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1_add vpx_idct32x32_1_add_c
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_34_add vpx_idct32x32_34_add_c
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_16_add vpx_idct4x4_16_add_c
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_1_add vpx_idct4x4_1_add_c
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_12_add vpx_idct8x8_12_add_c
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_1_add vpx_idct8x8_1_add_c
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_64_add vpx_idct8x8_64_add_c
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_c
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_16 vpx_lpf_horizontal_16_c
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_c
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_c
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_c
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_c
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16 vpx_lpf_vertical_16_c
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_c
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_4 vpx_lpf_vertical_4_c
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_c
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_8 vpx_lpf_vertical_8_c
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_c
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x16 vpx_mse16x16_c
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x8 vpx_mse16x8_c
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_c
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_c
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b vpx_quantize_b_c
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x16 vpx_sad16x16_c
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_c
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x3 vpx_sad16x16x3_c
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x4d vpx_sad16x16x4d_c
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x8 vpx_sad16x16x8_c
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_c
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_c
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_c
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x8 vpx_sad16x8_c
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_c
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x3 vpx_sad16x8x3_c
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_c
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x8 vpx_sad16x8x8_c
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x16 vpx_sad32x16_c
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x16_avg vpx_sad32x16_avg_c
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_c
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x32 vpx_sad32x32_c
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x32_avg vpx_sad32x32_avg_c
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x4d vpx_sad32x32x4d_c
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x64 vpx_sad32x64_c
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x64_avg vpx_sad32x64_avg_c
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_c
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x4 vpx_sad4x4_c
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_c
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x3 vpx_sad4x4x3_c
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_c
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x8 vpx_sad4x4x8_c
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_c
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_c
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_c
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x32 vpx_sad64x32_c
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x32_avg vpx_sad64x32_avg_c
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_c
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x64 vpx_sad64x64_c
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x64_avg vpx_sad64x64_avg_c
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x4d vpx_sad64x64x4d_c
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x16 vpx_sad8x16_c
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_c
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x3 vpx_sad8x16x3_c
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_c
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x8 vpx_sad8x16x8_c
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_c
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_c
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_c
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x8 vpx_sad8x8_c
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_c
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x3 vpx_sad8x8x3_c
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_c
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x8 vpx_sad8x8x8_c
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_2d vpx_scaled_2d_c
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x16 vpx_sub_pixel_avg_variance16x16_c
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x32 vpx_sub_pixel_avg_variance16x32_c
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x8 vpx_sub_pixel_avg_variance16x8_c
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x16 vpx_sub_pixel_avg_variance32x16_c
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x32 vpx_sub_pixel_avg_variance32x32_c
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x64 vpx_sub_pixel_avg_variance32x64_c
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x4 vpx_sub_pixel_avg_variance4x4_c
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x8 vpx_sub_pixel_avg_variance4x8_c
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x32 vpx_sub_pixel_avg_variance64x32_c
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x64 vpx_sub_pixel_avg_variance64x64_c
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x16 vpx_sub_pixel_avg_variance8x16_c
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x4 vpx_sub_pixel_avg_variance8x4_c
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x8 vpx_sub_pixel_avg_variance8x8_c
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x16 vpx_sub_pixel_variance16x16_c
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x32 vpx_sub_pixel_variance16x32_c
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x8 vpx_sub_pixel_variance16x8_c
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x16 vpx_sub_pixel_variance32x16_c
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x32 vpx_sub_pixel_variance32x32_c
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x64 vpx_sub_pixel_variance32x64_c
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x4 vpx_sub_pixel_variance4x4_c
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x8 vpx_sub_pixel_variance4x8_c
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x32 vpx_sub_pixel_variance64x32_c
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x64 vpx_sub_pixel_variance64x64_c
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x16 vpx_sub_pixel_variance8x16_c
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x4 vpx_sub_pixel_variance8x4_c
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x8 vpx_sub_pixel_variance8x8_c
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+#define vpx_subtract_block vpx_subtract_block_c
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_c
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_c
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_c
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_c
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_16x16 vpx_v_predictor_16x16_c
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_32x32 vpx_v_predictor_32x32_c
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_4x4 vpx_v_predictor_4x4_c
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_8x8 vpx_v_predictor_8x8_c
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x16 vpx_variance16x16_c
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x32 vpx_variance16x32_c
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x8 vpx_variance16x8_c
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x16 vpx_variance32x16_c
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x32 vpx_variance32x32_c
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x64 vpx_variance32x64_c
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_c
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_c
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x32 vpx_variance64x32_c
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x64 vpx_variance64x64_c
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x16 vpx_variance8x16_c
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_c
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x8 vpx_variance8x8_c
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_h vpx_variance_halfpixvar16x16_h_c
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_hv vpx_variance_halfpixvar16x16_hv_c
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_v vpx_variance_halfpixvar16x16_v_c
+
+void vpx_dsp_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/mips64el/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/linux/mips64el/vpx_scale_rtcd.h
new file mode 100644
index 0000000..f419cc7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mips64el/vpx_scale_rtcd.h
@@ -0,0 +1,66 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/mipsel/vp8_rtcd.h b/third_party/libvpx_new/source/config/linux/mipsel/vp8_rtcd.h
new file mode 100644
index 0000000..a023cfa
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mipsel/vp8_rtcd.h
@@ -0,0 +1,208 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict16x16 vp8_bilinear_predict16x16_c
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_c
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_c
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x8 vp8_bilinear_predict8x8_c
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_c
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+#define vp8_build_intra_predictors_mbuv_s vp8_build_intra_predictors_mbuv_s_c
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+#define vp8_build_intra_predictors_mby_s vp8_build_intra_predictors_mby_s_c
+
+void vp8_clear_system_state_c();
+#define vp8_clear_system_state vp8_clear_system_state_c
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem16x16 vp8_copy_mem16x16_c
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x4 vp8_copy_mem8x4_c
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x8 vp8_copy_mem8x8_c
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+#define vp8_dc_only_idct_add vp8_dc_only_idct_add_c
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter vp8_denoiser_filter_c
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_c
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+#define vp8_dequant_idct_add vp8_dequant_idct_add_c
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_c
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_c
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+#define vp8_dequantize_b vp8_dequantize_b_c
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_diamond_search_sad vp8_diamond_search_sad_c
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+#define vp8_fast_quantize_b vp8_fast_quantize_b_c
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_c
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_c
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_full_search_sad vp8_full_search_sad_c
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_c
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bh vp8_loop_filter_bh_c
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bv vp8_loop_filter_bv_c
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbh vp8_loop_filter_mbh_c
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbv vp8_loop_filter_mbv_c
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_c
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_c
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbh vp8_loop_filter_simple_horizontal_edge_c
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbv vp8_loop_filter_simple_vertical_edge_c
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_c
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_c
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_down vp8_mbpost_proc_down_c
+
+int vp8_mbuverror_c(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_c
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+#define vp8_plane_add_noise vp8_plane_add_noise_c
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_c
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_refining_search_sad vp8_refining_search_sad_c
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+#define vp8_regular_quantize_b vp8_regular_quantize_b_c
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+#define vp8_short_fdct4x4 vp8_short_fdct4x4_c
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+#define vp8_short_fdct8x4 vp8_short_fdct8x4_c
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+#define vp8_short_idct4x4llm vp8_short_idct4x4llm_c
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_c
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+#define vp8_short_walsh4x4 vp8_short_walsh4x4_c
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict16x16 vp8_sixtap_predict16x16_c
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict4x4 vp8_sixtap_predict4x4_c
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x4 vp8_sixtap_predict8x4_c
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x8 vp8_sixtap_predict8x8_c
+
+void vp8_temporal_filter_apply_c(unsigned char *frame1, unsigned int stride, unsigned char *frame2, unsigned int block_size, int strength, int filter_weight, unsigned int *accumulator, unsigned short *count);
+#define vp8_temporal_filter_apply vp8_temporal_filter_apply_c
+
+void vp8_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/mipsel/vp9_rtcd.h b/third_party/libvpx_new/source/config/linux/mipsel/vp9_rtcd.h
new file mode 100644
index 0000000..b50359b
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mipsel/vp9_rtcd.h
@@ -0,0 +1,142 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+#define vp9_avg_4x4 vp9_avg_4x4_c
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+#define vp9_avg_8x8 vp9_avg_8x8_c
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+#define vp9_block_error vp9_block_error_c
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+#define vp9_block_error_fp vp9_block_error_fp_c
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+#define vp9_denoiser_filter vp9_denoiser_filter_c
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_fdct8x8_quant vp9_fdct8x8_quant_c
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_c
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_c
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_c
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_c
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_c
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+#define vp9_full_search_sad vp9_full_search_sad_c
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_c
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_16x16 vp9_hadamard_16x16_c
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_8x8 vp9_hadamard_8x8_c
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_c
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht4x4_16_add vp9_iht4x4_16_add_c
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht8x8_64_add vp9_iht8x8_64_add_c
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+#define vp9_int_pro_col vp9_int_pro_col_c
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+#define vp9_int_pro_row vp9_int_pro_row_c
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_c
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_down vp9_mbpost_proc_down_c
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vp9_minmax_8x8 vp9_minmax_8x8_c
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+#define vp9_plane_add_noise vp9_plane_add_noise_c
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+#define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_c
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp vp9_quantize_fp_c
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+#define vp9_satd vp9_satd_c
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+#define vp9_temporal_filter_apply vp9_temporal_filter_apply_c
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+#define vp9_vector_var vp9_vector_var_c
+
+void vp9_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/mipsel/vpx_config.c b/third_party/libvpx_new/source/config/linux/mipsel/vpx_config.c
new file mode 100644
index 0000000..2c1375d
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mipsel/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=mips32-linux-gcc --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/linux/mipsel/vpx_config.h b/third_party/libvpx_new/source/config/linux/mipsel/vpx_config.h
new file mode 100644
index 0000000..affa479
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mipsel/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 0
+#define ARCH_MIPS 1
+#define ARCH_X86 0
+#define ARCH_X86_64 0
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 0
+#define HAVE_NEON 0
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 1
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 0
+#define HAVE_SSE 0
+#define HAVE_SSE2 0
+#define HAVE_SSE3 0
+#define HAVE_SSSE3 0
+#define HAVE_SSE4_1 0
+#define HAVE_AVX 0
+#define HAVE_AVX2 0
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 0
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 0
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 1
+#define CONFIG_DC_RECON 1
+#define CONFIG_RUNTIME_CPU_DETECT 0
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 0
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/linux/mipsel/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/linux/mipsel/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..010cbe7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mipsel/vpx_dsp_rtcd.h
@@ -0,0 +1,660 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8 vpx_convolve8_c
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg vpx_convolve8_avg_c
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_horiz vpx_convolve8_avg_horiz_c
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_vert vpx_convolve8_avg_vert_c
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_horiz vpx_convolve8_horiz_c
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_vert vpx_convolve8_vert_c
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_avg vpx_convolve_avg_c
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_copy vpx_convolve_copy_c
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_16x16 vpx_d153_predictor_16x16_c
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_32x32 vpx_d153_predictor_32x32_c
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_4x4 vpx_d153_predictor_4x4_c
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_8x8 vpx_d153_predictor_8x8_c
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_16x16 vpx_d207_predictor_16x16_c
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_32x32 vpx_d207_predictor_32x32_c
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_4x4 vpx_d207_predictor_4x4_c
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_8x8 vpx_d207_predictor_8x8_c
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_16x16 vpx_d45_predictor_16x16_c
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_32x32 vpx_d45_predictor_32x32_c
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_4x4 vpx_d45_predictor_4x4_c
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_8x8 vpx_d45_predictor_8x8_c
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_16x16 vpx_d63_predictor_16x16_c
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_32x32 vpx_d63_predictor_32x32_c
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_4x4 vpx_d63_predictor_4x4_c
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_8x8 vpx_d63_predictor_8x8_c
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_c
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_c
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_c
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_c
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_c
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_c
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_c
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_c
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_c
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_c
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_c
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_c
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_c
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_c
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_c
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_c
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_c
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_c
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32 vpx_fdct32x32_c
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_c
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_rd vpx_fdct32x32_rd_c
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_c
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_c
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8 vpx_fdct8x8_c
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8_1 vpx_fdct8x8_1_c
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get16x16var vpx_get16x16var_c
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get8x8var vpx_get8x8var_c
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_c
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_16x16 vpx_h_predictor_16x16_c
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_32x32 vpx_h_predictor_32x32_c
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_4x4 vpx_h_predictor_4x4_c
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_8x8 vpx_h_predictor_8x8_c
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_10_add vpx_idct16x16_10_add_c
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_1_add vpx_idct16x16_1_add_c
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_256_add vpx_idct16x16_256_add_c
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_c
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1_add vpx_idct32x32_1_add_c
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_34_add vpx_idct32x32_34_add_c
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_16_add vpx_idct4x4_16_add_c
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_1_add vpx_idct4x4_1_add_c
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_12_add vpx_idct8x8_12_add_c
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_1_add vpx_idct8x8_1_add_c
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_64_add vpx_idct8x8_64_add_c
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_c
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_16 vpx_lpf_horizontal_16_c
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_c
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_c
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_c
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_c
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16 vpx_lpf_vertical_16_c
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_c
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_4 vpx_lpf_vertical_4_c
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_c
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_8 vpx_lpf_vertical_8_c
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_c
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x16 vpx_mse16x16_c
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x8 vpx_mse16x8_c
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_c
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_c
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b vpx_quantize_b_c
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x16 vpx_sad16x16_c
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_c
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x3 vpx_sad16x16x3_c
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x4d vpx_sad16x16x4d_c
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x8 vpx_sad16x16x8_c
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_c
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_c
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_c
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x8 vpx_sad16x8_c
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_c
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x3 vpx_sad16x8x3_c
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_c
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x8 vpx_sad16x8x8_c
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x16 vpx_sad32x16_c
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x16_avg vpx_sad32x16_avg_c
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_c
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x32 vpx_sad32x32_c
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x32_avg vpx_sad32x32_avg_c
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x4d vpx_sad32x32x4d_c
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x64 vpx_sad32x64_c
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x64_avg vpx_sad32x64_avg_c
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_c
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x4 vpx_sad4x4_c
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_c
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x3 vpx_sad4x4x3_c
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_c
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x8 vpx_sad4x4x8_c
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_c
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_c
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_c
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x32 vpx_sad64x32_c
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x32_avg vpx_sad64x32_avg_c
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_c
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x64 vpx_sad64x64_c
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x64_avg vpx_sad64x64_avg_c
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x4d vpx_sad64x64x4d_c
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x16 vpx_sad8x16_c
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_c
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x3 vpx_sad8x16x3_c
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_c
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x8 vpx_sad8x16x8_c
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_c
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_c
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_c
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x8 vpx_sad8x8_c
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_c
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x3 vpx_sad8x8x3_c
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_c
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x8 vpx_sad8x8x8_c
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_2d vpx_scaled_2d_c
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x16 vpx_sub_pixel_avg_variance16x16_c
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x32 vpx_sub_pixel_avg_variance16x32_c
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x8 vpx_sub_pixel_avg_variance16x8_c
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x16 vpx_sub_pixel_avg_variance32x16_c
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x32 vpx_sub_pixel_avg_variance32x32_c
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x64 vpx_sub_pixel_avg_variance32x64_c
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x4 vpx_sub_pixel_avg_variance4x4_c
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x8 vpx_sub_pixel_avg_variance4x8_c
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x32 vpx_sub_pixel_avg_variance64x32_c
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x64 vpx_sub_pixel_avg_variance64x64_c
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x16 vpx_sub_pixel_avg_variance8x16_c
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x4 vpx_sub_pixel_avg_variance8x4_c
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x8 vpx_sub_pixel_avg_variance8x8_c
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x16 vpx_sub_pixel_variance16x16_c
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x32 vpx_sub_pixel_variance16x32_c
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x8 vpx_sub_pixel_variance16x8_c
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x16 vpx_sub_pixel_variance32x16_c
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x32 vpx_sub_pixel_variance32x32_c
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x64 vpx_sub_pixel_variance32x64_c
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x4 vpx_sub_pixel_variance4x4_c
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x8 vpx_sub_pixel_variance4x8_c
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x32 vpx_sub_pixel_variance64x32_c
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x64 vpx_sub_pixel_variance64x64_c
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x16 vpx_sub_pixel_variance8x16_c
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x4 vpx_sub_pixel_variance8x4_c
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x8 vpx_sub_pixel_variance8x8_c
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+#define vpx_subtract_block vpx_subtract_block_c
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_c
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_c
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_c
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_c
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_16x16 vpx_v_predictor_16x16_c
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_32x32 vpx_v_predictor_32x32_c
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_4x4 vpx_v_predictor_4x4_c
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_8x8 vpx_v_predictor_8x8_c
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x16 vpx_variance16x16_c
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x32 vpx_variance16x32_c
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x8 vpx_variance16x8_c
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x16 vpx_variance32x16_c
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x32 vpx_variance32x32_c
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x64 vpx_variance32x64_c
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_c
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_c
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x32 vpx_variance64x32_c
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x64 vpx_variance64x64_c
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x16 vpx_variance8x16_c
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_c
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x8 vpx_variance8x8_c
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_h vpx_variance_halfpixvar16x16_h_c
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_hv vpx_variance_halfpixvar16x16_hv_c
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_v vpx_variance_halfpixvar16x16_v_c
+
+void vpx_dsp_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/mipsel/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/linux/mipsel/vpx_scale_rtcd.h
new file mode 100644
index 0000000..f419cc7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/mipsel/vpx_scale_rtcd.h
@@ -0,0 +1,66 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/x64/vp8_rtcd.h b/third_party/libvpx_new/source/config/linux/x64/vp8_rtcd.h
new file mode 100644
index 0000000..ff9ac9f
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/x64/vp8_rtcd.h
@@ -0,0 +1,325 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_mmx
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_mmx
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+int vp8_block_error_mmx(short *coeff, short *dqcoeff);
+int vp8_block_error_xmm(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_xmm
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_sse2(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_ssse3(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mbuv_s)(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_sse2(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_ssse3(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mby_s)(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+
+void vp8_clear_system_state_c();
+void vpx_reset_mmx_state();
+#define vp8_clear_system_state vpx_reset_mmx_state
+
+void vp8_copy32xn_c(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse2(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse3(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+RTCD_EXTERN void (*vp8_copy32xn)(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_sse2(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem16x16 vp8_copy_mem16x16_sse2
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x4 vp8_copy_mem8x4_mmx
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x8 vp8_copy_mem8x8_mmx
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_mmx(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+#define vp8_dc_only_idct_add vp8_dc_only_idct_add_mmx
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_sse2(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter vp8_denoiser_filter_sse2
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_uv_sse2(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_sse2
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_mmx(short *input, short *dq, unsigned char *output, int stride);
+#define vp8_dequant_idct_add vp8_dequant_idct_add_mmx
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_mmx(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_sse2(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_sse2
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_mmx(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_sse2(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_sse2
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+void vp8_dequantize_b_mmx(struct blockd*, short *dqc);
+#define vp8_dequantize_b vp8_dequantize_b_mmx
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_diamond_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_diamond_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+void vp8_fast_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_fast_quantize_b_ssse3(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_fast_quantize_b)(struct block *, struct blockd *);
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight16x16_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_sse2
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight8x8_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_sse2
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx3(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx8(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_full_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_c
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bh vp8_loop_filter_bh_sse2
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bv vp8_loop_filter_bv_sse2
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbh vp8_loop_filter_mbh_sse2
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbv vp8_loop_filter_mbv_sse2
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_sse2
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_sse2
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbh vp8_loop_filter_simple_horizontal_edge_sse2
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbv vp8_loop_filter_simple_vertical_edge_sse2
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+int vp8_mbblock_error_mmx(struct macroblock *mb, int dc);
+int vp8_mbblock_error_xmm(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_xmm
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_across_ip_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_xmm
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_mmx(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_down vp8_mbpost_proc_down_xmm
+
+int vp8_mbuverror_c(struct macroblock *mb);
+int vp8_mbuverror_mmx(struct macroblock *mb);
+int vp8_mbuverror_xmm(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_xmm
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_mmx(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_wmt(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+#define vp8_plane_add_noise vp8_plane_add_noise_wmt
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+void vp8_post_proc_down_and_across_mb_row_sse2(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_sse2
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_refining_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_refining_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse4_1(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_regular_quantize_b)(struct block *, struct blockd *);
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_fdct4x4 vp8_short_fdct4x4_sse2
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_fdct8x4 vp8_short_fdct8x4_sse2
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_mmx(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+#define vp8_short_idct4x4llm vp8_short_idct4x4llm_mmx
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+void vp8_short_inv_walsh4x4_mmx(short *input, short *output);
+void vp8_short_inv_walsh4x4_sse2(short *input, short *output);
+#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_sse2
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_walsh4x4 vp8_short_walsh4x4_sse2
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict4x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_ssse3;
+ vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_ssse3;
+ vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_ssse3;
+ vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_ssse3;
+ vp8_copy32xn = vp8_copy32xn_sse2;
+ if (flags & HAS_SSE3) vp8_copy32xn = vp8_copy32xn_sse3;
+ vp8_diamond_search_sad = vp8_diamond_search_sad_c;
+ if (flags & HAS_SSE3) vp8_diamond_search_sad = vp8_diamond_search_sadx4;
+ vp8_fast_quantize_b = vp8_fast_quantize_b_sse2;
+ if (flags & HAS_SSSE3) vp8_fast_quantize_b = vp8_fast_quantize_b_ssse3;
+ vp8_full_search_sad = vp8_full_search_sad_c;
+ if (flags & HAS_SSE3) vp8_full_search_sad = vp8_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp8_full_search_sad = vp8_full_search_sadx8;
+ vp8_refining_search_sad = vp8_refining_search_sad_c;
+ if (flags & HAS_SSE3) vp8_refining_search_sad = vp8_refining_search_sadx4;
+ vp8_regular_quantize_b = vp8_regular_quantize_b_sse2;
+ if (flags & HAS_SSE4_1) vp8_regular_quantize_b = vp8_regular_quantize_b_sse4_1;
+ vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_ssse3;
+ vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_mmx;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_ssse3;
+ vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_ssse3;
+ vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_ssse3;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/x64/vp9_rtcd.h b/third_party/libvpx_new/source/config/linux/x64/vp9_rtcd.h
new file mode 100644
index 0000000..f3200861
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/x64/vp9_rtcd.h
@@ -0,0 +1,193 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+unsigned int vp9_avg_4x4_sse2(const uint8_t *, int p);
+#define vp9_avg_4x4 vp9_avg_4x4_sse2
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+unsigned int vp9_avg_8x8_sse2(const uint8_t *, int p);
+#define vp9_avg_8x8 vp9_avg_8x8_sse2
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_sse2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_avx2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+RTCD_EXTERN int64_t (*vp9_block_error)(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+int64_t vp9_block_error_fp_sse2(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+#define vp9_block_error_fp vp9_block_error_fp_sse2
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+int vp9_denoiser_filter_sse2(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+#define vp9_denoiser_filter vp9_denoiser_filter_sse2
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_sse2(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_ssse3(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_fdct8x8_quant)(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht16x16_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_sse2
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht4x4_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_sse2
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht8x8_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_sse2
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight16x16_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_sse2
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight8x8_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_sse2
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx3(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx8(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+RTCD_EXTERN int (*vp9_full_search_sad)(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vp9_fwht4x4_mmx(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_mmx
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_16x16_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_16x16 vp9_hadamard_16x16_sse2
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_8x8_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_8x8_ssse3(int16_t const *src_diff, int src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vp9_hadamard_8x8)(int16_t const *src_diff, int src_stride, int16_t *coeff);
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+void vp9_iht16x16_256_add_sse2(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_sse2
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht4x4_16_add vp9_iht4x4_16_add_sse2
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht8x8_64_add vp9_iht8x8_64_add_sse2
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+int16_t vp9_int_pro_col_sse2(uint8_t const *ref, const int width);
+#define vp9_int_pro_col vp9_int_pro_col_sse2
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+void vp9_int_pro_row_sse2(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+#define vp9_int_pro_row vp9_int_pro_row_sse2
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_across_ip_xmm(uint8_t *src, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_xmm
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_down_xmm(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_down vp9_mbpost_proc_down_xmm
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+void vp9_minmax_8x8_sse2(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vp9_minmax_8x8 vp9_minmax_8x8_sse2
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+void vp9_plane_add_noise_wmt(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+#define vp9_plane_add_noise vp9_plane_add_noise_wmt
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+void vp9_post_proc_down_and_across_xmm(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+#define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_xmm
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_32x32_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp_32x32)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+int16_t vp9_satd_sse2(const int16_t *coeff, int length);
+#define vp9_satd vp9_satd_sse2
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+void vp9_temporal_filter_apply_sse2(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+#define vp9_temporal_filter_apply vp9_temporal_filter_apply_sse2
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+int vp9_vector_var_sse2(int16_t const *ref, int16_t const *src, const int bwl);
+#define vp9_vector_var vp9_vector_var_sse2
+
+void vp9_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp9_block_error = vp9_block_error_sse2;
+ if (flags & HAS_AVX2) vp9_block_error = vp9_block_error_avx2;
+ vp9_fdct8x8_quant = vp9_fdct8x8_quant_sse2;
+ if (flags & HAS_SSSE3) vp9_fdct8x8_quant = vp9_fdct8x8_quant_ssse3;
+ vp9_full_search_sad = vp9_full_search_sad_c;
+ if (flags & HAS_SSE3) vp9_full_search_sad = vp9_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp9_full_search_sad = vp9_full_search_sadx8;
+ vp9_hadamard_8x8 = vp9_hadamard_8x8_sse2;
+ if (flags & HAS_SSSE3) vp9_hadamard_8x8 = vp9_hadamard_8x8_ssse3;
+ vp9_quantize_fp = vp9_quantize_fp_sse2;
+ if (flags & HAS_SSSE3) vp9_quantize_fp = vp9_quantize_fp_ssse3;
+ vp9_quantize_fp_32x32 = vp9_quantize_fp_32x32_c;
+ if (flags & HAS_SSSE3) vp9_quantize_fp_32x32 = vp9_quantize_fp_32x32_ssse3;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/x64/vpx_config.asm b/third_party/libvpx_new/source/config/linux/x64/vpx_config.asm
new file mode 100644
index 0000000..84a6b2b
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/x64/vpx_config.asm
@@ -0,0 +1,87 @@
+%define ARCH_ARM 0
+%define ARCH_MIPS 0
+%define ARCH_X86 0
+%define ARCH_X86_64 1
+%define HAVE_EDSP 0
+%define HAVE_MEDIA 0
+%define HAVE_NEON 0
+%define HAVE_NEON_ASM 0
+%define HAVE_MIPS32 0
+%define HAVE_DSPR2 0
+%define HAVE_MSA 0
+%define HAVE_MIPS64 0
+%define HAVE_MMX 1
+%define HAVE_SSE 1
+%define HAVE_SSE2 1
+%define HAVE_SSE3 1
+%define HAVE_SSSE3 1
+%define HAVE_SSE4_1 1
+%define HAVE_AVX 1
+%define HAVE_AVX2 1
+%define HAVE_VPX_PORTS 1
+%define HAVE_STDINT_H 1
+%define HAVE_PTHREAD_H 1
+%define HAVE_SYS_MMAN_H 1
+%define HAVE_UNISTD_H 0
+%define CONFIG_DEPENDENCY_TRACKING 1
+%define CONFIG_EXTERNAL_BUILD 1
+%define CONFIG_INSTALL_DOCS 0
+%define CONFIG_INSTALL_BINS 1
+%define CONFIG_INSTALL_LIBS 1
+%define CONFIG_INSTALL_SRCS 0
+%define CONFIG_USE_X86INC 1
+%define CONFIG_DEBUG 0
+%define CONFIG_GPROF 0
+%define CONFIG_GCOV 0
+%define CONFIG_RVCT 0
+%define CONFIG_GCC 1
+%define CONFIG_MSVS 0
+%define CONFIG_PIC 1
+%define CONFIG_BIG_ENDIAN 0
+%define CONFIG_CODEC_SRCS 0
+%define CONFIG_DEBUG_LIBS 0
+%define CONFIG_DEQUANT_TOKENS 0
+%define CONFIG_DC_RECON 0
+%define CONFIG_RUNTIME_CPU_DETECT 1
+%define CONFIG_POSTPROC 1
+%define CONFIG_VP9_POSTPROC 1
+%define CONFIG_MULTITHREAD 1
+%define CONFIG_INTERNAL_STATS 0
+%define CONFIG_VP8_ENCODER 1
+%define CONFIG_VP8_DECODER 1
+%define CONFIG_VP9_ENCODER 1
+%define CONFIG_VP9_DECODER 1
+%define CONFIG_VP10_ENCODER 0
+%define CONFIG_VP10_DECODER 0
+%define CONFIG_VP8 1
+%define CONFIG_VP9 1
+%define CONFIG_VP10 0
+%define CONFIG_ENCODERS 1
+%define CONFIG_DECODERS 1
+%define CONFIG_STATIC_MSVCRT 0
+%define CONFIG_SPATIAL_RESAMPLING 1
+%define CONFIG_REALTIME_ONLY 1
+%define CONFIG_ONTHEFLY_BITPACKING 0
+%define CONFIG_ERROR_CONCEALMENT 0
+%define CONFIG_SHARED 0
+%define CONFIG_STATIC 1
+%define CONFIG_SMALL 0
+%define CONFIG_POSTPROC_VISUALIZER 0
+%define CONFIG_OS_SUPPORT 1
+%define CONFIG_UNIT_TESTS 0
+%define CONFIG_WEBM_IO 1
+%define CONFIG_LIBYUV 1
+%define CONFIG_DECODE_PERF_TESTS 0
+%define CONFIG_ENCODE_PERF_TESTS 0
+%define CONFIG_MULTI_RES_ENCODING 1
+%define CONFIG_TEMPORAL_DENOISING 1
+%define CONFIG_VP9_TEMPORAL_DENOISING 1
+%define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+%define CONFIG_VP9_HIGHBITDEPTH 0
+%define CONFIG_EXPERIMENTAL 0
+%define CONFIG_SIZE_LIMIT 1
+%define CONFIG_SPATIAL_SVC 0
+%define CONFIG_FP_MB_STATS 0
+%define CONFIG_EMULATE_HARDWARE 0
+%define DECODE_WIDTH_LIMIT 16384
+%define DECODE_HEIGHT_LIMIT 16384
diff --git a/third_party/libvpx_new/source/config/linux/x64/vpx_config.c b/third_party/libvpx_new/source/config/linux/x64/vpx_config.c
new file mode 100644
index 0000000..4f190b1
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/x64/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=x86_64-linux-gcc --disable-ccache --enable-pic --enable-realtime-only --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/linux/x64/vpx_config.h b/third_party/libvpx_new/source/config/linux/x64/vpx_config.h
new file mode 100644
index 0000000..a1cd9ff
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/x64/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 0
+#define ARCH_MIPS 0
+#define ARCH_X86 0
+#define ARCH_X86_64 1
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 0
+#define HAVE_NEON 0
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 1
+#define HAVE_SSE 1
+#define HAVE_SSE2 1
+#define HAVE_SSE3 1
+#define HAVE_SSSE3 1
+#define HAVE_SSE4_1 1
+#define HAVE_AVX 1
+#define HAVE_AVX2 1
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 1
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 1
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/linux/x64/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/linux/x64/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..7cf74d2
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/x64/vpx_dsp_rtcd.h
@@ -0,0 +1,1126 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_avg vpx_convolve_avg_sse2
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_copy_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_copy vpx_convolve_copy_sse2
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_sse2
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_sse2
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_sse
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_sse
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_sse2
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_sse2
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_sse
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_sse
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_sse2
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_sse2
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_sse
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_sse
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_sse2
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_sse2
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_sse
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_sse
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_sse2
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_sse2
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_sse2
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32_rd)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_sse2
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_sse2
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_ssse3(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8_1 vpx_fdct8x8_1_sse2
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get16x16var)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get8x8var vpx_get8x8var_sse2
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+unsigned int vpx_get_mb_ss_mmx(const int16_t *);
+unsigned int vpx_get_mb_ss_sse2(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_sse2
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_10_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_10_add vpx_idct16x16_10_add_sse2
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_1_add vpx_idct16x16_1_add_sse2
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_256_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_256_add vpx_idct16x16_256_add_sse2
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1024_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_sse2
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1_add vpx_idct32x32_1_add_sse2
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_34_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_34_add vpx_idct32x32_34_add_sse2
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_16_add vpx_idct4x4_16_add_sse2
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_1_add vpx_idct4x4_1_add_sse2
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_ssse3(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_12_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_1_add vpx_idct8x8_1_add_sse2
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_ssse3(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_64_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_iwht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_sse2
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_avx2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_mmx
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_sse2
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_sse2
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_sse2
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16 vpx_lpf_vertical_16_sse2
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_sse2
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_4 vpx_lpf_vertical_4_mmx
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_sse2
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_8 vpx_lpf_vertical_8_sse2
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_sse2
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x8 vpx_mse16x8_sse2
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_sse2
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_sse2
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vpx_quantize_b)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_32x32_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vpx_quantize_b_32x32)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x16 vpx_sad16x16_sse2
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_sse2
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x4d vpx_sad16x16x4d_sse2
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_sse2
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_sse2
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_sse2
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x8 vpx_sad16x8_sse2
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_sse2
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_sse2
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_sse2
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_sse2
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x4 vpx_sad4x4_sse
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x4_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_sse
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_sse
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x8_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_sse
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x8_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_sse
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x8x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_sse
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_sse2
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad64x64x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x16 vpx_sad8x16_sse2
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_sse2
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_sse2
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x4_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_sse2
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x4_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_sse2
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x4x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_sse2
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x8 vpx_sad8x8_sse2
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_sse2
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_sse2
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_scaled_2d_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_scaled_2d)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+void vpx_subtract_block_sse2(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+#define vpx_subtract_block vpx_subtract_block_sse2
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_sse2
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_sse2
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_sse
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_sse2
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_16x16 vpx_v_predictor_16x16_sse2
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_32x32 vpx_v_predictor_32x32_sse2
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_4x4 vpx_v_predictor_4x4_sse
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_8x8 vpx_v_predictor_8x8_sse
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x32 vpx_variance16x32_sse2
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x8 vpx_variance16x8_sse2
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x64 vpx_variance32x64_sse2
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_sse2
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_sse2
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x64)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x16 vpx_variance8x16_sse2
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_sse2
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x8 vpx_variance8x8_sse2
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_h vpx_variance_halfpixvar16x16_h_sse2
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_hv vpx_variance_halfpixvar16x16_hv_sse2
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_v vpx_variance_halfpixvar16x16_v_sse2
+
+void vpx_dsp_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vpx_convolve8 = vpx_convolve8_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8 = vpx_convolve8_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8 = vpx_convolve8_avx2;
+ vpx_convolve8_avg = vpx_convolve8_avg_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg = vpx_convolve8_avg_ssse3;
+ vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_ssse3;
+ vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_ssse3;
+ vpx_convolve8_horiz = vpx_convolve8_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_horiz = vpx_convolve8_horiz_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_horiz = vpx_convolve8_horiz_avx2;
+ vpx_convolve8_vert = vpx_convolve8_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_vert = vpx_convolve8_vert_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_vert = vpx_convolve8_vert_avx2;
+ vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_ssse3;
+ vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_ssse3;
+ vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_ssse3;
+ vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_ssse3;
+ vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_ssse3;
+ vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_ssse3;
+ vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_ssse3;
+ vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_ssse3;
+ vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_ssse3;
+ vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_ssse3;
+ vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_ssse3;
+ vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_ssse3;
+ vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_ssse3;
+ vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_ssse3;
+ vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_ssse3;
+ vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_ssse3;
+ vpx_fdct32x32 = vpx_fdct32x32_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32 = vpx_fdct32x32_avx2;
+ vpx_fdct32x32_rd = vpx_fdct32x32_rd_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32_rd = vpx_fdct32x32_rd_avx2;
+ vpx_fdct8x8 = vpx_fdct8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_fdct8x8 = vpx_fdct8x8_ssse3;
+ vpx_get16x16var = vpx_get16x16var_sse2;
+ if (flags & HAS_AVX2) vpx_get16x16var = vpx_get16x16var_avx2;
+ vpx_h_predictor_16x16 = vpx_h_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_16x16 = vpx_h_predictor_16x16_ssse3;
+ vpx_h_predictor_32x32 = vpx_h_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_32x32 = vpx_h_predictor_32x32_ssse3;
+ vpx_h_predictor_4x4 = vpx_h_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_4x4 = vpx_h_predictor_4x4_ssse3;
+ vpx_h_predictor_8x8 = vpx_h_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_8x8 = vpx_h_predictor_8x8_ssse3;
+ vpx_idct8x8_12_add = vpx_idct8x8_12_add_sse2;
+ if (flags & HAS_SSSE3) vpx_idct8x8_12_add = vpx_idct8x8_12_add_ssse3;
+ vpx_idct8x8_64_add = vpx_idct8x8_64_add_sse2;
+ if (flags & HAS_SSSE3) vpx_idct8x8_64_add = vpx_idct8x8_64_add_ssse3;
+ vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_sse2;
+ if (flags & HAS_AVX2) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_avx2;
+ vpx_mse16x16 = vpx_mse16x16_sse2;
+ if (flags & HAS_AVX2) vpx_mse16x16 = vpx_mse16x16_avx2;
+ vpx_quantize_b = vpx_quantize_b_sse2;
+ if (flags & HAS_SSSE3) vpx_quantize_b = vpx_quantize_b_ssse3;
+ vpx_quantize_b_32x32 = vpx_quantize_b_32x32_c;
+ if (flags & HAS_SSSE3) vpx_quantize_b_32x32 = vpx_quantize_b_32x32_ssse3;
+ vpx_sad16x16x3 = vpx_sad16x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x16x3 = vpx_sad16x16x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x16x3 = vpx_sad16x16x3_ssse3;
+ vpx_sad16x16x8 = vpx_sad16x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x16x8 = vpx_sad16x16x8_sse4_1;
+ vpx_sad16x8x3 = vpx_sad16x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x8x3 = vpx_sad16x8x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x8x3 = vpx_sad16x8x3_ssse3;
+ vpx_sad16x8x8 = vpx_sad16x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x8x8 = vpx_sad16x8x8_sse4_1;
+ vpx_sad32x16 = vpx_sad32x16_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16 = vpx_sad32x16_avx2;
+ vpx_sad32x16_avg = vpx_sad32x16_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16_avg = vpx_sad32x16_avg_avx2;
+ vpx_sad32x32 = vpx_sad32x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32 = vpx_sad32x32_avx2;
+ vpx_sad32x32_avg = vpx_sad32x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32_avg = vpx_sad32x32_avg_avx2;
+ vpx_sad32x32x4d = vpx_sad32x32x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32x4d = vpx_sad32x32x4d_avx2;
+ vpx_sad32x64 = vpx_sad32x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64 = vpx_sad32x64_avx2;
+ vpx_sad32x64_avg = vpx_sad32x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64_avg = vpx_sad32x64_avg_avx2;
+ vpx_sad4x4x3 = vpx_sad4x4x3_c;
+ if (flags & HAS_SSE3) vpx_sad4x4x3 = vpx_sad4x4x3_sse3;
+ vpx_sad4x4x8 = vpx_sad4x4x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad4x4x8 = vpx_sad4x4x8_sse4_1;
+ vpx_sad64x32 = vpx_sad64x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32 = vpx_sad64x32_avx2;
+ vpx_sad64x32_avg = vpx_sad64x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32_avg = vpx_sad64x32_avg_avx2;
+ vpx_sad64x64 = vpx_sad64x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64 = vpx_sad64x64_avx2;
+ vpx_sad64x64_avg = vpx_sad64x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64_avg = vpx_sad64x64_avg_avx2;
+ vpx_sad64x64x4d = vpx_sad64x64x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64x4d = vpx_sad64x64x4d_avx2;
+ vpx_sad8x16x3 = vpx_sad8x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x16x3 = vpx_sad8x16x3_sse3;
+ vpx_sad8x16x8 = vpx_sad8x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x16x8 = vpx_sad8x16x8_sse4_1;
+ vpx_sad8x8x3 = vpx_sad8x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x8x3 = vpx_sad8x8x3_sse3;
+ vpx_sad8x8x8 = vpx_sad8x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x8x8 = vpx_sad8x8x8_sse4_1;
+ vpx_scaled_2d = vpx_scaled_2d_c;
+ if (flags & HAS_SSSE3) vpx_scaled_2d = vpx_scaled_2d_ssse3;
+ vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_ssse3;
+ vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_ssse3;
+ vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_ssse3;
+ vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_ssse3;
+ vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_avx2;
+ vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_ssse3;
+ vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_ssse3;
+ vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_ssse3;
+ vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_ssse3;
+ vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_avx2;
+ vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_ssse3;
+ vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_ssse3;
+ vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_ssse3;
+ vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_ssse3;
+ vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_ssse3;
+ vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_ssse3;
+ vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_ssse3;
+ vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_avx2;
+ vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_ssse3;
+ vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_ssse3;
+ vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_ssse3;
+ vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_ssse3;
+ vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_avx2;
+ vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_ssse3;
+ vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_ssse3;
+ vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_ssse3;
+ vpx_variance16x16 = vpx_variance16x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance16x16 = vpx_variance16x16_avx2;
+ vpx_variance32x16 = vpx_variance32x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x16 = vpx_variance32x16_avx2;
+ vpx_variance32x32 = vpx_variance32x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x32 = vpx_variance32x32_avx2;
+ vpx_variance64x32 = vpx_variance64x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x32 = vpx_variance64x32_avx2;
+ vpx_variance64x64 = vpx_variance64x64_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x64 = vpx_variance64x64_avx2;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/linux/x64/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/linux/x64/vpx_scale_rtcd.h
new file mode 100644
index 0000000..ddf7d01
--- /dev/null
+++ b/third_party/libvpx_new/source/config/linux/x64/vpx_scale_rtcd.h
@@ -0,0 +1,69 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/mac/ia32/vp8_rtcd.h b/third_party/libvpx_new/source/config/mac/ia32/vp8_rtcd.h
new file mode 100644
index 0000000..d08f080
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/ia32/vp8_rtcd.h
@@ -0,0 +1,430 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict4x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+int vp8_block_error_mmx(short *coeff, short *dqcoeff);
+int vp8_block_error_xmm(short *coeff, short *dqcoeff);
+RTCD_EXTERN int (*vp8_block_error)(short *coeff, short *dqcoeff);
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_sse2(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_ssse3(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mbuv_s)(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_sse2(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_ssse3(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mby_s)(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+
+void vp8_clear_system_state_c();
+void vpx_reset_mmx_state();
+RTCD_EXTERN void (*vp8_clear_system_state)();
+
+void vp8_copy32xn_c(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse2(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse3(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+RTCD_EXTERN void (*vp8_copy32xn)(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_sse2(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem16x16)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem8x4)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem8x8)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_mmx(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+RTCD_EXTERN void (*vp8_dc_only_idct_add)(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_sse2(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+RTCD_EXTERN int (*vp8_denoiser_filter)(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_uv_sse2(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+RTCD_EXTERN int (*vp8_denoiser_filter_uv)(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_mmx(short *input, short *dq, unsigned char *output, int stride);
+RTCD_EXTERN void (*vp8_dequant_idct_add)(short *input, short *dq, unsigned char *output, int stride);
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_mmx(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_sse2(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+RTCD_EXTERN void (*vp8_dequant_idct_add_uv_block)(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_mmx(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_sse2(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+RTCD_EXTERN void (*vp8_dequant_idct_add_y_block)(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+void vp8_dequantize_b_mmx(struct blockd*, short *dqc);
+RTCD_EXTERN void (*vp8_dequantize_b)(struct blockd*, short *dqc);
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_diamond_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_diamond_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+void vp8_fast_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_fast_quantize_b_ssse3(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_fast_quantize_b)(struct block *, struct blockd *);
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight16x16_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp8_filter_by_weight16x16)(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight8x8_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp8_filter_by_weight8x8)(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx3(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx8(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_full_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_c
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_bh)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_bv)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_mbh)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_mbv)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_bh)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_bv)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_mbh)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_mbv)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+int vp8_mbblock_error_mmx(struct macroblock *mb, int dc);
+int vp8_mbblock_error_xmm(struct macroblock *mb, int dc);
+RTCD_EXTERN int (*vp8_mbblock_error)(struct macroblock *mb, int dc);
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_across_ip_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+RTCD_EXTERN void (*vp8_mbpost_proc_across_ip)(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_mmx(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+RTCD_EXTERN void (*vp8_mbpost_proc_down)(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+
+int vp8_mbuverror_c(struct macroblock *mb);
+int vp8_mbuverror_mmx(struct macroblock *mb);
+int vp8_mbuverror_xmm(struct macroblock *mb);
+RTCD_EXTERN int (*vp8_mbuverror)(struct macroblock *mb);
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_mmx(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_wmt(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+RTCD_EXTERN void (*vp8_plane_add_noise)(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+void vp8_post_proc_down_and_across_mb_row_sse2(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+RTCD_EXTERN void (*vp8_post_proc_down_and_across_mb_row)(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_refining_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_refining_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse4_1(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_regular_quantize_b)(struct block *, struct blockd *);
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_sse2(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_fdct4x4)(short *input, short *output, int pitch);
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_sse2(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_fdct8x4)(short *input, short *output, int pitch);
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_mmx(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+RTCD_EXTERN void (*vp8_short_idct4x4llm)(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+void vp8_short_inv_walsh4x4_mmx(short *input, short *output);
+void vp8_short_inv_walsh4x4_sse2(short *input, short *output);
+RTCD_EXTERN void (*vp8_short_inv_walsh4x4)(short *input, short *output);
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_sse2(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_walsh4x4)(short *input, short *output, int pitch);
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict4x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_mmx;
+ if (flags & HAS_SSE2) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_ssse3;
+ vp8_bilinear_predict4x4 = vp8_bilinear_predict4x4_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict4x4 = vp8_bilinear_predict4x4_mmx;
+ vp8_bilinear_predict8x4 = vp8_bilinear_predict8x4_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict8x4 = vp8_bilinear_predict8x4_mmx;
+ vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_mmx;
+ if (flags & HAS_SSE2) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_ssse3;
+ vp8_block_error = vp8_block_error_c;
+ if (flags & HAS_MMX) vp8_block_error = vp8_block_error_mmx;
+ if (flags & HAS_SSE2) vp8_block_error = vp8_block_error_xmm;
+ vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_c;
+ if (flags & HAS_SSE2) vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_ssse3;
+ vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_c;
+ if (flags & HAS_SSE2) vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_ssse3;
+ vp8_clear_system_state = vp8_clear_system_state_c;
+ if (flags & HAS_MMX) vp8_clear_system_state = vpx_reset_mmx_state;
+ vp8_copy32xn = vp8_copy32xn_c;
+ if (flags & HAS_SSE2) vp8_copy32xn = vp8_copy32xn_sse2;
+ if (flags & HAS_SSE3) vp8_copy32xn = vp8_copy32xn_sse3;
+ vp8_copy_mem16x16 = vp8_copy_mem16x16_c;
+ if (flags & HAS_MMX) vp8_copy_mem16x16 = vp8_copy_mem16x16_mmx;
+ if (flags & HAS_SSE2) vp8_copy_mem16x16 = vp8_copy_mem16x16_sse2;
+ vp8_copy_mem8x4 = vp8_copy_mem8x4_c;
+ if (flags & HAS_MMX) vp8_copy_mem8x4 = vp8_copy_mem8x4_mmx;
+ vp8_copy_mem8x8 = vp8_copy_mem8x8_c;
+ if (flags & HAS_MMX) vp8_copy_mem8x8 = vp8_copy_mem8x8_mmx;
+ vp8_dc_only_idct_add = vp8_dc_only_idct_add_c;
+ if (flags & HAS_MMX) vp8_dc_only_idct_add = vp8_dc_only_idct_add_mmx;
+ vp8_denoiser_filter = vp8_denoiser_filter_c;
+ if (flags & HAS_SSE2) vp8_denoiser_filter = vp8_denoiser_filter_sse2;
+ vp8_denoiser_filter_uv = vp8_denoiser_filter_uv_c;
+ if (flags & HAS_SSE2) vp8_denoiser_filter_uv = vp8_denoiser_filter_uv_sse2;
+ vp8_dequant_idct_add = vp8_dequant_idct_add_c;
+ if (flags & HAS_MMX) vp8_dequant_idct_add = vp8_dequant_idct_add_mmx;
+ vp8_dequant_idct_add_uv_block = vp8_dequant_idct_add_uv_block_c;
+ if (flags & HAS_MMX) vp8_dequant_idct_add_uv_block = vp8_dequant_idct_add_uv_block_mmx;
+ if (flags & HAS_SSE2) vp8_dequant_idct_add_uv_block = vp8_dequant_idct_add_uv_block_sse2;
+ vp8_dequant_idct_add_y_block = vp8_dequant_idct_add_y_block_c;
+ if (flags & HAS_MMX) vp8_dequant_idct_add_y_block = vp8_dequant_idct_add_y_block_mmx;
+ if (flags & HAS_SSE2) vp8_dequant_idct_add_y_block = vp8_dequant_idct_add_y_block_sse2;
+ vp8_dequantize_b = vp8_dequantize_b_c;
+ if (flags & HAS_MMX) vp8_dequantize_b = vp8_dequantize_b_mmx;
+ vp8_diamond_search_sad = vp8_diamond_search_sad_c;
+ if (flags & HAS_SSE3) vp8_diamond_search_sad = vp8_diamond_search_sadx4;
+ vp8_fast_quantize_b = vp8_fast_quantize_b_c;
+ if (flags & HAS_SSE2) vp8_fast_quantize_b = vp8_fast_quantize_b_sse2;
+ if (flags & HAS_SSSE3) vp8_fast_quantize_b = vp8_fast_quantize_b_ssse3;
+ vp8_filter_by_weight16x16 = vp8_filter_by_weight16x16_c;
+ if (flags & HAS_SSE2) vp8_filter_by_weight16x16 = vp8_filter_by_weight16x16_sse2;
+ vp8_filter_by_weight8x8 = vp8_filter_by_weight8x8_c;
+ if (flags & HAS_SSE2) vp8_filter_by_weight8x8 = vp8_filter_by_weight8x8_sse2;
+ vp8_full_search_sad = vp8_full_search_sad_c;
+ if (flags & HAS_SSE3) vp8_full_search_sad = vp8_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp8_full_search_sad = vp8_full_search_sadx8;
+ vp8_loop_filter_bh = vp8_loop_filter_bh_c;
+ if (flags & HAS_MMX) vp8_loop_filter_bh = vp8_loop_filter_bh_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_bh = vp8_loop_filter_bh_sse2;
+ vp8_loop_filter_bv = vp8_loop_filter_bv_c;
+ if (flags & HAS_MMX) vp8_loop_filter_bv = vp8_loop_filter_bv_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_bv = vp8_loop_filter_bv_sse2;
+ vp8_loop_filter_mbh = vp8_loop_filter_mbh_c;
+ if (flags & HAS_MMX) vp8_loop_filter_mbh = vp8_loop_filter_mbh_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_mbh = vp8_loop_filter_mbh_sse2;
+ vp8_loop_filter_mbv = vp8_loop_filter_mbv_c;
+ if (flags & HAS_MMX) vp8_loop_filter_mbv = vp8_loop_filter_mbv_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_mbv = vp8_loop_filter_mbv_sse2;
+ vp8_loop_filter_simple_bh = vp8_loop_filter_bhs_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_bh = vp8_loop_filter_bhs_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_bh = vp8_loop_filter_bhs_sse2;
+ vp8_loop_filter_simple_bv = vp8_loop_filter_bvs_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_bv = vp8_loop_filter_bvs_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_bv = vp8_loop_filter_bvs_sse2;
+ vp8_loop_filter_simple_mbh = vp8_loop_filter_simple_horizontal_edge_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_mbh = vp8_loop_filter_simple_horizontal_edge_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_mbh = vp8_loop_filter_simple_horizontal_edge_sse2;
+ vp8_loop_filter_simple_mbv = vp8_loop_filter_simple_vertical_edge_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_mbv = vp8_loop_filter_simple_vertical_edge_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_mbv = vp8_loop_filter_simple_vertical_edge_sse2;
+ vp8_mbblock_error = vp8_mbblock_error_c;
+ if (flags & HAS_MMX) vp8_mbblock_error = vp8_mbblock_error_mmx;
+ if (flags & HAS_SSE2) vp8_mbblock_error = vp8_mbblock_error_xmm;
+ vp8_mbpost_proc_across_ip = vp8_mbpost_proc_across_ip_c;
+ if (flags & HAS_SSE2) vp8_mbpost_proc_across_ip = vp8_mbpost_proc_across_ip_xmm;
+ vp8_mbpost_proc_down = vp8_mbpost_proc_down_c;
+ if (flags & HAS_MMX) vp8_mbpost_proc_down = vp8_mbpost_proc_down_mmx;
+ if (flags & HAS_SSE2) vp8_mbpost_proc_down = vp8_mbpost_proc_down_xmm;
+ vp8_mbuverror = vp8_mbuverror_c;
+ if (flags & HAS_MMX) vp8_mbuverror = vp8_mbuverror_mmx;
+ if (flags & HAS_SSE2) vp8_mbuverror = vp8_mbuverror_xmm;
+ vp8_plane_add_noise = vp8_plane_add_noise_c;
+ if (flags & HAS_MMX) vp8_plane_add_noise = vp8_plane_add_noise_mmx;
+ if (flags & HAS_SSE2) vp8_plane_add_noise = vp8_plane_add_noise_wmt;
+ vp8_post_proc_down_and_across_mb_row = vp8_post_proc_down_and_across_mb_row_c;
+ if (flags & HAS_SSE2) vp8_post_proc_down_and_across_mb_row = vp8_post_proc_down_and_across_mb_row_sse2;
+ vp8_refining_search_sad = vp8_refining_search_sad_c;
+ if (flags & HAS_SSE3) vp8_refining_search_sad = vp8_refining_search_sadx4;
+ vp8_regular_quantize_b = vp8_regular_quantize_b_c;
+ if (flags & HAS_SSE2) vp8_regular_quantize_b = vp8_regular_quantize_b_sse2;
+ if (flags & HAS_SSE4_1) vp8_regular_quantize_b = vp8_regular_quantize_b_sse4_1;
+ vp8_short_fdct4x4 = vp8_short_fdct4x4_c;
+ if (flags & HAS_MMX) vp8_short_fdct4x4 = vp8_short_fdct4x4_mmx;
+ if (flags & HAS_SSE2) vp8_short_fdct4x4 = vp8_short_fdct4x4_sse2;
+ vp8_short_fdct8x4 = vp8_short_fdct8x4_c;
+ if (flags & HAS_MMX) vp8_short_fdct8x4 = vp8_short_fdct8x4_mmx;
+ if (flags & HAS_SSE2) vp8_short_fdct8x4 = vp8_short_fdct8x4_sse2;
+ vp8_short_idct4x4llm = vp8_short_idct4x4llm_c;
+ if (flags & HAS_MMX) vp8_short_idct4x4llm = vp8_short_idct4x4llm_mmx;
+ vp8_short_inv_walsh4x4 = vp8_short_inv_walsh4x4_c;
+ if (flags & HAS_MMX) vp8_short_inv_walsh4x4 = vp8_short_inv_walsh4x4_mmx;
+ if (flags & HAS_SSE2) vp8_short_inv_walsh4x4 = vp8_short_inv_walsh4x4_sse2;
+ vp8_short_walsh4x4 = vp8_short_walsh4x4_c;
+ if (flags & HAS_SSE2) vp8_short_walsh4x4 = vp8_short_walsh4x4_sse2;
+ vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_mmx;
+ if (flags & HAS_SSE2) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_ssse3;
+ vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_mmx;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_ssse3;
+ vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_mmx;
+ if (flags & HAS_SSE2) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_ssse3;
+ vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_mmx;
+ if (flags & HAS_SSE2) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_ssse3;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/mac/ia32/vp9_rtcd.h b/third_party/libvpx_new/source/config/mac/ia32/vp9_rtcd.h
new file mode 100644
index 0000000..0c0a793
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/ia32/vp9_rtcd.h
@@ -0,0 +1,238 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+unsigned int vp9_avg_4x4_sse2(const uint8_t *, int p);
+RTCD_EXTERN unsigned int (*vp9_avg_4x4)(const uint8_t *, int p);
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+unsigned int vp9_avg_8x8_sse2(const uint8_t *, int p);
+RTCD_EXTERN unsigned int (*vp9_avg_8x8)(const uint8_t *, int p);
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_sse2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_avx2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+RTCD_EXTERN int64_t (*vp9_block_error)(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+int64_t vp9_block_error_fp_sse2(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+RTCD_EXTERN int64_t (*vp9_block_error_fp)(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+int vp9_denoiser_filter_sse2(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+RTCD_EXTERN int (*vp9_denoiser_filter)(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_sse2(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_ssse3(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_fdct8x8_quant)(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht16x16_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+RTCD_EXTERN void (*vp9_fht16x16)(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht4x4_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+RTCD_EXTERN void (*vp9_fht4x4)(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht8x8_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+RTCD_EXTERN void (*vp9_fht8x8)(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight16x16_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp9_filter_by_weight16x16)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight8x8_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp9_filter_by_weight8x8)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx3(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx8(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+RTCD_EXTERN int (*vp9_full_search_sad)(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vp9_fwht4x4_mmx(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vp9_fwht4x4)(const int16_t *input, tran_low_t *output, int stride);
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_16x16_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vp9_hadamard_16x16)(int16_t const *src_diff, int src_stride, int16_t *coeff);
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_8x8_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vp9_hadamard_8x8)(int16_t const *src_diff, int src_stride, int16_t *coeff);
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+void vp9_iht16x16_256_add_sse2(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+RTCD_EXTERN void (*vp9_iht16x16_256_add)(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+RTCD_EXTERN void (*vp9_iht4x4_16_add)(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+RTCD_EXTERN void (*vp9_iht8x8_64_add)(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+int16_t vp9_int_pro_col_sse2(uint8_t const *ref, const int width);
+RTCD_EXTERN int16_t (*vp9_int_pro_col)(uint8_t const *ref, const int width);
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+void vp9_int_pro_row_sse2(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+RTCD_EXTERN void (*vp9_int_pro_row)(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_across_ip_xmm(uint8_t *src, int pitch, int rows, int cols, int flimit);
+RTCD_EXTERN void (*vp9_mbpost_proc_across_ip)(uint8_t *src, int pitch, int rows, int cols, int flimit);
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_down_xmm(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+RTCD_EXTERN void (*vp9_mbpost_proc_down)(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+void vp9_minmax_8x8_sse2(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+RTCD_EXTERN void (*vp9_minmax_8x8)(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+void vp9_plane_add_noise_wmt(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+RTCD_EXTERN void (*vp9_plane_add_noise)(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+void vp9_post_proc_down_and_across_xmm(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+RTCD_EXTERN void (*vp9_post_proc_down_and_across)(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+int16_t vp9_satd_sse2(const int16_t *coeff, int length);
+RTCD_EXTERN int16_t (*vp9_satd)(const int16_t *coeff, int length);
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+void vp9_temporal_filter_apply_sse2(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+RTCD_EXTERN void (*vp9_temporal_filter_apply)(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+int vp9_vector_var_sse2(int16_t const *ref, int16_t const *src, const int bwl);
+RTCD_EXTERN int (*vp9_vector_var)(int16_t const *ref, int16_t const *src, const int bwl);
+
+void vp9_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp9_avg_4x4 = vp9_avg_4x4_c;
+ if (flags & HAS_SSE2) vp9_avg_4x4 = vp9_avg_4x4_sse2;
+ vp9_avg_8x8 = vp9_avg_8x8_c;
+ if (flags & HAS_SSE2) vp9_avg_8x8 = vp9_avg_8x8_sse2;
+ vp9_block_error = vp9_block_error_c;
+ if (flags & HAS_SSE2) vp9_block_error = vp9_block_error_sse2;
+ if (flags & HAS_AVX2) vp9_block_error = vp9_block_error_avx2;
+ vp9_block_error_fp = vp9_block_error_fp_c;
+ if (flags & HAS_SSE2) vp9_block_error_fp = vp9_block_error_fp_sse2;
+ vp9_denoiser_filter = vp9_denoiser_filter_c;
+ if (flags & HAS_SSE2) vp9_denoiser_filter = vp9_denoiser_filter_sse2;
+ vp9_fdct8x8_quant = vp9_fdct8x8_quant_c;
+ if (flags & HAS_SSE2) vp9_fdct8x8_quant = vp9_fdct8x8_quant_sse2;
+ if (flags & HAS_SSSE3) vp9_fdct8x8_quant = vp9_fdct8x8_quant_ssse3;
+ vp9_fht16x16 = vp9_fht16x16_c;
+ if (flags & HAS_SSE2) vp9_fht16x16 = vp9_fht16x16_sse2;
+ vp9_fht4x4 = vp9_fht4x4_c;
+ if (flags & HAS_SSE2) vp9_fht4x4 = vp9_fht4x4_sse2;
+ vp9_fht8x8 = vp9_fht8x8_c;
+ if (flags & HAS_SSE2) vp9_fht8x8 = vp9_fht8x8_sse2;
+ vp9_filter_by_weight16x16 = vp9_filter_by_weight16x16_c;
+ if (flags & HAS_SSE2) vp9_filter_by_weight16x16 = vp9_filter_by_weight16x16_sse2;
+ vp9_filter_by_weight8x8 = vp9_filter_by_weight8x8_c;
+ if (flags & HAS_SSE2) vp9_filter_by_weight8x8 = vp9_filter_by_weight8x8_sse2;
+ vp9_full_search_sad = vp9_full_search_sad_c;
+ if (flags & HAS_SSE3) vp9_full_search_sad = vp9_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp9_full_search_sad = vp9_full_search_sadx8;
+ vp9_fwht4x4 = vp9_fwht4x4_c;
+ if (flags & HAS_MMX) vp9_fwht4x4 = vp9_fwht4x4_mmx;
+ vp9_hadamard_16x16 = vp9_hadamard_16x16_c;
+ if (flags & HAS_SSE2) vp9_hadamard_16x16 = vp9_hadamard_16x16_sse2;
+ vp9_hadamard_8x8 = vp9_hadamard_8x8_c;
+ if (flags & HAS_SSE2) vp9_hadamard_8x8 = vp9_hadamard_8x8_sse2;
+ vp9_iht16x16_256_add = vp9_iht16x16_256_add_c;
+ if (flags & HAS_SSE2) vp9_iht16x16_256_add = vp9_iht16x16_256_add_sse2;
+ vp9_iht4x4_16_add = vp9_iht4x4_16_add_c;
+ if (flags & HAS_SSE2) vp9_iht4x4_16_add = vp9_iht4x4_16_add_sse2;
+ vp9_iht8x8_64_add = vp9_iht8x8_64_add_c;
+ if (flags & HAS_SSE2) vp9_iht8x8_64_add = vp9_iht8x8_64_add_sse2;
+ vp9_int_pro_col = vp9_int_pro_col_c;
+ if (flags & HAS_SSE2) vp9_int_pro_col = vp9_int_pro_col_sse2;
+ vp9_int_pro_row = vp9_int_pro_row_c;
+ if (flags & HAS_SSE2) vp9_int_pro_row = vp9_int_pro_row_sse2;
+ vp9_mbpost_proc_across_ip = vp9_mbpost_proc_across_ip_c;
+ if (flags & HAS_SSE2) vp9_mbpost_proc_across_ip = vp9_mbpost_proc_across_ip_xmm;
+ vp9_mbpost_proc_down = vp9_mbpost_proc_down_c;
+ if (flags & HAS_SSE2) vp9_mbpost_proc_down = vp9_mbpost_proc_down_xmm;
+ vp9_minmax_8x8 = vp9_minmax_8x8_c;
+ if (flags & HAS_SSE2) vp9_minmax_8x8 = vp9_minmax_8x8_sse2;
+ vp9_plane_add_noise = vp9_plane_add_noise_c;
+ if (flags & HAS_SSE2) vp9_plane_add_noise = vp9_plane_add_noise_wmt;
+ vp9_post_proc_down_and_across = vp9_post_proc_down_and_across_c;
+ if (flags & HAS_SSE2) vp9_post_proc_down_and_across = vp9_post_proc_down_and_across_xmm;
+ vp9_quantize_fp = vp9_quantize_fp_c;
+ if (flags & HAS_SSE2) vp9_quantize_fp = vp9_quantize_fp_sse2;
+ vp9_satd = vp9_satd_c;
+ if (flags & HAS_SSE2) vp9_satd = vp9_satd_sse2;
+ vp9_temporal_filter_apply = vp9_temporal_filter_apply_c;
+ if (flags & HAS_SSE2) vp9_temporal_filter_apply = vp9_temporal_filter_apply_sse2;
+ vp9_vector_var = vp9_vector_var_c;
+ if (flags & HAS_SSE2) vp9_vector_var = vp9_vector_var_sse2;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/mac/ia32/vpx_config.asm b/third_party/libvpx_new/source/config/mac/ia32/vpx_config.asm
new file mode 100644
index 0000000..90b0da0
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/ia32/vpx_config.asm
@@ -0,0 +1,87 @@
+%define ARCH_ARM 0
+%define ARCH_MIPS 0
+%define ARCH_X86 1
+%define ARCH_X86_64 0
+%define HAVE_EDSP 0
+%define HAVE_MEDIA 0
+%define HAVE_NEON 0
+%define HAVE_NEON_ASM 0
+%define HAVE_MIPS32 0
+%define HAVE_DSPR2 0
+%define HAVE_MSA 0
+%define HAVE_MIPS64 0
+%define HAVE_MMX 1
+%define HAVE_SSE 1
+%define HAVE_SSE2 1
+%define HAVE_SSE3 1
+%define HAVE_SSSE3 1
+%define HAVE_SSE4_1 1
+%define HAVE_AVX 1
+%define HAVE_AVX2 1
+%define HAVE_VPX_PORTS 1
+%define HAVE_STDINT_H 1
+%define HAVE_PTHREAD_H 1
+%define HAVE_SYS_MMAN_H 1
+%define HAVE_UNISTD_H 0
+%define CONFIG_DEPENDENCY_TRACKING 1
+%define CONFIG_EXTERNAL_BUILD 1
+%define CONFIG_INSTALL_DOCS 0
+%define CONFIG_INSTALL_BINS 1
+%define CONFIG_INSTALL_LIBS 1
+%define CONFIG_INSTALL_SRCS 0
+%define CONFIG_USE_X86INC 1
+%define CONFIG_DEBUG 0
+%define CONFIG_GPROF 0
+%define CONFIG_GCOV 0
+%define CONFIG_RVCT 0
+%define CONFIG_GCC 1
+%define CONFIG_MSVS 0
+%define CONFIG_PIC 1
+%define CONFIG_BIG_ENDIAN 0
+%define CONFIG_CODEC_SRCS 0
+%define CONFIG_DEBUG_LIBS 0
+%define CONFIG_DEQUANT_TOKENS 0
+%define CONFIG_DC_RECON 0
+%define CONFIG_RUNTIME_CPU_DETECT 1
+%define CONFIG_POSTPROC 1
+%define CONFIG_VP9_POSTPROC 1
+%define CONFIG_MULTITHREAD 1
+%define CONFIG_INTERNAL_STATS 0
+%define CONFIG_VP8_ENCODER 1
+%define CONFIG_VP8_DECODER 1
+%define CONFIG_VP9_ENCODER 1
+%define CONFIG_VP9_DECODER 1
+%define CONFIG_VP10_ENCODER 0
+%define CONFIG_VP10_DECODER 0
+%define CONFIG_VP8 1
+%define CONFIG_VP9 1
+%define CONFIG_VP10 0
+%define CONFIG_ENCODERS 1
+%define CONFIG_DECODERS 1
+%define CONFIG_STATIC_MSVCRT 0
+%define CONFIG_SPATIAL_RESAMPLING 1
+%define CONFIG_REALTIME_ONLY 1
+%define CONFIG_ONTHEFLY_BITPACKING 0
+%define CONFIG_ERROR_CONCEALMENT 0
+%define CONFIG_SHARED 0
+%define CONFIG_STATIC 1
+%define CONFIG_SMALL 0
+%define CONFIG_POSTPROC_VISUALIZER 0
+%define CONFIG_OS_SUPPORT 1
+%define CONFIG_UNIT_TESTS 0
+%define CONFIG_WEBM_IO 1
+%define CONFIG_LIBYUV 1
+%define CONFIG_DECODE_PERF_TESTS 0
+%define CONFIG_ENCODE_PERF_TESTS 0
+%define CONFIG_MULTI_RES_ENCODING 1
+%define CONFIG_TEMPORAL_DENOISING 1
+%define CONFIG_VP9_TEMPORAL_DENOISING 1
+%define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+%define CONFIG_VP9_HIGHBITDEPTH 0
+%define CONFIG_EXPERIMENTAL 0
+%define CONFIG_SIZE_LIMIT 1
+%define CONFIG_SPATIAL_SVC 0
+%define CONFIG_FP_MB_STATS 0
+%define CONFIG_EMULATE_HARDWARE 0
+%define DECODE_WIDTH_LIMIT 16384
+%define DECODE_HEIGHT_LIMIT 16384
diff --git a/third_party/libvpx_new/source/config/mac/ia32/vpx_config.c b/third_party/libvpx_new/source/config/mac/ia32/vpx_config.c
new file mode 100644
index 0000000..90849ad
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/ia32/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=x86-darwin9-gcc --enable-pic --enable-realtime-only --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/mac/ia32/vpx_config.h b/third_party/libvpx_new/source/config/mac/ia32/vpx_config.h
new file mode 100644
index 0000000..06b5ed9
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/ia32/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 0
+#define ARCH_MIPS 0
+#define ARCH_X86 1
+#define ARCH_X86_64 0
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 0
+#define HAVE_NEON 0
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 1
+#define HAVE_SSE 1
+#define HAVE_SSE2 1
+#define HAVE_SSE3 1
+#define HAVE_SSSE3 1
+#define HAVE_SSE4_1 1
+#define HAVE_AVX 1
+#define HAVE_AVX2 1
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 1
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 1
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/mac/ia32/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/mac/ia32/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..8f0da9d
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/ia32/vpx_dsp_rtcd.h
@@ -0,0 +1,1383 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_copy_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve_copy)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct16x16)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct16x16_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32_rd)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct4x4)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct4x4_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get16x16var)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get8x8var)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+unsigned int vpx_get_mb_ss_mmx(const int16_t *);
+unsigned int vpx_get_mb_ss_sse2(const int16_t *);
+RTCD_EXTERN unsigned int (*vpx_get_mb_ss)(const int16_t *);
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_10_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_10_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_256_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_256_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1024_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_1024_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_34_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_34_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct4x4_16_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct4x4_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_12_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_64_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_iwht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_iwht4x4_16_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_avx2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_4)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_horizontal_4_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_8)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_horizontal_8_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+RTCD_EXTERN void (*vpx_lpf_vertical_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+RTCD_EXTERN void (*vpx_lpf_vertical_16_dual)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_vertical_4)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_vertical_4_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_vertical_8)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_vertical_8_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse8x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse8x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vpx_quantize_b)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad16x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad16x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad16x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad16x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad16x8_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x16x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x64x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad4x4)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x4_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad4x4_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x8_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad4x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x8_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad4x8_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x8x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x8x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad64x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad64x64x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad8x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad8x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x4_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad8x4)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x4_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad8x4_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x4x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x4x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad8x8_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_scaled_2d_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_scaled_2d)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+void vpx_subtract_block_sse2(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+RTCD_EXTERN void (*vpx_subtract_block)(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_c
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x64)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance4x4)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance4x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x64)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance8x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance8x4)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance8x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_variance_halfpixvar16x16_h)(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_variance_halfpixvar16x16_hv)(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_variance_halfpixvar16x16_v)(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+
+void vpx_dsp_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vpx_convolve8 = vpx_convolve8_c;
+ if (flags & HAS_SSE2) vpx_convolve8 = vpx_convolve8_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8 = vpx_convolve8_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8 = vpx_convolve8_avx2;
+ vpx_convolve8_avg = vpx_convolve8_avg_c;
+ if (flags & HAS_SSE2) vpx_convolve8_avg = vpx_convolve8_avg_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg = vpx_convolve8_avg_ssse3;
+ vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_c;
+ if (flags & HAS_SSE2) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_ssse3;
+ vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_c;
+ if (flags & HAS_SSE2) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_ssse3;
+ vpx_convolve8_horiz = vpx_convolve8_horiz_c;
+ if (flags & HAS_SSE2) vpx_convolve8_horiz = vpx_convolve8_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_horiz = vpx_convolve8_horiz_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_horiz = vpx_convolve8_horiz_avx2;
+ vpx_convolve8_vert = vpx_convolve8_vert_c;
+ if (flags & HAS_SSE2) vpx_convolve8_vert = vpx_convolve8_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_vert = vpx_convolve8_vert_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_vert = vpx_convolve8_vert_avx2;
+ vpx_convolve_avg = vpx_convolve_avg_c;
+ if (flags & HAS_SSE2) vpx_convolve_avg = vpx_convolve_avg_sse2;
+ vpx_convolve_copy = vpx_convolve_copy_c;
+ if (flags & HAS_SSE2) vpx_convolve_copy = vpx_convolve_copy_sse2;
+ vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_ssse3;
+ vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_ssse3;
+ vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_ssse3;
+ vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_ssse3;
+ vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_ssse3;
+ vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_ssse3;
+ vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_ssse3;
+ vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_ssse3;
+ vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_ssse3;
+ vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_ssse3;
+ vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_ssse3;
+ vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_ssse3;
+ vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_ssse3;
+ vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_ssse3;
+ vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_ssse3;
+ vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_ssse3;
+ vpx_dc_128_predictor_16x16 = vpx_dc_128_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_128_predictor_16x16 = vpx_dc_128_predictor_16x16_sse2;
+ vpx_dc_128_predictor_32x32 = vpx_dc_128_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_128_predictor_32x32 = vpx_dc_128_predictor_32x32_sse2;
+ vpx_dc_128_predictor_4x4 = vpx_dc_128_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_128_predictor_4x4 = vpx_dc_128_predictor_4x4_sse;
+ vpx_dc_128_predictor_8x8 = vpx_dc_128_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_128_predictor_8x8 = vpx_dc_128_predictor_8x8_sse;
+ vpx_dc_left_predictor_16x16 = vpx_dc_left_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_left_predictor_16x16 = vpx_dc_left_predictor_16x16_sse2;
+ vpx_dc_left_predictor_32x32 = vpx_dc_left_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_left_predictor_32x32 = vpx_dc_left_predictor_32x32_sse2;
+ vpx_dc_left_predictor_4x4 = vpx_dc_left_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_left_predictor_4x4 = vpx_dc_left_predictor_4x4_sse;
+ vpx_dc_left_predictor_8x8 = vpx_dc_left_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_left_predictor_8x8 = vpx_dc_left_predictor_8x8_sse;
+ vpx_dc_predictor_16x16 = vpx_dc_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_predictor_16x16 = vpx_dc_predictor_16x16_sse2;
+ vpx_dc_predictor_32x32 = vpx_dc_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_predictor_32x32 = vpx_dc_predictor_32x32_sse2;
+ vpx_dc_predictor_4x4 = vpx_dc_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_predictor_4x4 = vpx_dc_predictor_4x4_sse;
+ vpx_dc_predictor_8x8 = vpx_dc_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_predictor_8x8 = vpx_dc_predictor_8x8_sse;
+ vpx_dc_top_predictor_16x16 = vpx_dc_top_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_top_predictor_16x16 = vpx_dc_top_predictor_16x16_sse2;
+ vpx_dc_top_predictor_32x32 = vpx_dc_top_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_top_predictor_32x32 = vpx_dc_top_predictor_32x32_sse2;
+ vpx_dc_top_predictor_4x4 = vpx_dc_top_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_top_predictor_4x4 = vpx_dc_top_predictor_4x4_sse;
+ vpx_dc_top_predictor_8x8 = vpx_dc_top_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_top_predictor_8x8 = vpx_dc_top_predictor_8x8_sse;
+ vpx_fdct16x16 = vpx_fdct16x16_c;
+ if (flags & HAS_SSE2) vpx_fdct16x16 = vpx_fdct16x16_sse2;
+ vpx_fdct16x16_1 = vpx_fdct16x16_1_c;
+ if (flags & HAS_SSE2) vpx_fdct16x16_1 = vpx_fdct16x16_1_sse2;
+ vpx_fdct32x32 = vpx_fdct32x32_c;
+ if (flags & HAS_SSE2) vpx_fdct32x32 = vpx_fdct32x32_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32 = vpx_fdct32x32_avx2;
+ vpx_fdct32x32_1 = vpx_fdct32x32_1_c;
+ if (flags & HAS_SSE2) vpx_fdct32x32_1 = vpx_fdct32x32_1_sse2;
+ vpx_fdct32x32_rd = vpx_fdct32x32_rd_c;
+ if (flags & HAS_SSE2) vpx_fdct32x32_rd = vpx_fdct32x32_rd_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32_rd = vpx_fdct32x32_rd_avx2;
+ vpx_fdct4x4 = vpx_fdct4x4_c;
+ if (flags & HAS_SSE2) vpx_fdct4x4 = vpx_fdct4x4_sse2;
+ vpx_fdct4x4_1 = vpx_fdct4x4_1_c;
+ if (flags & HAS_SSE2) vpx_fdct4x4_1 = vpx_fdct4x4_1_sse2;
+ vpx_fdct8x8 = vpx_fdct8x8_c;
+ if (flags & HAS_SSE2) vpx_fdct8x8 = vpx_fdct8x8_sse2;
+ vpx_fdct8x8_1 = vpx_fdct8x8_1_c;
+ if (flags & HAS_SSE2) vpx_fdct8x8_1 = vpx_fdct8x8_1_sse2;
+ vpx_get16x16var = vpx_get16x16var_c;
+ if (flags & HAS_SSE2) vpx_get16x16var = vpx_get16x16var_sse2;
+ if (flags & HAS_AVX2) vpx_get16x16var = vpx_get16x16var_avx2;
+ vpx_get8x8var = vpx_get8x8var_c;
+ if (flags & HAS_MMX) vpx_get8x8var = vpx_get8x8var_mmx;
+ if (flags & HAS_SSE2) vpx_get8x8var = vpx_get8x8var_sse2;
+ vpx_get_mb_ss = vpx_get_mb_ss_c;
+ if (flags & HAS_MMX) vpx_get_mb_ss = vpx_get_mb_ss_mmx;
+ if (flags & HAS_SSE2) vpx_get_mb_ss = vpx_get_mb_ss_sse2;
+ vpx_h_predictor_16x16 = vpx_h_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_16x16 = vpx_h_predictor_16x16_ssse3;
+ vpx_h_predictor_32x32 = vpx_h_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_32x32 = vpx_h_predictor_32x32_ssse3;
+ vpx_h_predictor_4x4 = vpx_h_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_4x4 = vpx_h_predictor_4x4_ssse3;
+ vpx_h_predictor_8x8 = vpx_h_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_8x8 = vpx_h_predictor_8x8_ssse3;
+ vpx_idct16x16_10_add = vpx_idct16x16_10_add_c;
+ if (flags & HAS_SSE2) vpx_idct16x16_10_add = vpx_idct16x16_10_add_sse2;
+ vpx_idct16x16_1_add = vpx_idct16x16_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct16x16_1_add = vpx_idct16x16_1_add_sse2;
+ vpx_idct16x16_256_add = vpx_idct16x16_256_add_c;
+ if (flags & HAS_SSE2) vpx_idct16x16_256_add = vpx_idct16x16_256_add_sse2;
+ vpx_idct32x32_1024_add = vpx_idct32x32_1024_add_c;
+ if (flags & HAS_SSE2) vpx_idct32x32_1024_add = vpx_idct32x32_1024_add_sse2;
+ vpx_idct32x32_1_add = vpx_idct32x32_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct32x32_1_add = vpx_idct32x32_1_add_sse2;
+ vpx_idct32x32_34_add = vpx_idct32x32_34_add_c;
+ if (flags & HAS_SSE2) vpx_idct32x32_34_add = vpx_idct32x32_34_add_sse2;
+ vpx_idct4x4_16_add = vpx_idct4x4_16_add_c;
+ if (flags & HAS_SSE2) vpx_idct4x4_16_add = vpx_idct4x4_16_add_sse2;
+ vpx_idct4x4_1_add = vpx_idct4x4_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct4x4_1_add = vpx_idct4x4_1_add_sse2;
+ vpx_idct8x8_12_add = vpx_idct8x8_12_add_c;
+ if (flags & HAS_SSE2) vpx_idct8x8_12_add = vpx_idct8x8_12_add_sse2;
+ vpx_idct8x8_1_add = vpx_idct8x8_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct8x8_1_add = vpx_idct8x8_1_add_sse2;
+ vpx_idct8x8_64_add = vpx_idct8x8_64_add_c;
+ if (flags & HAS_SSE2) vpx_idct8x8_64_add = vpx_idct8x8_64_add_sse2;
+ vpx_iwht4x4_16_add = vpx_iwht4x4_16_add_c;
+ if (flags & HAS_SSE2) vpx_iwht4x4_16_add = vpx_iwht4x4_16_add_sse2;
+ vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_sse2;
+ if (flags & HAS_AVX2) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_avx2;
+ vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_c;
+ if (flags & HAS_MMX) vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_mmx;
+ vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_sse2;
+ vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_sse2;
+ vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_sse2;
+ vpx_lpf_vertical_16 = vpx_lpf_vertical_16_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_16 = vpx_lpf_vertical_16_sse2;
+ vpx_lpf_vertical_16_dual = vpx_lpf_vertical_16_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_16_dual = vpx_lpf_vertical_16_dual_sse2;
+ vpx_lpf_vertical_4 = vpx_lpf_vertical_4_c;
+ if (flags & HAS_MMX) vpx_lpf_vertical_4 = vpx_lpf_vertical_4_mmx;
+ vpx_lpf_vertical_4_dual = vpx_lpf_vertical_4_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_4_dual = vpx_lpf_vertical_4_dual_sse2;
+ vpx_lpf_vertical_8 = vpx_lpf_vertical_8_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_8 = vpx_lpf_vertical_8_sse2;
+ vpx_lpf_vertical_8_dual = vpx_lpf_vertical_8_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_8_dual = vpx_lpf_vertical_8_dual_sse2;
+ vpx_mse16x16 = vpx_mse16x16_c;
+ if (flags & HAS_MMX) vpx_mse16x16 = vpx_mse16x16_mmx;
+ if (flags & HAS_SSE2) vpx_mse16x16 = vpx_mse16x16_sse2;
+ if (flags & HAS_AVX2) vpx_mse16x16 = vpx_mse16x16_avx2;
+ vpx_mse16x8 = vpx_mse16x8_c;
+ if (flags & HAS_SSE2) vpx_mse16x8 = vpx_mse16x8_sse2;
+ vpx_mse8x16 = vpx_mse8x16_c;
+ if (flags & HAS_SSE2) vpx_mse8x16 = vpx_mse8x16_sse2;
+ vpx_mse8x8 = vpx_mse8x8_c;
+ if (flags & HAS_SSE2) vpx_mse8x8 = vpx_mse8x8_sse2;
+ vpx_quantize_b = vpx_quantize_b_c;
+ if (flags & HAS_SSE2) vpx_quantize_b = vpx_quantize_b_sse2;
+ vpx_sad16x16 = vpx_sad16x16_c;
+ if (flags & HAS_MMX) vpx_sad16x16 = vpx_sad16x16_mmx;
+ if (flags & HAS_SSE2) vpx_sad16x16 = vpx_sad16x16_sse2;
+ vpx_sad16x16_avg = vpx_sad16x16_avg_c;
+ if (flags & HAS_SSE2) vpx_sad16x16_avg = vpx_sad16x16_avg_sse2;
+ vpx_sad16x16x3 = vpx_sad16x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x16x3 = vpx_sad16x16x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x16x3 = vpx_sad16x16x3_ssse3;
+ vpx_sad16x16x4d = vpx_sad16x16x4d_c;
+ if (flags & HAS_SSE2) vpx_sad16x16x4d = vpx_sad16x16x4d_sse2;
+ vpx_sad16x16x8 = vpx_sad16x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x16x8 = vpx_sad16x16x8_sse4_1;
+ vpx_sad16x32 = vpx_sad16x32_c;
+ if (flags & HAS_SSE2) vpx_sad16x32 = vpx_sad16x32_sse2;
+ vpx_sad16x32_avg = vpx_sad16x32_avg_c;
+ if (flags & HAS_SSE2) vpx_sad16x32_avg = vpx_sad16x32_avg_sse2;
+ vpx_sad16x32x4d = vpx_sad16x32x4d_c;
+ if (flags & HAS_SSE2) vpx_sad16x32x4d = vpx_sad16x32x4d_sse2;
+ vpx_sad16x8 = vpx_sad16x8_c;
+ if (flags & HAS_MMX) vpx_sad16x8 = vpx_sad16x8_mmx;
+ if (flags & HAS_SSE2) vpx_sad16x8 = vpx_sad16x8_sse2;
+ vpx_sad16x8_avg = vpx_sad16x8_avg_c;
+ if (flags & HAS_SSE2) vpx_sad16x8_avg = vpx_sad16x8_avg_sse2;
+ vpx_sad16x8x3 = vpx_sad16x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x8x3 = vpx_sad16x8x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x8x3 = vpx_sad16x8x3_ssse3;
+ vpx_sad16x8x4d = vpx_sad16x8x4d_c;
+ if (flags & HAS_SSE2) vpx_sad16x8x4d = vpx_sad16x8x4d_sse2;
+ vpx_sad16x8x8 = vpx_sad16x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x8x8 = vpx_sad16x8x8_sse4_1;
+ vpx_sad32x16 = vpx_sad32x16_c;
+ if (flags & HAS_SSE2) vpx_sad32x16 = vpx_sad32x16_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16 = vpx_sad32x16_avx2;
+ vpx_sad32x16_avg = vpx_sad32x16_avg_c;
+ if (flags & HAS_SSE2) vpx_sad32x16_avg = vpx_sad32x16_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16_avg = vpx_sad32x16_avg_avx2;
+ vpx_sad32x16x4d = vpx_sad32x16x4d_c;
+ if (flags & HAS_SSE2) vpx_sad32x16x4d = vpx_sad32x16x4d_sse2;
+ vpx_sad32x32 = vpx_sad32x32_c;
+ if (flags & HAS_SSE2) vpx_sad32x32 = vpx_sad32x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32 = vpx_sad32x32_avx2;
+ vpx_sad32x32_avg = vpx_sad32x32_avg_c;
+ if (flags & HAS_SSE2) vpx_sad32x32_avg = vpx_sad32x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32_avg = vpx_sad32x32_avg_avx2;
+ vpx_sad32x32x4d = vpx_sad32x32x4d_c;
+ if (flags & HAS_SSE2) vpx_sad32x32x4d = vpx_sad32x32x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32x4d = vpx_sad32x32x4d_avx2;
+ vpx_sad32x64 = vpx_sad32x64_c;
+ if (flags & HAS_SSE2) vpx_sad32x64 = vpx_sad32x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64 = vpx_sad32x64_avx2;
+ vpx_sad32x64_avg = vpx_sad32x64_avg_c;
+ if (flags & HAS_SSE2) vpx_sad32x64_avg = vpx_sad32x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64_avg = vpx_sad32x64_avg_avx2;
+ vpx_sad32x64x4d = vpx_sad32x64x4d_c;
+ if (flags & HAS_SSE2) vpx_sad32x64x4d = vpx_sad32x64x4d_sse2;
+ vpx_sad4x4 = vpx_sad4x4_c;
+ if (flags & HAS_MMX) vpx_sad4x4 = vpx_sad4x4_mmx;
+ if (flags & HAS_SSE) vpx_sad4x4 = vpx_sad4x4_sse;
+ vpx_sad4x4_avg = vpx_sad4x4_avg_c;
+ if (flags & HAS_SSE) vpx_sad4x4_avg = vpx_sad4x4_avg_sse;
+ vpx_sad4x4x3 = vpx_sad4x4x3_c;
+ if (flags & HAS_SSE3) vpx_sad4x4x3 = vpx_sad4x4x3_sse3;
+ vpx_sad4x4x4d = vpx_sad4x4x4d_c;
+ if (flags & HAS_SSE) vpx_sad4x4x4d = vpx_sad4x4x4d_sse;
+ vpx_sad4x4x8 = vpx_sad4x4x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad4x4x8 = vpx_sad4x4x8_sse4_1;
+ vpx_sad4x8 = vpx_sad4x8_c;
+ if (flags & HAS_SSE) vpx_sad4x8 = vpx_sad4x8_sse;
+ vpx_sad4x8_avg = vpx_sad4x8_avg_c;
+ if (flags & HAS_SSE) vpx_sad4x8_avg = vpx_sad4x8_avg_sse;
+ vpx_sad4x8x4d = vpx_sad4x8x4d_c;
+ if (flags & HAS_SSE) vpx_sad4x8x4d = vpx_sad4x8x4d_sse;
+ vpx_sad64x32 = vpx_sad64x32_c;
+ if (flags & HAS_SSE2) vpx_sad64x32 = vpx_sad64x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32 = vpx_sad64x32_avx2;
+ vpx_sad64x32_avg = vpx_sad64x32_avg_c;
+ if (flags & HAS_SSE2) vpx_sad64x32_avg = vpx_sad64x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32_avg = vpx_sad64x32_avg_avx2;
+ vpx_sad64x32x4d = vpx_sad64x32x4d_c;
+ if (flags & HAS_SSE2) vpx_sad64x32x4d = vpx_sad64x32x4d_sse2;
+ vpx_sad64x64 = vpx_sad64x64_c;
+ if (flags & HAS_SSE2) vpx_sad64x64 = vpx_sad64x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64 = vpx_sad64x64_avx2;
+ vpx_sad64x64_avg = vpx_sad64x64_avg_c;
+ if (flags & HAS_SSE2) vpx_sad64x64_avg = vpx_sad64x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64_avg = vpx_sad64x64_avg_avx2;
+ vpx_sad64x64x4d = vpx_sad64x64x4d_c;
+ if (flags & HAS_SSE2) vpx_sad64x64x4d = vpx_sad64x64x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64x4d = vpx_sad64x64x4d_avx2;
+ vpx_sad8x16 = vpx_sad8x16_c;
+ if (flags & HAS_MMX) vpx_sad8x16 = vpx_sad8x16_mmx;
+ if (flags & HAS_SSE2) vpx_sad8x16 = vpx_sad8x16_sse2;
+ vpx_sad8x16_avg = vpx_sad8x16_avg_c;
+ if (flags & HAS_SSE2) vpx_sad8x16_avg = vpx_sad8x16_avg_sse2;
+ vpx_sad8x16x3 = vpx_sad8x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x16x3 = vpx_sad8x16x3_sse3;
+ vpx_sad8x16x4d = vpx_sad8x16x4d_c;
+ if (flags & HAS_SSE2) vpx_sad8x16x4d = vpx_sad8x16x4d_sse2;
+ vpx_sad8x16x8 = vpx_sad8x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x16x8 = vpx_sad8x16x8_sse4_1;
+ vpx_sad8x4 = vpx_sad8x4_c;
+ if (flags & HAS_SSE2) vpx_sad8x4 = vpx_sad8x4_sse2;
+ vpx_sad8x4_avg = vpx_sad8x4_avg_c;
+ if (flags & HAS_SSE2) vpx_sad8x4_avg = vpx_sad8x4_avg_sse2;
+ vpx_sad8x4x4d = vpx_sad8x4x4d_c;
+ if (flags & HAS_SSE2) vpx_sad8x4x4d = vpx_sad8x4x4d_sse2;
+ vpx_sad8x8 = vpx_sad8x8_c;
+ if (flags & HAS_MMX) vpx_sad8x8 = vpx_sad8x8_mmx;
+ if (flags & HAS_SSE2) vpx_sad8x8 = vpx_sad8x8_sse2;
+ vpx_sad8x8_avg = vpx_sad8x8_avg_c;
+ if (flags & HAS_SSE2) vpx_sad8x8_avg = vpx_sad8x8_avg_sse2;
+ vpx_sad8x8x3 = vpx_sad8x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x8x3 = vpx_sad8x8x3_sse3;
+ vpx_sad8x8x4d = vpx_sad8x8x4d_c;
+ if (flags & HAS_SSE2) vpx_sad8x8x4d = vpx_sad8x8x4d_sse2;
+ vpx_sad8x8x8 = vpx_sad8x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x8x8 = vpx_sad8x8x8_sse4_1;
+ vpx_scaled_2d = vpx_scaled_2d_c;
+ if (flags & HAS_SSSE3) vpx_scaled_2d = vpx_scaled_2d_ssse3;
+ vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_ssse3;
+ vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_ssse3;
+ vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_ssse3;
+ vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_ssse3;
+ vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_avx2;
+ vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_ssse3;
+ vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_c;
+ if (flags & HAS_SSE) vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_ssse3;
+ vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_c;
+ if (flags & HAS_SSE) vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_ssse3;
+ vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_ssse3;
+ vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_avx2;
+ vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_ssse3;
+ vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_ssse3;
+ vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_ssse3;
+ vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_ssse3;
+ vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_ssse3;
+ vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_ssse3;
+ vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_ssse3;
+ vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_avx2;
+ vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_ssse3;
+ vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_mmx;
+ if (flags & HAS_SSE) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_ssse3;
+ vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_c;
+ if (flags & HAS_SSE) vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_ssse3;
+ vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_ssse3;
+ vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_avx2;
+ vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_ssse3;
+ vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_ssse3;
+ vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_ssse3;
+ vpx_subtract_block = vpx_subtract_block_c;
+ if (flags & HAS_SSE2) vpx_subtract_block = vpx_subtract_block_sse2;
+ vpx_tm_predictor_16x16 = vpx_tm_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_tm_predictor_16x16 = vpx_tm_predictor_16x16_sse2;
+ vpx_tm_predictor_4x4 = vpx_tm_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_tm_predictor_4x4 = vpx_tm_predictor_4x4_sse;
+ vpx_tm_predictor_8x8 = vpx_tm_predictor_8x8_c;
+ if (flags & HAS_SSE2) vpx_tm_predictor_8x8 = vpx_tm_predictor_8x8_sse2;
+ vpx_v_predictor_16x16 = vpx_v_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_v_predictor_16x16 = vpx_v_predictor_16x16_sse2;
+ vpx_v_predictor_32x32 = vpx_v_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_v_predictor_32x32 = vpx_v_predictor_32x32_sse2;
+ vpx_v_predictor_4x4 = vpx_v_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_v_predictor_4x4 = vpx_v_predictor_4x4_sse;
+ vpx_v_predictor_8x8 = vpx_v_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_v_predictor_8x8 = vpx_v_predictor_8x8_sse;
+ vpx_variance16x16 = vpx_variance16x16_c;
+ if (flags & HAS_MMX) vpx_variance16x16 = vpx_variance16x16_mmx;
+ if (flags & HAS_SSE2) vpx_variance16x16 = vpx_variance16x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance16x16 = vpx_variance16x16_avx2;
+ vpx_variance16x32 = vpx_variance16x32_c;
+ if (flags & HAS_SSE2) vpx_variance16x32 = vpx_variance16x32_sse2;
+ vpx_variance16x8 = vpx_variance16x8_c;
+ if (flags & HAS_MMX) vpx_variance16x8 = vpx_variance16x8_mmx;
+ if (flags & HAS_SSE2) vpx_variance16x8 = vpx_variance16x8_sse2;
+ vpx_variance32x16 = vpx_variance32x16_c;
+ if (flags & HAS_SSE2) vpx_variance32x16 = vpx_variance32x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x16 = vpx_variance32x16_avx2;
+ vpx_variance32x32 = vpx_variance32x32_c;
+ if (flags & HAS_SSE2) vpx_variance32x32 = vpx_variance32x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x32 = vpx_variance32x32_avx2;
+ vpx_variance32x64 = vpx_variance32x64_c;
+ if (flags & HAS_SSE2) vpx_variance32x64 = vpx_variance32x64_sse2;
+ vpx_variance4x4 = vpx_variance4x4_c;
+ if (flags & HAS_MMX) vpx_variance4x4 = vpx_variance4x4_mmx;
+ if (flags & HAS_SSE2) vpx_variance4x4 = vpx_variance4x4_sse2;
+ vpx_variance4x8 = vpx_variance4x8_c;
+ if (flags & HAS_SSE2) vpx_variance4x8 = vpx_variance4x8_sse2;
+ vpx_variance64x32 = vpx_variance64x32_c;
+ if (flags & HAS_SSE2) vpx_variance64x32 = vpx_variance64x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x32 = vpx_variance64x32_avx2;
+ vpx_variance64x64 = vpx_variance64x64_c;
+ if (flags & HAS_SSE2) vpx_variance64x64 = vpx_variance64x64_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x64 = vpx_variance64x64_avx2;
+ vpx_variance8x16 = vpx_variance8x16_c;
+ if (flags & HAS_MMX) vpx_variance8x16 = vpx_variance8x16_mmx;
+ if (flags & HAS_SSE2) vpx_variance8x16 = vpx_variance8x16_sse2;
+ vpx_variance8x4 = vpx_variance8x4_c;
+ if (flags & HAS_SSE2) vpx_variance8x4 = vpx_variance8x4_sse2;
+ vpx_variance8x8 = vpx_variance8x8_c;
+ if (flags & HAS_MMX) vpx_variance8x8 = vpx_variance8x8_mmx;
+ if (flags & HAS_SSE2) vpx_variance8x8 = vpx_variance8x8_sse2;
+ vpx_variance_halfpixvar16x16_h = vpx_variance_halfpixvar16x16_h_c;
+ if (flags & HAS_MMX) vpx_variance_halfpixvar16x16_h = vpx_variance_halfpixvar16x16_h_mmx;
+ if (flags & HAS_SSE2) vpx_variance_halfpixvar16x16_h = vpx_variance_halfpixvar16x16_h_sse2;
+ vpx_variance_halfpixvar16x16_hv = vpx_variance_halfpixvar16x16_hv_c;
+ if (flags & HAS_MMX) vpx_variance_halfpixvar16x16_hv = vpx_variance_halfpixvar16x16_hv_mmx;
+ if (flags & HAS_SSE2) vpx_variance_halfpixvar16x16_hv = vpx_variance_halfpixvar16x16_hv_sse2;
+ vpx_variance_halfpixvar16x16_v = vpx_variance_halfpixvar16x16_v_c;
+ if (flags & HAS_MMX) vpx_variance_halfpixvar16x16_v = vpx_variance_halfpixvar16x16_v_mmx;
+ if (flags & HAS_SSE2) vpx_variance_halfpixvar16x16_v = vpx_variance_halfpixvar16x16_v_sse2;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/mac/ia32/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/mac/ia32/vpx_scale_rtcd.h
new file mode 100644
index 0000000..ddf7d01
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/ia32/vpx_scale_rtcd.h
@@ -0,0 +1,69 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/mac/x64/vp8_rtcd.h b/third_party/libvpx_new/source/config/mac/x64/vp8_rtcd.h
new file mode 100644
index 0000000..ff9ac9f
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/x64/vp8_rtcd.h
@@ -0,0 +1,325 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_mmx
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_mmx
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+int vp8_block_error_mmx(short *coeff, short *dqcoeff);
+int vp8_block_error_xmm(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_xmm
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_sse2(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_ssse3(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mbuv_s)(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_sse2(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_ssse3(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mby_s)(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+
+void vp8_clear_system_state_c();
+void vpx_reset_mmx_state();
+#define vp8_clear_system_state vpx_reset_mmx_state
+
+void vp8_copy32xn_c(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse2(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse3(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+RTCD_EXTERN void (*vp8_copy32xn)(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_sse2(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem16x16 vp8_copy_mem16x16_sse2
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x4 vp8_copy_mem8x4_mmx
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x8 vp8_copy_mem8x8_mmx
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_mmx(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+#define vp8_dc_only_idct_add vp8_dc_only_idct_add_mmx
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_sse2(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter vp8_denoiser_filter_sse2
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_uv_sse2(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_sse2
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_mmx(short *input, short *dq, unsigned char *output, int stride);
+#define vp8_dequant_idct_add vp8_dequant_idct_add_mmx
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_mmx(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_sse2(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_sse2
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_mmx(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_sse2(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_sse2
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+void vp8_dequantize_b_mmx(struct blockd*, short *dqc);
+#define vp8_dequantize_b vp8_dequantize_b_mmx
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_diamond_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_diamond_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+void vp8_fast_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_fast_quantize_b_ssse3(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_fast_quantize_b)(struct block *, struct blockd *);
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight16x16_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_sse2
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight8x8_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_sse2
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx3(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx8(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_full_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_c
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bh vp8_loop_filter_bh_sse2
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bv vp8_loop_filter_bv_sse2
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbh vp8_loop_filter_mbh_sse2
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbv vp8_loop_filter_mbv_sse2
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_sse2
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_sse2
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbh vp8_loop_filter_simple_horizontal_edge_sse2
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbv vp8_loop_filter_simple_vertical_edge_sse2
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+int vp8_mbblock_error_mmx(struct macroblock *mb, int dc);
+int vp8_mbblock_error_xmm(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_xmm
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_across_ip_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_xmm
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_mmx(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_down vp8_mbpost_proc_down_xmm
+
+int vp8_mbuverror_c(struct macroblock *mb);
+int vp8_mbuverror_mmx(struct macroblock *mb);
+int vp8_mbuverror_xmm(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_xmm
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_mmx(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_wmt(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+#define vp8_plane_add_noise vp8_plane_add_noise_wmt
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+void vp8_post_proc_down_and_across_mb_row_sse2(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_sse2
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_refining_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_refining_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse4_1(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_regular_quantize_b)(struct block *, struct blockd *);
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_fdct4x4 vp8_short_fdct4x4_sse2
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_fdct8x4 vp8_short_fdct8x4_sse2
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_mmx(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+#define vp8_short_idct4x4llm vp8_short_idct4x4llm_mmx
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+void vp8_short_inv_walsh4x4_mmx(short *input, short *output);
+void vp8_short_inv_walsh4x4_sse2(short *input, short *output);
+#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_sse2
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_walsh4x4 vp8_short_walsh4x4_sse2
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict4x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_ssse3;
+ vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_ssse3;
+ vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_ssse3;
+ vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_ssse3;
+ vp8_copy32xn = vp8_copy32xn_sse2;
+ if (flags & HAS_SSE3) vp8_copy32xn = vp8_copy32xn_sse3;
+ vp8_diamond_search_sad = vp8_diamond_search_sad_c;
+ if (flags & HAS_SSE3) vp8_diamond_search_sad = vp8_diamond_search_sadx4;
+ vp8_fast_quantize_b = vp8_fast_quantize_b_sse2;
+ if (flags & HAS_SSSE3) vp8_fast_quantize_b = vp8_fast_quantize_b_ssse3;
+ vp8_full_search_sad = vp8_full_search_sad_c;
+ if (flags & HAS_SSE3) vp8_full_search_sad = vp8_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp8_full_search_sad = vp8_full_search_sadx8;
+ vp8_refining_search_sad = vp8_refining_search_sad_c;
+ if (flags & HAS_SSE3) vp8_refining_search_sad = vp8_refining_search_sadx4;
+ vp8_regular_quantize_b = vp8_regular_quantize_b_sse2;
+ if (flags & HAS_SSE4_1) vp8_regular_quantize_b = vp8_regular_quantize_b_sse4_1;
+ vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_ssse3;
+ vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_mmx;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_ssse3;
+ vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_ssse3;
+ vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_ssse3;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/mac/x64/vp9_rtcd.h b/third_party/libvpx_new/source/config/mac/x64/vp9_rtcd.h
new file mode 100644
index 0000000..f3200861
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/x64/vp9_rtcd.h
@@ -0,0 +1,193 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+unsigned int vp9_avg_4x4_sse2(const uint8_t *, int p);
+#define vp9_avg_4x4 vp9_avg_4x4_sse2
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+unsigned int vp9_avg_8x8_sse2(const uint8_t *, int p);
+#define vp9_avg_8x8 vp9_avg_8x8_sse2
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_sse2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_avx2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+RTCD_EXTERN int64_t (*vp9_block_error)(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+int64_t vp9_block_error_fp_sse2(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+#define vp9_block_error_fp vp9_block_error_fp_sse2
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+int vp9_denoiser_filter_sse2(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+#define vp9_denoiser_filter vp9_denoiser_filter_sse2
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_sse2(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_ssse3(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_fdct8x8_quant)(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht16x16_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_sse2
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht4x4_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_sse2
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht8x8_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_sse2
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight16x16_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_sse2
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight8x8_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_sse2
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx3(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx8(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+RTCD_EXTERN int (*vp9_full_search_sad)(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vp9_fwht4x4_mmx(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_mmx
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_16x16_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_16x16 vp9_hadamard_16x16_sse2
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_8x8_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_8x8_ssse3(int16_t const *src_diff, int src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vp9_hadamard_8x8)(int16_t const *src_diff, int src_stride, int16_t *coeff);
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+void vp9_iht16x16_256_add_sse2(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_sse2
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht4x4_16_add vp9_iht4x4_16_add_sse2
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht8x8_64_add vp9_iht8x8_64_add_sse2
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+int16_t vp9_int_pro_col_sse2(uint8_t const *ref, const int width);
+#define vp9_int_pro_col vp9_int_pro_col_sse2
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+void vp9_int_pro_row_sse2(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+#define vp9_int_pro_row vp9_int_pro_row_sse2
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_across_ip_xmm(uint8_t *src, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_xmm
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_down_xmm(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_down vp9_mbpost_proc_down_xmm
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+void vp9_minmax_8x8_sse2(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vp9_minmax_8x8 vp9_minmax_8x8_sse2
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+void vp9_plane_add_noise_wmt(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+#define vp9_plane_add_noise vp9_plane_add_noise_wmt
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+void vp9_post_proc_down_and_across_xmm(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+#define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_xmm
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_32x32_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp_32x32)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+int16_t vp9_satd_sse2(const int16_t *coeff, int length);
+#define vp9_satd vp9_satd_sse2
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+void vp9_temporal_filter_apply_sse2(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+#define vp9_temporal_filter_apply vp9_temporal_filter_apply_sse2
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+int vp9_vector_var_sse2(int16_t const *ref, int16_t const *src, const int bwl);
+#define vp9_vector_var vp9_vector_var_sse2
+
+void vp9_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp9_block_error = vp9_block_error_sse2;
+ if (flags & HAS_AVX2) vp9_block_error = vp9_block_error_avx2;
+ vp9_fdct8x8_quant = vp9_fdct8x8_quant_sse2;
+ if (flags & HAS_SSSE3) vp9_fdct8x8_quant = vp9_fdct8x8_quant_ssse3;
+ vp9_full_search_sad = vp9_full_search_sad_c;
+ if (flags & HAS_SSE3) vp9_full_search_sad = vp9_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp9_full_search_sad = vp9_full_search_sadx8;
+ vp9_hadamard_8x8 = vp9_hadamard_8x8_sse2;
+ if (flags & HAS_SSSE3) vp9_hadamard_8x8 = vp9_hadamard_8x8_ssse3;
+ vp9_quantize_fp = vp9_quantize_fp_sse2;
+ if (flags & HAS_SSSE3) vp9_quantize_fp = vp9_quantize_fp_ssse3;
+ vp9_quantize_fp_32x32 = vp9_quantize_fp_32x32_c;
+ if (flags & HAS_SSSE3) vp9_quantize_fp_32x32 = vp9_quantize_fp_32x32_ssse3;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/mac/x64/vpx_config.asm b/third_party/libvpx_new/source/config/mac/x64/vpx_config.asm
new file mode 100644
index 0000000..84a6b2b
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/x64/vpx_config.asm
@@ -0,0 +1,87 @@
+%define ARCH_ARM 0
+%define ARCH_MIPS 0
+%define ARCH_X86 0
+%define ARCH_X86_64 1
+%define HAVE_EDSP 0
+%define HAVE_MEDIA 0
+%define HAVE_NEON 0
+%define HAVE_NEON_ASM 0
+%define HAVE_MIPS32 0
+%define HAVE_DSPR2 0
+%define HAVE_MSA 0
+%define HAVE_MIPS64 0
+%define HAVE_MMX 1
+%define HAVE_SSE 1
+%define HAVE_SSE2 1
+%define HAVE_SSE3 1
+%define HAVE_SSSE3 1
+%define HAVE_SSE4_1 1
+%define HAVE_AVX 1
+%define HAVE_AVX2 1
+%define HAVE_VPX_PORTS 1
+%define HAVE_STDINT_H 1
+%define HAVE_PTHREAD_H 1
+%define HAVE_SYS_MMAN_H 1
+%define HAVE_UNISTD_H 0
+%define CONFIG_DEPENDENCY_TRACKING 1
+%define CONFIG_EXTERNAL_BUILD 1
+%define CONFIG_INSTALL_DOCS 0
+%define CONFIG_INSTALL_BINS 1
+%define CONFIG_INSTALL_LIBS 1
+%define CONFIG_INSTALL_SRCS 0
+%define CONFIG_USE_X86INC 1
+%define CONFIG_DEBUG 0
+%define CONFIG_GPROF 0
+%define CONFIG_GCOV 0
+%define CONFIG_RVCT 0
+%define CONFIG_GCC 1
+%define CONFIG_MSVS 0
+%define CONFIG_PIC 1
+%define CONFIG_BIG_ENDIAN 0
+%define CONFIG_CODEC_SRCS 0
+%define CONFIG_DEBUG_LIBS 0
+%define CONFIG_DEQUANT_TOKENS 0
+%define CONFIG_DC_RECON 0
+%define CONFIG_RUNTIME_CPU_DETECT 1
+%define CONFIG_POSTPROC 1
+%define CONFIG_VP9_POSTPROC 1
+%define CONFIG_MULTITHREAD 1
+%define CONFIG_INTERNAL_STATS 0
+%define CONFIG_VP8_ENCODER 1
+%define CONFIG_VP8_DECODER 1
+%define CONFIG_VP9_ENCODER 1
+%define CONFIG_VP9_DECODER 1
+%define CONFIG_VP10_ENCODER 0
+%define CONFIG_VP10_DECODER 0
+%define CONFIG_VP8 1
+%define CONFIG_VP9 1
+%define CONFIG_VP10 0
+%define CONFIG_ENCODERS 1
+%define CONFIG_DECODERS 1
+%define CONFIG_STATIC_MSVCRT 0
+%define CONFIG_SPATIAL_RESAMPLING 1
+%define CONFIG_REALTIME_ONLY 1
+%define CONFIG_ONTHEFLY_BITPACKING 0
+%define CONFIG_ERROR_CONCEALMENT 0
+%define CONFIG_SHARED 0
+%define CONFIG_STATIC 1
+%define CONFIG_SMALL 0
+%define CONFIG_POSTPROC_VISUALIZER 0
+%define CONFIG_OS_SUPPORT 1
+%define CONFIG_UNIT_TESTS 0
+%define CONFIG_WEBM_IO 1
+%define CONFIG_LIBYUV 1
+%define CONFIG_DECODE_PERF_TESTS 0
+%define CONFIG_ENCODE_PERF_TESTS 0
+%define CONFIG_MULTI_RES_ENCODING 1
+%define CONFIG_TEMPORAL_DENOISING 1
+%define CONFIG_VP9_TEMPORAL_DENOISING 1
+%define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+%define CONFIG_VP9_HIGHBITDEPTH 0
+%define CONFIG_EXPERIMENTAL 0
+%define CONFIG_SIZE_LIMIT 1
+%define CONFIG_SPATIAL_SVC 0
+%define CONFIG_FP_MB_STATS 0
+%define CONFIG_EMULATE_HARDWARE 0
+%define DECODE_WIDTH_LIMIT 16384
+%define DECODE_HEIGHT_LIMIT 16384
diff --git a/third_party/libvpx_new/source/config/mac/x64/vpx_config.c b/third_party/libvpx_new/source/config/mac/x64/vpx_config.c
new file mode 100644
index 0000000..cba8a3d
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/x64/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=x86_64-darwin9-gcc --enable-pic --enable-realtime-only --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/mac/x64/vpx_config.h b/third_party/libvpx_new/source/config/mac/x64/vpx_config.h
new file mode 100644
index 0000000..a1cd9ff
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/x64/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 0
+#define ARCH_MIPS 0
+#define ARCH_X86 0
+#define ARCH_X86_64 1
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 0
+#define HAVE_NEON 0
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 1
+#define HAVE_SSE 1
+#define HAVE_SSE2 1
+#define HAVE_SSE3 1
+#define HAVE_SSSE3 1
+#define HAVE_SSE4_1 1
+#define HAVE_AVX 1
+#define HAVE_AVX2 1
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 1
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 1
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/mac/x64/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/mac/x64/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..7cf74d2
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/x64/vpx_dsp_rtcd.h
@@ -0,0 +1,1126 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_avg vpx_convolve_avg_sse2
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_copy_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_copy vpx_convolve_copy_sse2
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_sse2
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_sse2
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_sse
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_sse
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_sse2
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_sse2
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_sse
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_sse
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_sse2
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_sse2
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_sse
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_sse
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_sse2
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_sse2
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_sse
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_sse
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_sse2
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_sse2
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_sse2
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32_rd)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_sse2
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_sse2
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_ssse3(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8_1 vpx_fdct8x8_1_sse2
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get16x16var)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get8x8var vpx_get8x8var_sse2
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+unsigned int vpx_get_mb_ss_mmx(const int16_t *);
+unsigned int vpx_get_mb_ss_sse2(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_sse2
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_10_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_10_add vpx_idct16x16_10_add_sse2
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_1_add vpx_idct16x16_1_add_sse2
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_256_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_256_add vpx_idct16x16_256_add_sse2
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1024_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_sse2
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1_add vpx_idct32x32_1_add_sse2
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_34_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_34_add vpx_idct32x32_34_add_sse2
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_16_add vpx_idct4x4_16_add_sse2
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_1_add vpx_idct4x4_1_add_sse2
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_ssse3(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_12_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_1_add vpx_idct8x8_1_add_sse2
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_ssse3(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_64_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_iwht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_sse2
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_avx2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_mmx
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_sse2
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_sse2
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_sse2
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16 vpx_lpf_vertical_16_sse2
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_sse2
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_4 vpx_lpf_vertical_4_mmx
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_sse2
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_8 vpx_lpf_vertical_8_sse2
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_sse2
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x8 vpx_mse16x8_sse2
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_sse2
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_sse2
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vpx_quantize_b)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_32x32_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vpx_quantize_b_32x32)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x16 vpx_sad16x16_sse2
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_sse2
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x4d vpx_sad16x16x4d_sse2
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_sse2
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_sse2
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_sse2
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x8 vpx_sad16x8_sse2
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_sse2
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_sse2
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_sse2
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_sse2
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x4 vpx_sad4x4_sse
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x4_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_sse
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_sse
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x8_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_sse
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x8_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_sse
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x8x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_sse
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_sse2
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad64x64x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x16 vpx_sad8x16_sse2
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_sse2
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_sse2
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x4_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_sse2
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x4_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_sse2
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x4x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_sse2
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x8 vpx_sad8x8_sse2
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_sse2
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_sse2
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_scaled_2d_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_scaled_2d)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+void vpx_subtract_block_sse2(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+#define vpx_subtract_block vpx_subtract_block_sse2
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_sse2
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_sse2
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_sse
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_sse2
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_16x16 vpx_v_predictor_16x16_sse2
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_32x32 vpx_v_predictor_32x32_sse2
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_4x4 vpx_v_predictor_4x4_sse
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_8x8 vpx_v_predictor_8x8_sse
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x32 vpx_variance16x32_sse2
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x8 vpx_variance16x8_sse2
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x64 vpx_variance32x64_sse2
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_sse2
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_sse2
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x64)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x16 vpx_variance8x16_sse2
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_sse2
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x8 vpx_variance8x8_sse2
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_h vpx_variance_halfpixvar16x16_h_sse2
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_hv vpx_variance_halfpixvar16x16_hv_sse2
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_v vpx_variance_halfpixvar16x16_v_sse2
+
+void vpx_dsp_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vpx_convolve8 = vpx_convolve8_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8 = vpx_convolve8_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8 = vpx_convolve8_avx2;
+ vpx_convolve8_avg = vpx_convolve8_avg_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg = vpx_convolve8_avg_ssse3;
+ vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_ssse3;
+ vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_ssse3;
+ vpx_convolve8_horiz = vpx_convolve8_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_horiz = vpx_convolve8_horiz_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_horiz = vpx_convolve8_horiz_avx2;
+ vpx_convolve8_vert = vpx_convolve8_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_vert = vpx_convolve8_vert_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_vert = vpx_convolve8_vert_avx2;
+ vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_ssse3;
+ vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_ssse3;
+ vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_ssse3;
+ vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_ssse3;
+ vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_ssse3;
+ vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_ssse3;
+ vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_ssse3;
+ vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_ssse3;
+ vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_ssse3;
+ vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_ssse3;
+ vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_ssse3;
+ vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_ssse3;
+ vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_ssse3;
+ vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_ssse3;
+ vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_ssse3;
+ vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_ssse3;
+ vpx_fdct32x32 = vpx_fdct32x32_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32 = vpx_fdct32x32_avx2;
+ vpx_fdct32x32_rd = vpx_fdct32x32_rd_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32_rd = vpx_fdct32x32_rd_avx2;
+ vpx_fdct8x8 = vpx_fdct8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_fdct8x8 = vpx_fdct8x8_ssse3;
+ vpx_get16x16var = vpx_get16x16var_sse2;
+ if (flags & HAS_AVX2) vpx_get16x16var = vpx_get16x16var_avx2;
+ vpx_h_predictor_16x16 = vpx_h_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_16x16 = vpx_h_predictor_16x16_ssse3;
+ vpx_h_predictor_32x32 = vpx_h_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_32x32 = vpx_h_predictor_32x32_ssse3;
+ vpx_h_predictor_4x4 = vpx_h_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_4x4 = vpx_h_predictor_4x4_ssse3;
+ vpx_h_predictor_8x8 = vpx_h_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_8x8 = vpx_h_predictor_8x8_ssse3;
+ vpx_idct8x8_12_add = vpx_idct8x8_12_add_sse2;
+ if (flags & HAS_SSSE3) vpx_idct8x8_12_add = vpx_idct8x8_12_add_ssse3;
+ vpx_idct8x8_64_add = vpx_idct8x8_64_add_sse2;
+ if (flags & HAS_SSSE3) vpx_idct8x8_64_add = vpx_idct8x8_64_add_ssse3;
+ vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_sse2;
+ if (flags & HAS_AVX2) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_avx2;
+ vpx_mse16x16 = vpx_mse16x16_sse2;
+ if (flags & HAS_AVX2) vpx_mse16x16 = vpx_mse16x16_avx2;
+ vpx_quantize_b = vpx_quantize_b_sse2;
+ if (flags & HAS_SSSE3) vpx_quantize_b = vpx_quantize_b_ssse3;
+ vpx_quantize_b_32x32 = vpx_quantize_b_32x32_c;
+ if (flags & HAS_SSSE3) vpx_quantize_b_32x32 = vpx_quantize_b_32x32_ssse3;
+ vpx_sad16x16x3 = vpx_sad16x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x16x3 = vpx_sad16x16x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x16x3 = vpx_sad16x16x3_ssse3;
+ vpx_sad16x16x8 = vpx_sad16x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x16x8 = vpx_sad16x16x8_sse4_1;
+ vpx_sad16x8x3 = vpx_sad16x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x8x3 = vpx_sad16x8x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x8x3 = vpx_sad16x8x3_ssse3;
+ vpx_sad16x8x8 = vpx_sad16x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x8x8 = vpx_sad16x8x8_sse4_1;
+ vpx_sad32x16 = vpx_sad32x16_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16 = vpx_sad32x16_avx2;
+ vpx_sad32x16_avg = vpx_sad32x16_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16_avg = vpx_sad32x16_avg_avx2;
+ vpx_sad32x32 = vpx_sad32x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32 = vpx_sad32x32_avx2;
+ vpx_sad32x32_avg = vpx_sad32x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32_avg = vpx_sad32x32_avg_avx2;
+ vpx_sad32x32x4d = vpx_sad32x32x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32x4d = vpx_sad32x32x4d_avx2;
+ vpx_sad32x64 = vpx_sad32x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64 = vpx_sad32x64_avx2;
+ vpx_sad32x64_avg = vpx_sad32x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64_avg = vpx_sad32x64_avg_avx2;
+ vpx_sad4x4x3 = vpx_sad4x4x3_c;
+ if (flags & HAS_SSE3) vpx_sad4x4x3 = vpx_sad4x4x3_sse3;
+ vpx_sad4x4x8 = vpx_sad4x4x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad4x4x8 = vpx_sad4x4x8_sse4_1;
+ vpx_sad64x32 = vpx_sad64x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32 = vpx_sad64x32_avx2;
+ vpx_sad64x32_avg = vpx_sad64x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32_avg = vpx_sad64x32_avg_avx2;
+ vpx_sad64x64 = vpx_sad64x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64 = vpx_sad64x64_avx2;
+ vpx_sad64x64_avg = vpx_sad64x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64_avg = vpx_sad64x64_avg_avx2;
+ vpx_sad64x64x4d = vpx_sad64x64x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64x4d = vpx_sad64x64x4d_avx2;
+ vpx_sad8x16x3 = vpx_sad8x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x16x3 = vpx_sad8x16x3_sse3;
+ vpx_sad8x16x8 = vpx_sad8x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x16x8 = vpx_sad8x16x8_sse4_1;
+ vpx_sad8x8x3 = vpx_sad8x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x8x3 = vpx_sad8x8x3_sse3;
+ vpx_sad8x8x8 = vpx_sad8x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x8x8 = vpx_sad8x8x8_sse4_1;
+ vpx_scaled_2d = vpx_scaled_2d_c;
+ if (flags & HAS_SSSE3) vpx_scaled_2d = vpx_scaled_2d_ssse3;
+ vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_ssse3;
+ vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_ssse3;
+ vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_ssse3;
+ vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_ssse3;
+ vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_avx2;
+ vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_ssse3;
+ vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_ssse3;
+ vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_ssse3;
+ vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_ssse3;
+ vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_avx2;
+ vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_ssse3;
+ vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_ssse3;
+ vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_ssse3;
+ vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_ssse3;
+ vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_ssse3;
+ vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_ssse3;
+ vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_ssse3;
+ vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_avx2;
+ vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_ssse3;
+ vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_ssse3;
+ vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_ssse3;
+ vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_ssse3;
+ vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_avx2;
+ vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_ssse3;
+ vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_ssse3;
+ vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_ssse3;
+ vpx_variance16x16 = vpx_variance16x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance16x16 = vpx_variance16x16_avx2;
+ vpx_variance32x16 = vpx_variance32x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x16 = vpx_variance32x16_avx2;
+ vpx_variance32x32 = vpx_variance32x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x32 = vpx_variance32x32_avx2;
+ vpx_variance64x32 = vpx_variance64x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x32 = vpx_variance64x32_avx2;
+ vpx_variance64x64 = vpx_variance64x64_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x64 = vpx_variance64x64_avx2;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/mac/x64/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/mac/x64/vpx_scale_rtcd.h
new file mode 100644
index 0000000..ddf7d01
--- /dev/null
+++ b/third_party/libvpx_new/source/config/mac/x64/vpx_scale_rtcd.h
@@ -0,0 +1,69 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/nacl/vp8_rtcd.h b/third_party/libvpx_new/source/config/nacl/vp8_rtcd.h
new file mode 100644
index 0000000..dc2834b
--- /dev/null
+++ b/third_party/libvpx_new/source/config/nacl/vp8_rtcd.h
@@ -0,0 +1,205 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict16x16 vp8_bilinear_predict16x16_c
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_c
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_c
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x8 vp8_bilinear_predict8x8_c
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_c
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+#define vp8_build_intra_predictors_mbuv_s vp8_build_intra_predictors_mbuv_s_c
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+#define vp8_build_intra_predictors_mby_s vp8_build_intra_predictors_mby_s_c
+
+void vp8_clear_system_state_c();
+#define vp8_clear_system_state vp8_clear_system_state_c
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem16x16 vp8_copy_mem16x16_c
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x4 vp8_copy_mem8x4_c
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x8 vp8_copy_mem8x8_c
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+#define vp8_dc_only_idct_add vp8_dc_only_idct_add_c
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter vp8_denoiser_filter_c
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_c
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+#define vp8_dequant_idct_add vp8_dequant_idct_add_c
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_c
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_c
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+#define vp8_dequantize_b vp8_dequantize_b_c
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_diamond_search_sad vp8_diamond_search_sad_c
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+#define vp8_fast_quantize_b vp8_fast_quantize_b_c
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_c
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_c
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_full_search_sad vp8_full_search_sad_c
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_c
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bh vp8_loop_filter_bh_c
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bv vp8_loop_filter_bv_c
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbh vp8_loop_filter_mbh_c
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbv vp8_loop_filter_mbv_c
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_c
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_c
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbh vp8_loop_filter_simple_horizontal_edge_c
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbv vp8_loop_filter_simple_vertical_edge_c
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_c
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_c
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_down vp8_mbpost_proc_down_c
+
+int vp8_mbuverror_c(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_c
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+#define vp8_plane_add_noise vp8_plane_add_noise_c
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_c
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_refining_search_sad vp8_refining_search_sad_c
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+#define vp8_regular_quantize_b vp8_regular_quantize_b_c
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+#define vp8_short_fdct4x4 vp8_short_fdct4x4_c
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+#define vp8_short_fdct8x4 vp8_short_fdct8x4_c
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+#define vp8_short_idct4x4llm vp8_short_idct4x4llm_c
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_c
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+#define vp8_short_walsh4x4 vp8_short_walsh4x4_c
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict16x16 vp8_sixtap_predict16x16_c
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict4x4 vp8_sixtap_predict4x4_c
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x4 vp8_sixtap_predict8x4_c
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_sixtap_predict8x8 vp8_sixtap_predict8x8_c
+
+void vp8_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/nacl/vp9_rtcd.h b/third_party/libvpx_new/source/config/nacl/vp9_rtcd.h
new file mode 100644
index 0000000..b50359b
--- /dev/null
+++ b/third_party/libvpx_new/source/config/nacl/vp9_rtcd.h
@@ -0,0 +1,142 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+#define vp9_avg_4x4 vp9_avg_4x4_c
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+#define vp9_avg_8x8 vp9_avg_8x8_c
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+#define vp9_block_error vp9_block_error_c
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+#define vp9_block_error_fp vp9_block_error_fp_c
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+#define vp9_denoiser_filter vp9_denoiser_filter_c
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_fdct8x8_quant vp9_fdct8x8_quant_c
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_c
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_c
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_c
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_c
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_c
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+#define vp9_full_search_sad vp9_full_search_sad_c
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_c
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_16x16 vp9_hadamard_16x16_c
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_8x8 vp9_hadamard_8x8_c
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_c
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht4x4_16_add vp9_iht4x4_16_add_c
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht8x8_64_add vp9_iht8x8_64_add_c
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+#define vp9_int_pro_col vp9_int_pro_col_c
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+#define vp9_int_pro_row vp9_int_pro_row_c
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_c
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_down vp9_mbpost_proc_down_c
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vp9_minmax_8x8 vp9_minmax_8x8_c
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+#define vp9_plane_add_noise vp9_plane_add_noise_c
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+#define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_c
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp vp9_quantize_fp_c
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+#define vp9_satd vp9_satd_c
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+#define vp9_temporal_filter_apply vp9_temporal_filter_apply_c
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+#define vp9_vector_var vp9_vector_var_c
+
+void vp9_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/nacl/vpx_config.asm b/third_party/libvpx_new/source/config/nacl/vpx_config.asm
new file mode 100644
index 0000000..fe14db8
--- /dev/null
+++ b/third_party/libvpx_new/source/config/nacl/vpx_config.asm
@@ -0,0 +1,91 @@
+@ This file was created from a .asm file
+@ using the ads2gas.pl script.
+ .equ DO1STROUNDING, 0
+.equ ARCH_ARM , 0
+.equ ARCH_MIPS , 0
+.equ ARCH_X86 , 0
+.equ ARCH_X86_64 , 0
+.equ HAVE_EDSP , 0
+.equ HAVE_MEDIA , 0
+.equ HAVE_NEON , 0
+.equ HAVE_NEON_ASM , 0
+.equ HAVE_MIPS32 , 0
+.equ HAVE_DSPR2 , 0
+.equ HAVE_MSA , 0
+.equ HAVE_MIPS64 , 0
+.equ HAVE_MMX , 0
+.equ HAVE_SSE , 0
+.equ HAVE_SSE2 , 0
+.equ HAVE_SSE3 , 0
+.equ HAVE_SSSE3 , 0
+.equ HAVE_SSE4_1 , 0
+.equ HAVE_AVX , 0
+.equ HAVE_AVX2 , 0
+.equ HAVE_VPX_PORTS , 1
+.equ HAVE_STDINT_H , 1
+.equ HAVE_PTHREAD_H , 1
+.equ HAVE_SYS_MMAN_H , 1
+.equ HAVE_UNISTD_H , 0
+.equ CONFIG_DEPENDENCY_TRACKING , 1
+.equ CONFIG_EXTERNAL_BUILD , 1
+.equ CONFIG_INSTALL_DOCS , 0
+.equ CONFIG_INSTALL_BINS , 1
+.equ CONFIG_INSTALL_LIBS , 1
+.equ CONFIG_INSTALL_SRCS , 0
+.equ CONFIG_USE_X86INC , 0
+.equ CONFIG_DEBUG , 0
+.equ CONFIG_GPROF , 0
+.equ CONFIG_GCOV , 0
+.equ CONFIG_RVCT , 0
+.equ CONFIG_GCC , 1
+.equ CONFIG_MSVS , 0
+.equ CONFIG_PIC , 1
+.equ CONFIG_BIG_ENDIAN , 0
+.equ CONFIG_CODEC_SRCS , 0
+.equ CONFIG_DEBUG_LIBS , 0
+.equ CONFIG_DEQUANT_TOKENS , 0
+.equ CONFIG_DC_RECON , 0
+.equ CONFIG_RUNTIME_CPU_DETECT , 0
+.equ CONFIG_POSTPROC , 1
+.equ CONFIG_VP9_POSTPROC , 1
+.equ CONFIG_MULTITHREAD , 1
+.equ CONFIG_INTERNAL_STATS , 0
+.equ CONFIG_VP8_ENCODER , 1
+.equ CONFIG_VP8_DECODER , 1
+.equ CONFIG_VP9_ENCODER , 1
+.equ CONFIG_VP9_DECODER , 1
+.equ CONFIG_VP10_ENCODER , 0
+.equ CONFIG_VP10_DECODER , 0
+.equ CONFIG_VP8 , 1
+.equ CONFIG_VP9 , 1
+.equ CONFIG_VP10 , 0
+.equ CONFIG_ENCODERS , 1
+.equ CONFIG_DECODERS , 1
+.equ CONFIG_STATIC_MSVCRT , 0
+.equ CONFIG_SPATIAL_RESAMPLING , 1
+.equ CONFIG_REALTIME_ONLY , 1
+.equ CONFIG_ONTHEFLY_BITPACKING , 0
+.equ CONFIG_ERROR_CONCEALMENT , 0
+.equ CONFIG_SHARED , 0
+.equ CONFIG_STATIC , 1
+.equ CONFIG_SMALL , 0
+.equ CONFIG_POSTPROC_VISUALIZER , 0
+.equ CONFIG_OS_SUPPORT , 1
+.equ CONFIG_UNIT_TESTS , 0
+.equ CONFIG_WEBM_IO , 1
+.equ CONFIG_LIBYUV , 1
+.equ CONFIG_DECODE_PERF_TESTS , 0
+.equ CONFIG_ENCODE_PERF_TESTS , 0
+.equ CONFIG_MULTI_RES_ENCODING , 1
+.equ CONFIG_TEMPORAL_DENOISING , 1
+.equ CONFIG_VP9_TEMPORAL_DENOISING , 1
+.equ CONFIG_COEFFICIENT_RANGE_CHECKING , 0
+.equ CONFIG_VP9_HIGHBITDEPTH , 0
+.equ CONFIG_EXPERIMENTAL , 0
+.equ CONFIG_SIZE_LIMIT , 1
+.equ CONFIG_SPATIAL_SVC , 0
+.equ CONFIG_FP_MB_STATS , 0
+.equ CONFIG_EMULATE_HARDWARE , 0
+.equ DECODE_WIDTH_LIMIT , 16384
+.equ DECODE_HEIGHT_LIMIT , 16384
+ .section .note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx_new/source/config/nacl/vpx_config.c b/third_party/libvpx_new/source/config/nacl/vpx_config.c
new file mode 100644
index 0000000..2a18a45
--- /dev/null
+++ b/third_party/libvpx_new/source/config/nacl/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=generic-gnu --enable-pic --enable-realtime-only --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/nacl/vpx_config.h b/third_party/libvpx_new/source/config/nacl/vpx_config.h
new file mode 100644
index 0000000..08e4452
--- /dev/null
+++ b/third_party/libvpx_new/source/config/nacl/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE inline
+#define ARCH_ARM 0
+#define ARCH_MIPS 0
+#define ARCH_X86 0
+#define ARCH_X86_64 0
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 0
+#define HAVE_NEON 0
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 0
+#define HAVE_SSE 0
+#define HAVE_SSE2 0
+#define HAVE_SSE3 0
+#define HAVE_SSSE3 0
+#define HAVE_SSE4_1 0
+#define HAVE_AVX 0
+#define HAVE_AVX2 0
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 0
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 0
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/nacl/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/nacl/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..010cbe7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/nacl/vpx_dsp_rtcd.h
@@ -0,0 +1,660 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8 vpx_convolve8_c
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg vpx_convolve8_avg_c
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_horiz vpx_convolve8_avg_horiz_c
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_avg_vert vpx_convolve8_avg_vert_c
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_horiz vpx_convolve8_horiz_c
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve8_vert vpx_convolve8_vert_c
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_avg vpx_convolve_avg_c
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_copy vpx_convolve_copy_c
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_16x16 vpx_d153_predictor_16x16_c
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_32x32 vpx_d153_predictor_32x32_c
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_4x4 vpx_d153_predictor_4x4_c
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d153_predictor_8x8 vpx_d153_predictor_8x8_c
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_16x16 vpx_d207_predictor_16x16_c
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_32x32 vpx_d207_predictor_32x32_c
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_4x4 vpx_d207_predictor_4x4_c
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_8x8 vpx_d207_predictor_8x8_c
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_16x16 vpx_d45_predictor_16x16_c
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_32x32 vpx_d45_predictor_32x32_c
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_4x4 vpx_d45_predictor_4x4_c
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_8x8 vpx_d45_predictor_8x8_c
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_16x16 vpx_d63_predictor_16x16_c
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_32x32 vpx_d63_predictor_32x32_c
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_4x4 vpx_d63_predictor_4x4_c
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63_predictor_8x8 vpx_d63_predictor_8x8_c
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_c
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_c
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_c
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_c
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_c
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_c
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_c
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_c
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_c
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_c
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_c
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_c
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_c
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_c
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_c
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_c
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_c
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_c
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32 vpx_fdct32x32_c
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_c
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_rd vpx_fdct32x32_rd_c
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_c
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_c
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8 vpx_fdct8x8_c
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8_1 vpx_fdct8x8_1_c
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get16x16var vpx_get16x16var_c
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get8x8var vpx_get8x8var_c
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_c
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_16x16 vpx_h_predictor_16x16_c
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_32x32 vpx_h_predictor_32x32_c
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_4x4 vpx_h_predictor_4x4_c
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_8x8 vpx_h_predictor_8x8_c
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_10_add vpx_idct16x16_10_add_c
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_1_add vpx_idct16x16_1_add_c
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_256_add vpx_idct16x16_256_add_c
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_c
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1_add vpx_idct32x32_1_add_c
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_34_add vpx_idct32x32_34_add_c
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_16_add vpx_idct4x4_16_add_c
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_1_add vpx_idct4x4_1_add_c
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_12_add vpx_idct8x8_12_add_c
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_1_add vpx_idct8x8_1_add_c
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_64_add vpx_idct8x8_64_add_c
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_c
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_16 vpx_lpf_horizontal_16_c
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_c
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_c
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_c
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_c
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16 vpx_lpf_vertical_16_c
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_c
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_4 vpx_lpf_vertical_4_c
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_c
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_8 vpx_lpf_vertical_8_c
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_c
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x16 vpx_mse16x16_c
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x8 vpx_mse16x8_c
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_c
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_c
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b vpx_quantize_b_c
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x16 vpx_sad16x16_c
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_c
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x3 vpx_sad16x16x3_c
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x4d vpx_sad16x16x4d_c
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x8 vpx_sad16x16x8_c
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_c
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_c
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_c
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x8 vpx_sad16x8_c
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_c
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x3 vpx_sad16x8x3_c
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_c
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x8 vpx_sad16x8x8_c
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x16 vpx_sad32x16_c
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x16_avg vpx_sad32x16_avg_c
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_c
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x32 vpx_sad32x32_c
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x32_avg vpx_sad32x32_avg_c
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x4d vpx_sad32x32x4d_c
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad32x64 vpx_sad32x64_c
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad32x64_avg vpx_sad32x64_avg_c
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_c
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x4 vpx_sad4x4_c
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_c
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x3 vpx_sad4x4x3_c
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_c
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x8 vpx_sad4x4x8_c
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_c
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_c
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_c
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x32 vpx_sad64x32_c
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x32_avg vpx_sad64x32_avg_c
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_c
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad64x64 vpx_sad64x64_c
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad64x64_avg vpx_sad64x64_avg_c
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x4d vpx_sad64x64x4d_c
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x16 vpx_sad8x16_c
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_c
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x3 vpx_sad8x16x3_c
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_c
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x8 vpx_sad8x16x8_c
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_c
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_c
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_c
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x8 vpx_sad8x8_c
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_c
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x3 vpx_sad8x8x3_c
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_c
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x8 vpx_sad8x8x8_c
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_2d vpx_scaled_2d_c
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x16 vpx_sub_pixel_avg_variance16x16_c
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x32 vpx_sub_pixel_avg_variance16x32_c
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance16x8 vpx_sub_pixel_avg_variance16x8_c
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x16 vpx_sub_pixel_avg_variance32x16_c
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x32 vpx_sub_pixel_avg_variance32x32_c
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance32x64 vpx_sub_pixel_avg_variance32x64_c
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x4 vpx_sub_pixel_avg_variance4x4_c
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance4x8 vpx_sub_pixel_avg_variance4x8_c
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x32 vpx_sub_pixel_avg_variance64x32_c
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance64x64 vpx_sub_pixel_avg_variance64x64_c
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x16 vpx_sub_pixel_avg_variance8x16_c
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x4 vpx_sub_pixel_avg_variance8x4_c
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+#define vpx_sub_pixel_avg_variance8x8 vpx_sub_pixel_avg_variance8x8_c
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x16 vpx_sub_pixel_variance16x16_c
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x32 vpx_sub_pixel_variance16x32_c
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance16x8 vpx_sub_pixel_variance16x8_c
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x16 vpx_sub_pixel_variance32x16_c
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x32 vpx_sub_pixel_variance32x32_c
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance32x64 vpx_sub_pixel_variance32x64_c
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x4 vpx_sub_pixel_variance4x4_c
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance4x8 vpx_sub_pixel_variance4x8_c
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x32 vpx_sub_pixel_variance64x32_c
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance64x64 vpx_sub_pixel_variance64x64_c
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x16 vpx_sub_pixel_variance8x16_c
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x4 vpx_sub_pixel_variance8x4_c
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_sub_pixel_variance8x8 vpx_sub_pixel_variance8x8_c
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+#define vpx_subtract_block vpx_subtract_block_c
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_c
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_c
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_c
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_c
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_16x16 vpx_v_predictor_16x16_c
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_32x32 vpx_v_predictor_32x32_c
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_4x4 vpx_v_predictor_4x4_c
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_8x8 vpx_v_predictor_8x8_c
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x16 vpx_variance16x16_c
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x32 vpx_variance16x32_c
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x8 vpx_variance16x8_c
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x16 vpx_variance32x16_c
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x32 vpx_variance32x32_c
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x64 vpx_variance32x64_c
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_c
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_c
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x32 vpx_variance64x32_c
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance64x64 vpx_variance64x64_c
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x16 vpx_variance8x16_c
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_c
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x8 vpx_variance8x8_c
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_h vpx_variance_halfpixvar16x16_h_c
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_hv vpx_variance_halfpixvar16x16_hv_c
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_v vpx_variance_halfpixvar16x16_v_c
+
+void vpx_dsp_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/nacl/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/nacl/vpx_scale_rtcd.h
new file mode 100644
index 0000000..f419cc7
--- /dev/null
+++ b/third_party/libvpx_new/source/config/nacl/vpx_scale_rtcd.h
@@ -0,0 +1,66 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#include "vpx_config.h"
+
+#ifdef RTCD_C
+static void setup_rtcd_internal(void)
+{
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/vpx_version.h b/third_party/libvpx_new/source/config/vpx_version.h
new file mode 100644
index 0000000..fe8351d
--- /dev/null
+++ b/third_party/libvpx_new/source/config/vpx_version.h
@@ -0,0 +1,7 @@
+#define VERSION_MAJOR 1
+#define VERSION_MINOR 4
+#define VERSION_PATCH 0
+#define VERSION_EXTRA "1219-gc5f1191"
+#define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
+#define VERSION_STRING_NOSP "v1.4.0-1219-gc5f1191"
+#define VERSION_STRING " v1.4.0-1219-gc5f1191"
diff --git a/third_party/libvpx_new/source/config/win/ia32/vp8_rtcd.h b/third_party/libvpx_new/source/config/win/ia32/vp8_rtcd.h
new file mode 100644
index 0000000..d08f080
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/ia32/vp8_rtcd.h
@@ -0,0 +1,430 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict4x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+int vp8_block_error_mmx(short *coeff, short *dqcoeff);
+int vp8_block_error_xmm(short *coeff, short *dqcoeff);
+RTCD_EXTERN int (*vp8_block_error)(short *coeff, short *dqcoeff);
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_sse2(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_ssse3(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mbuv_s)(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_sse2(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_ssse3(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mby_s)(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+
+void vp8_clear_system_state_c();
+void vpx_reset_mmx_state();
+RTCD_EXTERN void (*vp8_clear_system_state)();
+
+void vp8_copy32xn_c(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse2(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse3(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+RTCD_EXTERN void (*vp8_copy32xn)(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_sse2(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem16x16)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem8x4)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_copy_mem8x8)(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_mmx(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+RTCD_EXTERN void (*vp8_dc_only_idct_add)(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_sse2(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+RTCD_EXTERN int (*vp8_denoiser_filter)(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_uv_sse2(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+RTCD_EXTERN int (*vp8_denoiser_filter_uv)(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_mmx(short *input, short *dq, unsigned char *output, int stride);
+RTCD_EXTERN void (*vp8_dequant_idct_add)(short *input, short *dq, unsigned char *output, int stride);
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_mmx(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_sse2(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+RTCD_EXTERN void (*vp8_dequant_idct_add_uv_block)(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_mmx(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_sse2(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+RTCD_EXTERN void (*vp8_dequant_idct_add_y_block)(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+void vp8_dequantize_b_mmx(struct blockd*, short *dqc);
+RTCD_EXTERN void (*vp8_dequantize_b)(struct blockd*, short *dqc);
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_diamond_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_diamond_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+void vp8_fast_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_fast_quantize_b_ssse3(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_fast_quantize_b)(struct block *, struct blockd *);
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight16x16_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp8_filter_by_weight16x16)(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight8x8_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp8_filter_by_weight8x8)(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx3(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx8(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_full_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_c
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_bh)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_bv)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_mbh)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+RTCD_EXTERN void (*vp8_loop_filter_mbv)(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_bh)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_bv)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_mbh)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+RTCD_EXTERN void (*vp8_loop_filter_simple_mbv)(unsigned char *y, int ystride, const unsigned char *blimit);
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+int vp8_mbblock_error_mmx(struct macroblock *mb, int dc);
+int vp8_mbblock_error_xmm(struct macroblock *mb, int dc);
+RTCD_EXTERN int (*vp8_mbblock_error)(struct macroblock *mb, int dc);
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_across_ip_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+RTCD_EXTERN void (*vp8_mbpost_proc_across_ip)(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_mmx(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+RTCD_EXTERN void (*vp8_mbpost_proc_down)(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+
+int vp8_mbuverror_c(struct macroblock *mb);
+int vp8_mbuverror_mmx(struct macroblock *mb);
+int vp8_mbuverror_xmm(struct macroblock *mb);
+RTCD_EXTERN int (*vp8_mbuverror)(struct macroblock *mb);
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_mmx(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_wmt(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+RTCD_EXTERN void (*vp8_plane_add_noise)(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+void vp8_post_proc_down_and_across_mb_row_sse2(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+RTCD_EXTERN void (*vp8_post_proc_down_and_across_mb_row)(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_refining_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_refining_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse4_1(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_regular_quantize_b)(struct block *, struct blockd *);
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_sse2(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_fdct4x4)(short *input, short *output, int pitch);
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_sse2(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_fdct8x4)(short *input, short *output, int pitch);
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_mmx(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+RTCD_EXTERN void (*vp8_short_idct4x4llm)(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+void vp8_short_inv_walsh4x4_mmx(short *input, short *output);
+void vp8_short_inv_walsh4x4_sse2(short *input, short *output);
+RTCD_EXTERN void (*vp8_short_inv_walsh4x4)(short *input, short *output);
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_sse2(short *input, short *output, int pitch);
+RTCD_EXTERN void (*vp8_short_walsh4x4)(short *input, short *output, int pitch);
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict4x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_mmx;
+ if (flags & HAS_SSE2) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_ssse3;
+ vp8_bilinear_predict4x4 = vp8_bilinear_predict4x4_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict4x4 = vp8_bilinear_predict4x4_mmx;
+ vp8_bilinear_predict8x4 = vp8_bilinear_predict8x4_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict8x4 = vp8_bilinear_predict8x4_mmx;
+ vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_c;
+ if (flags & HAS_MMX) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_mmx;
+ if (flags & HAS_SSE2) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_ssse3;
+ vp8_block_error = vp8_block_error_c;
+ if (flags & HAS_MMX) vp8_block_error = vp8_block_error_mmx;
+ if (flags & HAS_SSE2) vp8_block_error = vp8_block_error_xmm;
+ vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_c;
+ if (flags & HAS_SSE2) vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_ssse3;
+ vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_c;
+ if (flags & HAS_SSE2) vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_ssse3;
+ vp8_clear_system_state = vp8_clear_system_state_c;
+ if (flags & HAS_MMX) vp8_clear_system_state = vpx_reset_mmx_state;
+ vp8_copy32xn = vp8_copy32xn_c;
+ if (flags & HAS_SSE2) vp8_copy32xn = vp8_copy32xn_sse2;
+ if (flags & HAS_SSE3) vp8_copy32xn = vp8_copy32xn_sse3;
+ vp8_copy_mem16x16 = vp8_copy_mem16x16_c;
+ if (flags & HAS_MMX) vp8_copy_mem16x16 = vp8_copy_mem16x16_mmx;
+ if (flags & HAS_SSE2) vp8_copy_mem16x16 = vp8_copy_mem16x16_sse2;
+ vp8_copy_mem8x4 = vp8_copy_mem8x4_c;
+ if (flags & HAS_MMX) vp8_copy_mem8x4 = vp8_copy_mem8x4_mmx;
+ vp8_copy_mem8x8 = vp8_copy_mem8x8_c;
+ if (flags & HAS_MMX) vp8_copy_mem8x8 = vp8_copy_mem8x8_mmx;
+ vp8_dc_only_idct_add = vp8_dc_only_idct_add_c;
+ if (flags & HAS_MMX) vp8_dc_only_idct_add = vp8_dc_only_idct_add_mmx;
+ vp8_denoiser_filter = vp8_denoiser_filter_c;
+ if (flags & HAS_SSE2) vp8_denoiser_filter = vp8_denoiser_filter_sse2;
+ vp8_denoiser_filter_uv = vp8_denoiser_filter_uv_c;
+ if (flags & HAS_SSE2) vp8_denoiser_filter_uv = vp8_denoiser_filter_uv_sse2;
+ vp8_dequant_idct_add = vp8_dequant_idct_add_c;
+ if (flags & HAS_MMX) vp8_dequant_idct_add = vp8_dequant_idct_add_mmx;
+ vp8_dequant_idct_add_uv_block = vp8_dequant_idct_add_uv_block_c;
+ if (flags & HAS_MMX) vp8_dequant_idct_add_uv_block = vp8_dequant_idct_add_uv_block_mmx;
+ if (flags & HAS_SSE2) vp8_dequant_idct_add_uv_block = vp8_dequant_idct_add_uv_block_sse2;
+ vp8_dequant_idct_add_y_block = vp8_dequant_idct_add_y_block_c;
+ if (flags & HAS_MMX) vp8_dequant_idct_add_y_block = vp8_dequant_idct_add_y_block_mmx;
+ if (flags & HAS_SSE2) vp8_dequant_idct_add_y_block = vp8_dequant_idct_add_y_block_sse2;
+ vp8_dequantize_b = vp8_dequantize_b_c;
+ if (flags & HAS_MMX) vp8_dequantize_b = vp8_dequantize_b_mmx;
+ vp8_diamond_search_sad = vp8_diamond_search_sad_c;
+ if (flags & HAS_SSE3) vp8_diamond_search_sad = vp8_diamond_search_sadx4;
+ vp8_fast_quantize_b = vp8_fast_quantize_b_c;
+ if (flags & HAS_SSE2) vp8_fast_quantize_b = vp8_fast_quantize_b_sse2;
+ if (flags & HAS_SSSE3) vp8_fast_quantize_b = vp8_fast_quantize_b_ssse3;
+ vp8_filter_by_weight16x16 = vp8_filter_by_weight16x16_c;
+ if (flags & HAS_SSE2) vp8_filter_by_weight16x16 = vp8_filter_by_weight16x16_sse2;
+ vp8_filter_by_weight8x8 = vp8_filter_by_weight8x8_c;
+ if (flags & HAS_SSE2) vp8_filter_by_weight8x8 = vp8_filter_by_weight8x8_sse2;
+ vp8_full_search_sad = vp8_full_search_sad_c;
+ if (flags & HAS_SSE3) vp8_full_search_sad = vp8_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp8_full_search_sad = vp8_full_search_sadx8;
+ vp8_loop_filter_bh = vp8_loop_filter_bh_c;
+ if (flags & HAS_MMX) vp8_loop_filter_bh = vp8_loop_filter_bh_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_bh = vp8_loop_filter_bh_sse2;
+ vp8_loop_filter_bv = vp8_loop_filter_bv_c;
+ if (flags & HAS_MMX) vp8_loop_filter_bv = vp8_loop_filter_bv_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_bv = vp8_loop_filter_bv_sse2;
+ vp8_loop_filter_mbh = vp8_loop_filter_mbh_c;
+ if (flags & HAS_MMX) vp8_loop_filter_mbh = vp8_loop_filter_mbh_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_mbh = vp8_loop_filter_mbh_sse2;
+ vp8_loop_filter_mbv = vp8_loop_filter_mbv_c;
+ if (flags & HAS_MMX) vp8_loop_filter_mbv = vp8_loop_filter_mbv_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_mbv = vp8_loop_filter_mbv_sse2;
+ vp8_loop_filter_simple_bh = vp8_loop_filter_bhs_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_bh = vp8_loop_filter_bhs_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_bh = vp8_loop_filter_bhs_sse2;
+ vp8_loop_filter_simple_bv = vp8_loop_filter_bvs_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_bv = vp8_loop_filter_bvs_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_bv = vp8_loop_filter_bvs_sse2;
+ vp8_loop_filter_simple_mbh = vp8_loop_filter_simple_horizontal_edge_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_mbh = vp8_loop_filter_simple_horizontal_edge_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_mbh = vp8_loop_filter_simple_horizontal_edge_sse2;
+ vp8_loop_filter_simple_mbv = vp8_loop_filter_simple_vertical_edge_c;
+ if (flags & HAS_MMX) vp8_loop_filter_simple_mbv = vp8_loop_filter_simple_vertical_edge_mmx;
+ if (flags & HAS_SSE2) vp8_loop_filter_simple_mbv = vp8_loop_filter_simple_vertical_edge_sse2;
+ vp8_mbblock_error = vp8_mbblock_error_c;
+ if (flags & HAS_MMX) vp8_mbblock_error = vp8_mbblock_error_mmx;
+ if (flags & HAS_SSE2) vp8_mbblock_error = vp8_mbblock_error_xmm;
+ vp8_mbpost_proc_across_ip = vp8_mbpost_proc_across_ip_c;
+ if (flags & HAS_SSE2) vp8_mbpost_proc_across_ip = vp8_mbpost_proc_across_ip_xmm;
+ vp8_mbpost_proc_down = vp8_mbpost_proc_down_c;
+ if (flags & HAS_MMX) vp8_mbpost_proc_down = vp8_mbpost_proc_down_mmx;
+ if (flags & HAS_SSE2) vp8_mbpost_proc_down = vp8_mbpost_proc_down_xmm;
+ vp8_mbuverror = vp8_mbuverror_c;
+ if (flags & HAS_MMX) vp8_mbuverror = vp8_mbuverror_mmx;
+ if (flags & HAS_SSE2) vp8_mbuverror = vp8_mbuverror_xmm;
+ vp8_plane_add_noise = vp8_plane_add_noise_c;
+ if (flags & HAS_MMX) vp8_plane_add_noise = vp8_plane_add_noise_mmx;
+ if (flags & HAS_SSE2) vp8_plane_add_noise = vp8_plane_add_noise_wmt;
+ vp8_post_proc_down_and_across_mb_row = vp8_post_proc_down_and_across_mb_row_c;
+ if (flags & HAS_SSE2) vp8_post_proc_down_and_across_mb_row = vp8_post_proc_down_and_across_mb_row_sse2;
+ vp8_refining_search_sad = vp8_refining_search_sad_c;
+ if (flags & HAS_SSE3) vp8_refining_search_sad = vp8_refining_search_sadx4;
+ vp8_regular_quantize_b = vp8_regular_quantize_b_c;
+ if (flags & HAS_SSE2) vp8_regular_quantize_b = vp8_regular_quantize_b_sse2;
+ if (flags & HAS_SSE4_1) vp8_regular_quantize_b = vp8_regular_quantize_b_sse4_1;
+ vp8_short_fdct4x4 = vp8_short_fdct4x4_c;
+ if (flags & HAS_MMX) vp8_short_fdct4x4 = vp8_short_fdct4x4_mmx;
+ if (flags & HAS_SSE2) vp8_short_fdct4x4 = vp8_short_fdct4x4_sse2;
+ vp8_short_fdct8x4 = vp8_short_fdct8x4_c;
+ if (flags & HAS_MMX) vp8_short_fdct8x4 = vp8_short_fdct8x4_mmx;
+ if (flags & HAS_SSE2) vp8_short_fdct8x4 = vp8_short_fdct8x4_sse2;
+ vp8_short_idct4x4llm = vp8_short_idct4x4llm_c;
+ if (flags & HAS_MMX) vp8_short_idct4x4llm = vp8_short_idct4x4llm_mmx;
+ vp8_short_inv_walsh4x4 = vp8_short_inv_walsh4x4_c;
+ if (flags & HAS_MMX) vp8_short_inv_walsh4x4 = vp8_short_inv_walsh4x4_mmx;
+ if (flags & HAS_SSE2) vp8_short_inv_walsh4x4 = vp8_short_inv_walsh4x4_sse2;
+ vp8_short_walsh4x4 = vp8_short_walsh4x4_c;
+ if (flags & HAS_SSE2) vp8_short_walsh4x4 = vp8_short_walsh4x4_sse2;
+ vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_mmx;
+ if (flags & HAS_SSE2) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_ssse3;
+ vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_mmx;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_ssse3;
+ vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_mmx;
+ if (flags & HAS_SSE2) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_ssse3;
+ vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_c;
+ if (flags & HAS_MMX) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_mmx;
+ if (flags & HAS_SSE2) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_ssse3;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/win/ia32/vp9_rtcd.h b/third_party/libvpx_new/source/config/win/ia32/vp9_rtcd.h
new file mode 100644
index 0000000..0c0a793
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/ia32/vp9_rtcd.h
@@ -0,0 +1,238 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+unsigned int vp9_avg_4x4_sse2(const uint8_t *, int p);
+RTCD_EXTERN unsigned int (*vp9_avg_4x4)(const uint8_t *, int p);
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+unsigned int vp9_avg_8x8_sse2(const uint8_t *, int p);
+RTCD_EXTERN unsigned int (*vp9_avg_8x8)(const uint8_t *, int p);
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_sse2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_avx2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+RTCD_EXTERN int64_t (*vp9_block_error)(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+int64_t vp9_block_error_fp_sse2(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+RTCD_EXTERN int64_t (*vp9_block_error_fp)(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+int vp9_denoiser_filter_sse2(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+RTCD_EXTERN int (*vp9_denoiser_filter)(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_sse2(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_ssse3(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_fdct8x8_quant)(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht16x16_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+RTCD_EXTERN void (*vp9_fht16x16)(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht4x4_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+RTCD_EXTERN void (*vp9_fht4x4)(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht8x8_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+RTCD_EXTERN void (*vp9_fht8x8)(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight16x16_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp9_filter_by_weight16x16)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight8x8_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+RTCD_EXTERN void (*vp9_filter_by_weight8x8)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx3(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx8(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+RTCD_EXTERN int (*vp9_full_search_sad)(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vp9_fwht4x4_mmx(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vp9_fwht4x4)(const int16_t *input, tran_low_t *output, int stride);
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_16x16_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vp9_hadamard_16x16)(int16_t const *src_diff, int src_stride, int16_t *coeff);
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_8x8_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vp9_hadamard_8x8)(int16_t const *src_diff, int src_stride, int16_t *coeff);
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+void vp9_iht16x16_256_add_sse2(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+RTCD_EXTERN void (*vp9_iht16x16_256_add)(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+RTCD_EXTERN void (*vp9_iht4x4_16_add)(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+RTCD_EXTERN void (*vp9_iht8x8_64_add)(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+int16_t vp9_int_pro_col_sse2(uint8_t const *ref, const int width);
+RTCD_EXTERN int16_t (*vp9_int_pro_col)(uint8_t const *ref, const int width);
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+void vp9_int_pro_row_sse2(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+RTCD_EXTERN void (*vp9_int_pro_row)(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_across_ip_xmm(uint8_t *src, int pitch, int rows, int cols, int flimit);
+RTCD_EXTERN void (*vp9_mbpost_proc_across_ip)(uint8_t *src, int pitch, int rows, int cols, int flimit);
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_down_xmm(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+RTCD_EXTERN void (*vp9_mbpost_proc_down)(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+void vp9_minmax_8x8_sse2(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+RTCD_EXTERN void (*vp9_minmax_8x8)(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+void vp9_plane_add_noise_wmt(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+RTCD_EXTERN void (*vp9_plane_add_noise)(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+void vp9_post_proc_down_and_across_xmm(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+RTCD_EXTERN void (*vp9_post_proc_down_and_across)(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+int16_t vp9_satd_sse2(const int16_t *coeff, int length);
+RTCD_EXTERN int16_t (*vp9_satd)(const int16_t *coeff, int length);
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+void vp9_temporal_filter_apply_sse2(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+RTCD_EXTERN void (*vp9_temporal_filter_apply)(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+int vp9_vector_var_sse2(int16_t const *ref, int16_t const *src, const int bwl);
+RTCD_EXTERN int (*vp9_vector_var)(int16_t const *ref, int16_t const *src, const int bwl);
+
+void vp9_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp9_avg_4x4 = vp9_avg_4x4_c;
+ if (flags & HAS_SSE2) vp9_avg_4x4 = vp9_avg_4x4_sse2;
+ vp9_avg_8x8 = vp9_avg_8x8_c;
+ if (flags & HAS_SSE2) vp9_avg_8x8 = vp9_avg_8x8_sse2;
+ vp9_block_error = vp9_block_error_c;
+ if (flags & HAS_SSE2) vp9_block_error = vp9_block_error_sse2;
+ if (flags & HAS_AVX2) vp9_block_error = vp9_block_error_avx2;
+ vp9_block_error_fp = vp9_block_error_fp_c;
+ if (flags & HAS_SSE2) vp9_block_error_fp = vp9_block_error_fp_sse2;
+ vp9_denoiser_filter = vp9_denoiser_filter_c;
+ if (flags & HAS_SSE2) vp9_denoiser_filter = vp9_denoiser_filter_sse2;
+ vp9_fdct8x8_quant = vp9_fdct8x8_quant_c;
+ if (flags & HAS_SSE2) vp9_fdct8x8_quant = vp9_fdct8x8_quant_sse2;
+ if (flags & HAS_SSSE3) vp9_fdct8x8_quant = vp9_fdct8x8_quant_ssse3;
+ vp9_fht16x16 = vp9_fht16x16_c;
+ if (flags & HAS_SSE2) vp9_fht16x16 = vp9_fht16x16_sse2;
+ vp9_fht4x4 = vp9_fht4x4_c;
+ if (flags & HAS_SSE2) vp9_fht4x4 = vp9_fht4x4_sse2;
+ vp9_fht8x8 = vp9_fht8x8_c;
+ if (flags & HAS_SSE2) vp9_fht8x8 = vp9_fht8x8_sse2;
+ vp9_filter_by_weight16x16 = vp9_filter_by_weight16x16_c;
+ if (flags & HAS_SSE2) vp9_filter_by_weight16x16 = vp9_filter_by_weight16x16_sse2;
+ vp9_filter_by_weight8x8 = vp9_filter_by_weight8x8_c;
+ if (flags & HAS_SSE2) vp9_filter_by_weight8x8 = vp9_filter_by_weight8x8_sse2;
+ vp9_full_search_sad = vp9_full_search_sad_c;
+ if (flags & HAS_SSE3) vp9_full_search_sad = vp9_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp9_full_search_sad = vp9_full_search_sadx8;
+ vp9_fwht4x4 = vp9_fwht4x4_c;
+ if (flags & HAS_MMX) vp9_fwht4x4 = vp9_fwht4x4_mmx;
+ vp9_hadamard_16x16 = vp9_hadamard_16x16_c;
+ if (flags & HAS_SSE2) vp9_hadamard_16x16 = vp9_hadamard_16x16_sse2;
+ vp9_hadamard_8x8 = vp9_hadamard_8x8_c;
+ if (flags & HAS_SSE2) vp9_hadamard_8x8 = vp9_hadamard_8x8_sse2;
+ vp9_iht16x16_256_add = vp9_iht16x16_256_add_c;
+ if (flags & HAS_SSE2) vp9_iht16x16_256_add = vp9_iht16x16_256_add_sse2;
+ vp9_iht4x4_16_add = vp9_iht4x4_16_add_c;
+ if (flags & HAS_SSE2) vp9_iht4x4_16_add = vp9_iht4x4_16_add_sse2;
+ vp9_iht8x8_64_add = vp9_iht8x8_64_add_c;
+ if (flags & HAS_SSE2) vp9_iht8x8_64_add = vp9_iht8x8_64_add_sse2;
+ vp9_int_pro_col = vp9_int_pro_col_c;
+ if (flags & HAS_SSE2) vp9_int_pro_col = vp9_int_pro_col_sse2;
+ vp9_int_pro_row = vp9_int_pro_row_c;
+ if (flags & HAS_SSE2) vp9_int_pro_row = vp9_int_pro_row_sse2;
+ vp9_mbpost_proc_across_ip = vp9_mbpost_proc_across_ip_c;
+ if (flags & HAS_SSE2) vp9_mbpost_proc_across_ip = vp9_mbpost_proc_across_ip_xmm;
+ vp9_mbpost_proc_down = vp9_mbpost_proc_down_c;
+ if (flags & HAS_SSE2) vp9_mbpost_proc_down = vp9_mbpost_proc_down_xmm;
+ vp9_minmax_8x8 = vp9_minmax_8x8_c;
+ if (flags & HAS_SSE2) vp9_minmax_8x8 = vp9_minmax_8x8_sse2;
+ vp9_plane_add_noise = vp9_plane_add_noise_c;
+ if (flags & HAS_SSE2) vp9_plane_add_noise = vp9_plane_add_noise_wmt;
+ vp9_post_proc_down_and_across = vp9_post_proc_down_and_across_c;
+ if (flags & HAS_SSE2) vp9_post_proc_down_and_across = vp9_post_proc_down_and_across_xmm;
+ vp9_quantize_fp = vp9_quantize_fp_c;
+ if (flags & HAS_SSE2) vp9_quantize_fp = vp9_quantize_fp_sse2;
+ vp9_satd = vp9_satd_c;
+ if (flags & HAS_SSE2) vp9_satd = vp9_satd_sse2;
+ vp9_temporal_filter_apply = vp9_temporal_filter_apply_c;
+ if (flags & HAS_SSE2) vp9_temporal_filter_apply = vp9_temporal_filter_apply_sse2;
+ vp9_vector_var = vp9_vector_var_c;
+ if (flags & HAS_SSE2) vp9_vector_var = vp9_vector_var_sse2;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/win/ia32/vpx_config.asm b/third_party/libvpx_new/source/config/win/ia32/vpx_config.asm
new file mode 100644
index 0000000..ddafd69
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/ia32/vpx_config.asm
@@ -0,0 +1,87 @@
+%define ARCH_ARM 0
+%define ARCH_MIPS 0
+%define ARCH_X86 1
+%define ARCH_X86_64 0
+%define HAVE_EDSP 0
+%define HAVE_MEDIA 0
+%define HAVE_NEON 0
+%define HAVE_NEON_ASM 0
+%define HAVE_MIPS32 0
+%define HAVE_DSPR2 0
+%define HAVE_MSA 0
+%define HAVE_MIPS64 0
+%define HAVE_MMX 1
+%define HAVE_SSE 1
+%define HAVE_SSE2 1
+%define HAVE_SSE3 1
+%define HAVE_SSSE3 1
+%define HAVE_SSE4_1 1
+%define HAVE_AVX 1
+%define HAVE_AVX2 1
+%define HAVE_VPX_PORTS 1
+%define HAVE_STDINT_H 0
+%define HAVE_PTHREAD_H 0
+%define HAVE_SYS_MMAN_H 0
+%define HAVE_UNISTD_H 0
+%define CONFIG_DEPENDENCY_TRACKING 1
+%define CONFIG_EXTERNAL_BUILD 1
+%define CONFIG_INSTALL_DOCS 0
+%define CONFIG_INSTALL_BINS 1
+%define CONFIG_INSTALL_LIBS 1
+%define CONFIG_INSTALL_SRCS 0
+%define CONFIG_USE_X86INC 1
+%define CONFIG_DEBUG 0
+%define CONFIG_GPROF 0
+%define CONFIG_GCOV 0
+%define CONFIG_RVCT 0
+%define CONFIG_GCC 0
+%define CONFIG_MSVS 1
+%define CONFIG_PIC 0
+%define CONFIG_BIG_ENDIAN 0
+%define CONFIG_CODEC_SRCS 0
+%define CONFIG_DEBUG_LIBS 0
+%define CONFIG_DEQUANT_TOKENS 0
+%define CONFIG_DC_RECON 0
+%define CONFIG_RUNTIME_CPU_DETECT 1
+%define CONFIG_POSTPROC 1
+%define CONFIG_VP9_POSTPROC 1
+%define CONFIG_MULTITHREAD 1
+%define CONFIG_INTERNAL_STATS 0
+%define CONFIG_VP8_ENCODER 1
+%define CONFIG_VP8_DECODER 1
+%define CONFIG_VP9_ENCODER 1
+%define CONFIG_VP9_DECODER 1
+%define CONFIG_VP10_ENCODER 0
+%define CONFIG_VP10_DECODER 0
+%define CONFIG_VP8 1
+%define CONFIG_VP9 1
+%define CONFIG_VP10 0
+%define CONFIG_ENCODERS 1
+%define CONFIG_DECODERS 1
+%define CONFIG_STATIC_MSVCRT 0
+%define CONFIG_SPATIAL_RESAMPLING 1
+%define CONFIG_REALTIME_ONLY 1
+%define CONFIG_ONTHEFLY_BITPACKING 0
+%define CONFIG_ERROR_CONCEALMENT 0
+%define CONFIG_SHARED 0
+%define CONFIG_STATIC 1
+%define CONFIG_SMALL 0
+%define CONFIG_POSTPROC_VISUALIZER 0
+%define CONFIG_OS_SUPPORT 1
+%define CONFIG_UNIT_TESTS 0
+%define CONFIG_WEBM_IO 1
+%define CONFIG_LIBYUV 1
+%define CONFIG_DECODE_PERF_TESTS 0
+%define CONFIG_ENCODE_PERF_TESTS 0
+%define CONFIG_MULTI_RES_ENCODING 1
+%define CONFIG_TEMPORAL_DENOISING 1
+%define CONFIG_VP9_TEMPORAL_DENOISING 1
+%define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+%define CONFIG_VP9_HIGHBITDEPTH 0
+%define CONFIG_EXPERIMENTAL 0
+%define CONFIG_SIZE_LIMIT 1
+%define CONFIG_SPATIAL_SVC 0
+%define CONFIG_FP_MB_STATS 0
+%define CONFIG_EMULATE_HARDWARE 0
+%define DECODE_WIDTH_LIMIT 16384
+%define DECODE_HEIGHT_LIMIT 16384
diff --git a/third_party/libvpx_new/source/config/win/ia32/vpx_config.c b/third_party/libvpx_new/source/config/win/ia32/vpx_config.c
new file mode 100644
index 0000000..d88b6d6
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/ia32/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=x86-win32-vs12 --enable-realtime-only --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/win/ia32/vpx_config.h b/third_party/libvpx_new/source/config/win/ia32/vpx_config.h
new file mode 100644
index 0000000..fcb9f08
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/ia32/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE __forceinline
+#define ARCH_ARM 0
+#define ARCH_MIPS 0
+#define ARCH_X86 1
+#define ARCH_X86_64 0
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 0
+#define HAVE_NEON 0
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 1
+#define HAVE_SSE 1
+#define HAVE_SSE2 1
+#define HAVE_SSE3 1
+#define HAVE_SSSE3 1
+#define HAVE_SSE4_1 1
+#define HAVE_AVX 1
+#define HAVE_AVX2 1
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 0
+#define HAVE_PTHREAD_H 0
+#define HAVE_SYS_MMAN_H 0
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 1
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 0
+#define CONFIG_MSVS 1
+#define CONFIG_PIC 0
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 1
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/win/ia32/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/win/ia32/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..8f0da9d
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/ia32/vpx_dsp_rtcd.h
@@ -0,0 +1,1383 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_copy_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve_copy)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_128_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_left_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_dc_top_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct16x16)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct16x16_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32_rd)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct4x4)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct4x4_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8_1)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get16x16var)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get8x8var)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+unsigned int vpx_get_mb_ss_mmx(const int16_t *);
+unsigned int vpx_get_mb_ss_sse2(const int16_t *);
+RTCD_EXTERN unsigned int (*vpx_get_mb_ss)(const int16_t *);
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_10_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_10_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_256_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct16x16_256_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1024_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_1024_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_34_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct32x32_34_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct4x4_16_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct4x4_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_12_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_1_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_64_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_iwht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_iwht4x4_16_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_avx2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_4)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_horizontal_4_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_8)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_horizontal_8_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+RTCD_EXTERN void (*vpx_lpf_vertical_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+RTCD_EXTERN void (*vpx_lpf_vertical_16_dual)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_vertical_4)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_vertical_4_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_vertical_8)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+RTCD_EXTERN void (*vpx_lpf_vertical_8_dual)(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse8x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse8x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vpx_quantize_b)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+#define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad16x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad16x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad16x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad16x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad16x8_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x16x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x64x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad4x4)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x4_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad4x4_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x8_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad4x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x8_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad4x8_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x8x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x8x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad64x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad64x64x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad8x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad8x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x4_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad8x4)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x4_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad8x4_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x4x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x4x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad8x8_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_scaled_2d_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_scaled_2d)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+void vpx_subtract_block_sse2(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+RTCD_EXTERN void (*vpx_subtract_block)(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_c
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_tm_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_v_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x64)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance4x4)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance4x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x64)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance8x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance8x4)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance8x8)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_variance_halfpixvar16x16_h)(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_variance_halfpixvar16x16_hv)(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_variance_halfpixvar16x16_v)(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+
+void vpx_dsp_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vpx_convolve8 = vpx_convolve8_c;
+ if (flags & HAS_SSE2) vpx_convolve8 = vpx_convolve8_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8 = vpx_convolve8_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8 = vpx_convolve8_avx2;
+ vpx_convolve8_avg = vpx_convolve8_avg_c;
+ if (flags & HAS_SSE2) vpx_convolve8_avg = vpx_convolve8_avg_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg = vpx_convolve8_avg_ssse3;
+ vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_c;
+ if (flags & HAS_SSE2) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_ssse3;
+ vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_c;
+ if (flags & HAS_SSE2) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_ssse3;
+ vpx_convolve8_horiz = vpx_convolve8_horiz_c;
+ if (flags & HAS_SSE2) vpx_convolve8_horiz = vpx_convolve8_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_horiz = vpx_convolve8_horiz_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_horiz = vpx_convolve8_horiz_avx2;
+ vpx_convolve8_vert = vpx_convolve8_vert_c;
+ if (flags & HAS_SSE2) vpx_convolve8_vert = vpx_convolve8_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_vert = vpx_convolve8_vert_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_vert = vpx_convolve8_vert_avx2;
+ vpx_convolve_avg = vpx_convolve_avg_c;
+ if (flags & HAS_SSE2) vpx_convolve_avg = vpx_convolve_avg_sse2;
+ vpx_convolve_copy = vpx_convolve_copy_c;
+ if (flags & HAS_SSE2) vpx_convolve_copy = vpx_convolve_copy_sse2;
+ vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_ssse3;
+ vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_ssse3;
+ vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_ssse3;
+ vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_ssse3;
+ vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_ssse3;
+ vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_ssse3;
+ vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_ssse3;
+ vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_ssse3;
+ vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_ssse3;
+ vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_ssse3;
+ vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_ssse3;
+ vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_ssse3;
+ vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_ssse3;
+ vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_ssse3;
+ vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_ssse3;
+ vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_ssse3;
+ vpx_dc_128_predictor_16x16 = vpx_dc_128_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_128_predictor_16x16 = vpx_dc_128_predictor_16x16_sse2;
+ vpx_dc_128_predictor_32x32 = vpx_dc_128_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_128_predictor_32x32 = vpx_dc_128_predictor_32x32_sse2;
+ vpx_dc_128_predictor_4x4 = vpx_dc_128_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_128_predictor_4x4 = vpx_dc_128_predictor_4x4_sse;
+ vpx_dc_128_predictor_8x8 = vpx_dc_128_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_128_predictor_8x8 = vpx_dc_128_predictor_8x8_sse;
+ vpx_dc_left_predictor_16x16 = vpx_dc_left_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_left_predictor_16x16 = vpx_dc_left_predictor_16x16_sse2;
+ vpx_dc_left_predictor_32x32 = vpx_dc_left_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_left_predictor_32x32 = vpx_dc_left_predictor_32x32_sse2;
+ vpx_dc_left_predictor_4x4 = vpx_dc_left_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_left_predictor_4x4 = vpx_dc_left_predictor_4x4_sse;
+ vpx_dc_left_predictor_8x8 = vpx_dc_left_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_left_predictor_8x8 = vpx_dc_left_predictor_8x8_sse;
+ vpx_dc_predictor_16x16 = vpx_dc_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_predictor_16x16 = vpx_dc_predictor_16x16_sse2;
+ vpx_dc_predictor_32x32 = vpx_dc_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_predictor_32x32 = vpx_dc_predictor_32x32_sse2;
+ vpx_dc_predictor_4x4 = vpx_dc_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_predictor_4x4 = vpx_dc_predictor_4x4_sse;
+ vpx_dc_predictor_8x8 = vpx_dc_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_predictor_8x8 = vpx_dc_predictor_8x8_sse;
+ vpx_dc_top_predictor_16x16 = vpx_dc_top_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_dc_top_predictor_16x16 = vpx_dc_top_predictor_16x16_sse2;
+ vpx_dc_top_predictor_32x32 = vpx_dc_top_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_dc_top_predictor_32x32 = vpx_dc_top_predictor_32x32_sse2;
+ vpx_dc_top_predictor_4x4 = vpx_dc_top_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_dc_top_predictor_4x4 = vpx_dc_top_predictor_4x4_sse;
+ vpx_dc_top_predictor_8x8 = vpx_dc_top_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_dc_top_predictor_8x8 = vpx_dc_top_predictor_8x8_sse;
+ vpx_fdct16x16 = vpx_fdct16x16_c;
+ if (flags & HAS_SSE2) vpx_fdct16x16 = vpx_fdct16x16_sse2;
+ vpx_fdct16x16_1 = vpx_fdct16x16_1_c;
+ if (flags & HAS_SSE2) vpx_fdct16x16_1 = vpx_fdct16x16_1_sse2;
+ vpx_fdct32x32 = vpx_fdct32x32_c;
+ if (flags & HAS_SSE2) vpx_fdct32x32 = vpx_fdct32x32_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32 = vpx_fdct32x32_avx2;
+ vpx_fdct32x32_1 = vpx_fdct32x32_1_c;
+ if (flags & HAS_SSE2) vpx_fdct32x32_1 = vpx_fdct32x32_1_sse2;
+ vpx_fdct32x32_rd = vpx_fdct32x32_rd_c;
+ if (flags & HAS_SSE2) vpx_fdct32x32_rd = vpx_fdct32x32_rd_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32_rd = vpx_fdct32x32_rd_avx2;
+ vpx_fdct4x4 = vpx_fdct4x4_c;
+ if (flags & HAS_SSE2) vpx_fdct4x4 = vpx_fdct4x4_sse2;
+ vpx_fdct4x4_1 = vpx_fdct4x4_1_c;
+ if (flags & HAS_SSE2) vpx_fdct4x4_1 = vpx_fdct4x4_1_sse2;
+ vpx_fdct8x8 = vpx_fdct8x8_c;
+ if (flags & HAS_SSE2) vpx_fdct8x8 = vpx_fdct8x8_sse2;
+ vpx_fdct8x8_1 = vpx_fdct8x8_1_c;
+ if (flags & HAS_SSE2) vpx_fdct8x8_1 = vpx_fdct8x8_1_sse2;
+ vpx_get16x16var = vpx_get16x16var_c;
+ if (flags & HAS_SSE2) vpx_get16x16var = vpx_get16x16var_sse2;
+ if (flags & HAS_AVX2) vpx_get16x16var = vpx_get16x16var_avx2;
+ vpx_get8x8var = vpx_get8x8var_c;
+ if (flags & HAS_MMX) vpx_get8x8var = vpx_get8x8var_mmx;
+ if (flags & HAS_SSE2) vpx_get8x8var = vpx_get8x8var_sse2;
+ vpx_get_mb_ss = vpx_get_mb_ss_c;
+ if (flags & HAS_MMX) vpx_get_mb_ss = vpx_get_mb_ss_mmx;
+ if (flags & HAS_SSE2) vpx_get_mb_ss = vpx_get_mb_ss_sse2;
+ vpx_h_predictor_16x16 = vpx_h_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_16x16 = vpx_h_predictor_16x16_ssse3;
+ vpx_h_predictor_32x32 = vpx_h_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_32x32 = vpx_h_predictor_32x32_ssse3;
+ vpx_h_predictor_4x4 = vpx_h_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_4x4 = vpx_h_predictor_4x4_ssse3;
+ vpx_h_predictor_8x8 = vpx_h_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_8x8 = vpx_h_predictor_8x8_ssse3;
+ vpx_idct16x16_10_add = vpx_idct16x16_10_add_c;
+ if (flags & HAS_SSE2) vpx_idct16x16_10_add = vpx_idct16x16_10_add_sse2;
+ vpx_idct16x16_1_add = vpx_idct16x16_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct16x16_1_add = vpx_idct16x16_1_add_sse2;
+ vpx_idct16x16_256_add = vpx_idct16x16_256_add_c;
+ if (flags & HAS_SSE2) vpx_idct16x16_256_add = vpx_idct16x16_256_add_sse2;
+ vpx_idct32x32_1024_add = vpx_idct32x32_1024_add_c;
+ if (flags & HAS_SSE2) vpx_idct32x32_1024_add = vpx_idct32x32_1024_add_sse2;
+ vpx_idct32x32_1_add = vpx_idct32x32_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct32x32_1_add = vpx_idct32x32_1_add_sse2;
+ vpx_idct32x32_34_add = vpx_idct32x32_34_add_c;
+ if (flags & HAS_SSE2) vpx_idct32x32_34_add = vpx_idct32x32_34_add_sse2;
+ vpx_idct4x4_16_add = vpx_idct4x4_16_add_c;
+ if (flags & HAS_SSE2) vpx_idct4x4_16_add = vpx_idct4x4_16_add_sse2;
+ vpx_idct4x4_1_add = vpx_idct4x4_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct4x4_1_add = vpx_idct4x4_1_add_sse2;
+ vpx_idct8x8_12_add = vpx_idct8x8_12_add_c;
+ if (flags & HAS_SSE2) vpx_idct8x8_12_add = vpx_idct8x8_12_add_sse2;
+ vpx_idct8x8_1_add = vpx_idct8x8_1_add_c;
+ if (flags & HAS_SSE2) vpx_idct8x8_1_add = vpx_idct8x8_1_add_sse2;
+ vpx_idct8x8_64_add = vpx_idct8x8_64_add_c;
+ if (flags & HAS_SSE2) vpx_idct8x8_64_add = vpx_idct8x8_64_add_sse2;
+ vpx_iwht4x4_16_add = vpx_iwht4x4_16_add_c;
+ if (flags & HAS_SSE2) vpx_iwht4x4_16_add = vpx_iwht4x4_16_add_sse2;
+ vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_sse2;
+ if (flags & HAS_AVX2) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_avx2;
+ vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_c;
+ if (flags & HAS_MMX) vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_mmx;
+ vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_sse2;
+ vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_sse2;
+ vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_sse2;
+ vpx_lpf_vertical_16 = vpx_lpf_vertical_16_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_16 = vpx_lpf_vertical_16_sse2;
+ vpx_lpf_vertical_16_dual = vpx_lpf_vertical_16_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_16_dual = vpx_lpf_vertical_16_dual_sse2;
+ vpx_lpf_vertical_4 = vpx_lpf_vertical_4_c;
+ if (flags & HAS_MMX) vpx_lpf_vertical_4 = vpx_lpf_vertical_4_mmx;
+ vpx_lpf_vertical_4_dual = vpx_lpf_vertical_4_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_4_dual = vpx_lpf_vertical_4_dual_sse2;
+ vpx_lpf_vertical_8 = vpx_lpf_vertical_8_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_8 = vpx_lpf_vertical_8_sse2;
+ vpx_lpf_vertical_8_dual = vpx_lpf_vertical_8_dual_c;
+ if (flags & HAS_SSE2) vpx_lpf_vertical_8_dual = vpx_lpf_vertical_8_dual_sse2;
+ vpx_mse16x16 = vpx_mse16x16_c;
+ if (flags & HAS_MMX) vpx_mse16x16 = vpx_mse16x16_mmx;
+ if (flags & HAS_SSE2) vpx_mse16x16 = vpx_mse16x16_sse2;
+ if (flags & HAS_AVX2) vpx_mse16x16 = vpx_mse16x16_avx2;
+ vpx_mse16x8 = vpx_mse16x8_c;
+ if (flags & HAS_SSE2) vpx_mse16x8 = vpx_mse16x8_sse2;
+ vpx_mse8x16 = vpx_mse8x16_c;
+ if (flags & HAS_SSE2) vpx_mse8x16 = vpx_mse8x16_sse2;
+ vpx_mse8x8 = vpx_mse8x8_c;
+ if (flags & HAS_SSE2) vpx_mse8x8 = vpx_mse8x8_sse2;
+ vpx_quantize_b = vpx_quantize_b_c;
+ if (flags & HAS_SSE2) vpx_quantize_b = vpx_quantize_b_sse2;
+ vpx_sad16x16 = vpx_sad16x16_c;
+ if (flags & HAS_MMX) vpx_sad16x16 = vpx_sad16x16_mmx;
+ if (flags & HAS_SSE2) vpx_sad16x16 = vpx_sad16x16_sse2;
+ vpx_sad16x16_avg = vpx_sad16x16_avg_c;
+ if (flags & HAS_SSE2) vpx_sad16x16_avg = vpx_sad16x16_avg_sse2;
+ vpx_sad16x16x3 = vpx_sad16x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x16x3 = vpx_sad16x16x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x16x3 = vpx_sad16x16x3_ssse3;
+ vpx_sad16x16x4d = vpx_sad16x16x4d_c;
+ if (flags & HAS_SSE2) vpx_sad16x16x4d = vpx_sad16x16x4d_sse2;
+ vpx_sad16x16x8 = vpx_sad16x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x16x8 = vpx_sad16x16x8_sse4_1;
+ vpx_sad16x32 = vpx_sad16x32_c;
+ if (flags & HAS_SSE2) vpx_sad16x32 = vpx_sad16x32_sse2;
+ vpx_sad16x32_avg = vpx_sad16x32_avg_c;
+ if (flags & HAS_SSE2) vpx_sad16x32_avg = vpx_sad16x32_avg_sse2;
+ vpx_sad16x32x4d = vpx_sad16x32x4d_c;
+ if (flags & HAS_SSE2) vpx_sad16x32x4d = vpx_sad16x32x4d_sse2;
+ vpx_sad16x8 = vpx_sad16x8_c;
+ if (flags & HAS_MMX) vpx_sad16x8 = vpx_sad16x8_mmx;
+ if (flags & HAS_SSE2) vpx_sad16x8 = vpx_sad16x8_sse2;
+ vpx_sad16x8_avg = vpx_sad16x8_avg_c;
+ if (flags & HAS_SSE2) vpx_sad16x8_avg = vpx_sad16x8_avg_sse2;
+ vpx_sad16x8x3 = vpx_sad16x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x8x3 = vpx_sad16x8x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x8x3 = vpx_sad16x8x3_ssse3;
+ vpx_sad16x8x4d = vpx_sad16x8x4d_c;
+ if (flags & HAS_SSE2) vpx_sad16x8x4d = vpx_sad16x8x4d_sse2;
+ vpx_sad16x8x8 = vpx_sad16x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x8x8 = vpx_sad16x8x8_sse4_1;
+ vpx_sad32x16 = vpx_sad32x16_c;
+ if (flags & HAS_SSE2) vpx_sad32x16 = vpx_sad32x16_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16 = vpx_sad32x16_avx2;
+ vpx_sad32x16_avg = vpx_sad32x16_avg_c;
+ if (flags & HAS_SSE2) vpx_sad32x16_avg = vpx_sad32x16_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16_avg = vpx_sad32x16_avg_avx2;
+ vpx_sad32x16x4d = vpx_sad32x16x4d_c;
+ if (flags & HAS_SSE2) vpx_sad32x16x4d = vpx_sad32x16x4d_sse2;
+ vpx_sad32x32 = vpx_sad32x32_c;
+ if (flags & HAS_SSE2) vpx_sad32x32 = vpx_sad32x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32 = vpx_sad32x32_avx2;
+ vpx_sad32x32_avg = vpx_sad32x32_avg_c;
+ if (flags & HAS_SSE2) vpx_sad32x32_avg = vpx_sad32x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32_avg = vpx_sad32x32_avg_avx2;
+ vpx_sad32x32x4d = vpx_sad32x32x4d_c;
+ if (flags & HAS_SSE2) vpx_sad32x32x4d = vpx_sad32x32x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32x4d = vpx_sad32x32x4d_avx2;
+ vpx_sad32x64 = vpx_sad32x64_c;
+ if (flags & HAS_SSE2) vpx_sad32x64 = vpx_sad32x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64 = vpx_sad32x64_avx2;
+ vpx_sad32x64_avg = vpx_sad32x64_avg_c;
+ if (flags & HAS_SSE2) vpx_sad32x64_avg = vpx_sad32x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64_avg = vpx_sad32x64_avg_avx2;
+ vpx_sad32x64x4d = vpx_sad32x64x4d_c;
+ if (flags & HAS_SSE2) vpx_sad32x64x4d = vpx_sad32x64x4d_sse2;
+ vpx_sad4x4 = vpx_sad4x4_c;
+ if (flags & HAS_MMX) vpx_sad4x4 = vpx_sad4x4_mmx;
+ if (flags & HAS_SSE) vpx_sad4x4 = vpx_sad4x4_sse;
+ vpx_sad4x4_avg = vpx_sad4x4_avg_c;
+ if (flags & HAS_SSE) vpx_sad4x4_avg = vpx_sad4x4_avg_sse;
+ vpx_sad4x4x3 = vpx_sad4x4x3_c;
+ if (flags & HAS_SSE3) vpx_sad4x4x3 = vpx_sad4x4x3_sse3;
+ vpx_sad4x4x4d = vpx_sad4x4x4d_c;
+ if (flags & HAS_SSE) vpx_sad4x4x4d = vpx_sad4x4x4d_sse;
+ vpx_sad4x4x8 = vpx_sad4x4x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad4x4x8 = vpx_sad4x4x8_sse4_1;
+ vpx_sad4x8 = vpx_sad4x8_c;
+ if (flags & HAS_SSE) vpx_sad4x8 = vpx_sad4x8_sse;
+ vpx_sad4x8_avg = vpx_sad4x8_avg_c;
+ if (flags & HAS_SSE) vpx_sad4x8_avg = vpx_sad4x8_avg_sse;
+ vpx_sad4x8x4d = vpx_sad4x8x4d_c;
+ if (flags & HAS_SSE) vpx_sad4x8x4d = vpx_sad4x8x4d_sse;
+ vpx_sad64x32 = vpx_sad64x32_c;
+ if (flags & HAS_SSE2) vpx_sad64x32 = vpx_sad64x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32 = vpx_sad64x32_avx2;
+ vpx_sad64x32_avg = vpx_sad64x32_avg_c;
+ if (flags & HAS_SSE2) vpx_sad64x32_avg = vpx_sad64x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32_avg = vpx_sad64x32_avg_avx2;
+ vpx_sad64x32x4d = vpx_sad64x32x4d_c;
+ if (flags & HAS_SSE2) vpx_sad64x32x4d = vpx_sad64x32x4d_sse2;
+ vpx_sad64x64 = vpx_sad64x64_c;
+ if (flags & HAS_SSE2) vpx_sad64x64 = vpx_sad64x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64 = vpx_sad64x64_avx2;
+ vpx_sad64x64_avg = vpx_sad64x64_avg_c;
+ if (flags & HAS_SSE2) vpx_sad64x64_avg = vpx_sad64x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64_avg = vpx_sad64x64_avg_avx2;
+ vpx_sad64x64x4d = vpx_sad64x64x4d_c;
+ if (flags & HAS_SSE2) vpx_sad64x64x4d = vpx_sad64x64x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64x4d = vpx_sad64x64x4d_avx2;
+ vpx_sad8x16 = vpx_sad8x16_c;
+ if (flags & HAS_MMX) vpx_sad8x16 = vpx_sad8x16_mmx;
+ if (flags & HAS_SSE2) vpx_sad8x16 = vpx_sad8x16_sse2;
+ vpx_sad8x16_avg = vpx_sad8x16_avg_c;
+ if (flags & HAS_SSE2) vpx_sad8x16_avg = vpx_sad8x16_avg_sse2;
+ vpx_sad8x16x3 = vpx_sad8x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x16x3 = vpx_sad8x16x3_sse3;
+ vpx_sad8x16x4d = vpx_sad8x16x4d_c;
+ if (flags & HAS_SSE2) vpx_sad8x16x4d = vpx_sad8x16x4d_sse2;
+ vpx_sad8x16x8 = vpx_sad8x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x16x8 = vpx_sad8x16x8_sse4_1;
+ vpx_sad8x4 = vpx_sad8x4_c;
+ if (flags & HAS_SSE2) vpx_sad8x4 = vpx_sad8x4_sse2;
+ vpx_sad8x4_avg = vpx_sad8x4_avg_c;
+ if (flags & HAS_SSE2) vpx_sad8x4_avg = vpx_sad8x4_avg_sse2;
+ vpx_sad8x4x4d = vpx_sad8x4x4d_c;
+ if (flags & HAS_SSE2) vpx_sad8x4x4d = vpx_sad8x4x4d_sse2;
+ vpx_sad8x8 = vpx_sad8x8_c;
+ if (flags & HAS_MMX) vpx_sad8x8 = vpx_sad8x8_mmx;
+ if (flags & HAS_SSE2) vpx_sad8x8 = vpx_sad8x8_sse2;
+ vpx_sad8x8_avg = vpx_sad8x8_avg_c;
+ if (flags & HAS_SSE2) vpx_sad8x8_avg = vpx_sad8x8_avg_sse2;
+ vpx_sad8x8x3 = vpx_sad8x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x8x3 = vpx_sad8x8x3_sse3;
+ vpx_sad8x8x4d = vpx_sad8x8x4d_c;
+ if (flags & HAS_SSE2) vpx_sad8x8x4d = vpx_sad8x8x4d_sse2;
+ vpx_sad8x8x8 = vpx_sad8x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x8x8 = vpx_sad8x8x8_sse4_1;
+ vpx_scaled_2d = vpx_scaled_2d_c;
+ if (flags & HAS_SSSE3) vpx_scaled_2d = vpx_scaled_2d_ssse3;
+ vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_ssse3;
+ vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_ssse3;
+ vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_ssse3;
+ vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_ssse3;
+ vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_avx2;
+ vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_ssse3;
+ vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_c;
+ if (flags & HAS_SSE) vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_ssse3;
+ vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_c;
+ if (flags & HAS_SSE) vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_ssse3;
+ vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_ssse3;
+ vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_avx2;
+ vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_ssse3;
+ vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_ssse3;
+ vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_ssse3;
+ vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_ssse3;
+ vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_ssse3;
+ vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_ssse3;
+ vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_ssse3;
+ vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_avx2;
+ vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_ssse3;
+ vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_mmx;
+ if (flags & HAS_SSE) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_ssse3;
+ vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_c;
+ if (flags & HAS_SSE) vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_ssse3;
+ vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_ssse3;
+ vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_avx2;
+ vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_ssse3;
+ vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_c;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_ssse3;
+ vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_c;
+ if (flags & HAS_MMX) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_mmx;
+ if (flags & HAS_SSE2) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_ssse3;
+ vpx_subtract_block = vpx_subtract_block_c;
+ if (flags & HAS_SSE2) vpx_subtract_block = vpx_subtract_block_sse2;
+ vpx_tm_predictor_16x16 = vpx_tm_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_tm_predictor_16x16 = vpx_tm_predictor_16x16_sse2;
+ vpx_tm_predictor_4x4 = vpx_tm_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_tm_predictor_4x4 = vpx_tm_predictor_4x4_sse;
+ vpx_tm_predictor_8x8 = vpx_tm_predictor_8x8_c;
+ if (flags & HAS_SSE2) vpx_tm_predictor_8x8 = vpx_tm_predictor_8x8_sse2;
+ vpx_v_predictor_16x16 = vpx_v_predictor_16x16_c;
+ if (flags & HAS_SSE2) vpx_v_predictor_16x16 = vpx_v_predictor_16x16_sse2;
+ vpx_v_predictor_32x32 = vpx_v_predictor_32x32_c;
+ if (flags & HAS_SSE2) vpx_v_predictor_32x32 = vpx_v_predictor_32x32_sse2;
+ vpx_v_predictor_4x4 = vpx_v_predictor_4x4_c;
+ if (flags & HAS_SSE) vpx_v_predictor_4x4 = vpx_v_predictor_4x4_sse;
+ vpx_v_predictor_8x8 = vpx_v_predictor_8x8_c;
+ if (flags & HAS_SSE) vpx_v_predictor_8x8 = vpx_v_predictor_8x8_sse;
+ vpx_variance16x16 = vpx_variance16x16_c;
+ if (flags & HAS_MMX) vpx_variance16x16 = vpx_variance16x16_mmx;
+ if (flags & HAS_SSE2) vpx_variance16x16 = vpx_variance16x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance16x16 = vpx_variance16x16_avx2;
+ vpx_variance16x32 = vpx_variance16x32_c;
+ if (flags & HAS_SSE2) vpx_variance16x32 = vpx_variance16x32_sse2;
+ vpx_variance16x8 = vpx_variance16x8_c;
+ if (flags & HAS_MMX) vpx_variance16x8 = vpx_variance16x8_mmx;
+ if (flags & HAS_SSE2) vpx_variance16x8 = vpx_variance16x8_sse2;
+ vpx_variance32x16 = vpx_variance32x16_c;
+ if (flags & HAS_SSE2) vpx_variance32x16 = vpx_variance32x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x16 = vpx_variance32x16_avx2;
+ vpx_variance32x32 = vpx_variance32x32_c;
+ if (flags & HAS_SSE2) vpx_variance32x32 = vpx_variance32x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x32 = vpx_variance32x32_avx2;
+ vpx_variance32x64 = vpx_variance32x64_c;
+ if (flags & HAS_SSE2) vpx_variance32x64 = vpx_variance32x64_sse2;
+ vpx_variance4x4 = vpx_variance4x4_c;
+ if (flags & HAS_MMX) vpx_variance4x4 = vpx_variance4x4_mmx;
+ if (flags & HAS_SSE2) vpx_variance4x4 = vpx_variance4x4_sse2;
+ vpx_variance4x8 = vpx_variance4x8_c;
+ if (flags & HAS_SSE2) vpx_variance4x8 = vpx_variance4x8_sse2;
+ vpx_variance64x32 = vpx_variance64x32_c;
+ if (flags & HAS_SSE2) vpx_variance64x32 = vpx_variance64x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x32 = vpx_variance64x32_avx2;
+ vpx_variance64x64 = vpx_variance64x64_c;
+ if (flags & HAS_SSE2) vpx_variance64x64 = vpx_variance64x64_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x64 = vpx_variance64x64_avx2;
+ vpx_variance8x16 = vpx_variance8x16_c;
+ if (flags & HAS_MMX) vpx_variance8x16 = vpx_variance8x16_mmx;
+ if (flags & HAS_SSE2) vpx_variance8x16 = vpx_variance8x16_sse2;
+ vpx_variance8x4 = vpx_variance8x4_c;
+ if (flags & HAS_SSE2) vpx_variance8x4 = vpx_variance8x4_sse2;
+ vpx_variance8x8 = vpx_variance8x8_c;
+ if (flags & HAS_MMX) vpx_variance8x8 = vpx_variance8x8_mmx;
+ if (flags & HAS_SSE2) vpx_variance8x8 = vpx_variance8x8_sse2;
+ vpx_variance_halfpixvar16x16_h = vpx_variance_halfpixvar16x16_h_c;
+ if (flags & HAS_MMX) vpx_variance_halfpixvar16x16_h = vpx_variance_halfpixvar16x16_h_mmx;
+ if (flags & HAS_SSE2) vpx_variance_halfpixvar16x16_h = vpx_variance_halfpixvar16x16_h_sse2;
+ vpx_variance_halfpixvar16x16_hv = vpx_variance_halfpixvar16x16_hv_c;
+ if (flags & HAS_MMX) vpx_variance_halfpixvar16x16_hv = vpx_variance_halfpixvar16x16_hv_mmx;
+ if (flags & HAS_SSE2) vpx_variance_halfpixvar16x16_hv = vpx_variance_halfpixvar16x16_hv_sse2;
+ vpx_variance_halfpixvar16x16_v = vpx_variance_halfpixvar16x16_v_c;
+ if (flags & HAS_MMX) vpx_variance_halfpixvar16x16_v = vpx_variance_halfpixvar16x16_v_mmx;
+ if (flags & HAS_SSE2) vpx_variance_halfpixvar16x16_v = vpx_variance_halfpixvar16x16_v_sse2;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/win/ia32/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/win/ia32/vpx_scale_rtcd.h
new file mode 100644
index 0000000..ddf7d01
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/ia32/vpx_scale_rtcd.h
@@ -0,0 +1,69 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/win/x64/vp8_rtcd.h b/third_party/libvpx_new/source/config/win/x64/vp8_rtcd.h
new file mode 100644
index 0000000..ff9ac9f
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/x64/vp8_rtcd.h
@@ -0,0 +1,325 @@
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_mmx
+
+void vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_mmx
+
+void vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_bilinear_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+int vp8_block_error_mmx(short *coeff, short *dqcoeff);
+int vp8_block_error_xmm(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_xmm
+
+void vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_sse2(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+void vp8_build_intra_predictors_mbuv_s_ssse3(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mbuv_s)(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
+
+void vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_sse2(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+void vp8_build_intra_predictors_mby_s_ssse3(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+RTCD_EXTERN void (*vp8_build_intra_predictors_mby_s)(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
+
+void vp8_clear_system_state_c();
+void vpx_reset_mmx_state();
+#define vp8_clear_system_state vpx_reset_mmx_state
+
+void vp8_copy32xn_c(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse2(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+void vp8_copy32xn_sse3(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+RTCD_EXTERN void (*vp8_copy32xn)(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n);
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem16x16_sse2(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem16x16 vp8_copy_mem16x16_sse2
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x4_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x4 vp8_copy_mem8x4_mmx
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+void vp8_copy_mem8x8_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
+#define vp8_copy_mem8x8 vp8_copy_mem8x8_mmx
+
+void vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+void vp8_dc_only_idct_add_mmx(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
+#define vp8_dc_only_idct_add vp8_dc_only_idct_add_mmx
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_sse2(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter vp8_denoiser_filter_sse2
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_uv_sse2(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_sse2
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
+void vp8_dequant_idct_add_mmx(short *input, short *dq, unsigned char *output, int stride);
+#define vp8_dequant_idct_add vp8_dequant_idct_add_mmx
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_mmx(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_sse2(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_sse2
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_mmx(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_sse2(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_sse2
+
+void vp8_dequantize_b_c(struct blockd*, short *dqc);
+void vp8_dequantize_b_mmx(struct blockd*, short *dqc);
+#define vp8_dequantize_b vp8_dequantize_b_mmx
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_diamond_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_diamond_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+void vp8_fast_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_fast_quantize_b_ssse3(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_fast_quantize_b)(struct block *, struct blockd *);
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight16x16_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_sse2
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight8x8_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_sse2
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx3(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx8(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_full_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
+#define vp8_intra4x4_predict vp8_intra4x4_predict_c
+
+void vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bh vp8_loop_filter_bh_sse2
+
+void vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bv vp8_loop_filter_bv_sse2
+
+void vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbh vp8_loop_filter_mbh_sse2
+
+void vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbv vp8_loop_filter_mbv_sse2
+
+void vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_sse2
+
+void vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_sse2
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbh vp8_loop_filter_simple_horizontal_edge_sse2
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbv vp8_loop_filter_simple_vertical_edge_sse2
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+int vp8_mbblock_error_mmx(struct macroblock *mb, int dc);
+int vp8_mbblock_error_xmm(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_xmm
+
+void vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_across_ip_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_xmm
+
+void vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_mmx(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vp8_mbpost_proc_down_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vp8_mbpost_proc_down vp8_mbpost_proc_down_xmm
+
+int vp8_mbuverror_c(struct macroblock *mb);
+int vp8_mbuverror_mmx(struct macroblock *mb);
+int vp8_mbuverror_xmm(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_xmm
+
+void vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_mmx(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+void vp8_plane_add_noise_wmt(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
+#define vp8_plane_add_noise vp8_plane_add_noise_wmt
+
+void vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+void vp8_post_proc_down_and_across_mb_row_sse2(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_sse2
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_refining_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_refining_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse4_1(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_regular_quantize_b)(struct block *, struct blockd *);
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_fdct4x4 vp8_short_fdct4x4_sse2
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_mmx(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_fdct8x4 vp8_short_fdct8x4_sse2
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+void vp8_short_idct4x4llm_mmx(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
+#define vp8_short_idct4x4llm vp8_short_idct4x4llm_mmx
+
+void vp8_short_inv_walsh4x4_c(short *input, short *output);
+void vp8_short_inv_walsh4x4_mmx(short *input, short *output);
+void vp8_short_inv_walsh4x4_sse2(short *input, short *output);
+#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_sse2
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *output);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_walsh4x4 vp8_short_walsh4x4_sse2
+
+void vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict16x16)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict4x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict4x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x4)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+void vp8_sixtap_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x8)(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
+
+void vp8_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_ssse3;
+ vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_ssse3;
+ vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mbuv_s = vp8_build_intra_predictors_mbuv_s_ssse3;
+ vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_sse2;
+ if (flags & HAS_SSSE3) vp8_build_intra_predictors_mby_s = vp8_build_intra_predictors_mby_s_ssse3;
+ vp8_copy32xn = vp8_copy32xn_sse2;
+ if (flags & HAS_SSE3) vp8_copy32xn = vp8_copy32xn_sse3;
+ vp8_diamond_search_sad = vp8_diamond_search_sad_c;
+ if (flags & HAS_SSE3) vp8_diamond_search_sad = vp8_diamond_search_sadx4;
+ vp8_fast_quantize_b = vp8_fast_quantize_b_sse2;
+ if (flags & HAS_SSSE3) vp8_fast_quantize_b = vp8_fast_quantize_b_ssse3;
+ vp8_full_search_sad = vp8_full_search_sad_c;
+ if (flags & HAS_SSE3) vp8_full_search_sad = vp8_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp8_full_search_sad = vp8_full_search_sadx8;
+ vp8_refining_search_sad = vp8_refining_search_sad_c;
+ if (flags & HAS_SSE3) vp8_refining_search_sad = vp8_refining_search_sadx4;
+ vp8_regular_quantize_b = vp8_regular_quantize_b_sse2;
+ if (flags & HAS_SSE4_1) vp8_regular_quantize_b = vp8_regular_quantize_b_sse4_1;
+ vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_ssse3;
+ vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_mmx;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_ssse3;
+ vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_ssse3;
+ vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_sse2;
+ if (flags & HAS_SSSE3) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_ssse3;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/win/x64/vp9_rtcd.h b/third_party/libvpx_new/source/config/win/x64/vp9_rtcd.h
new file mode 100644
index 0000000..f3200861
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/x64/vp9_rtcd.h
@@ -0,0 +1,193 @@
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
+unsigned int vp9_avg_4x4_sse2(const uint8_t *, int p);
+#define vp9_avg_4x4 vp9_avg_4x4_sse2
+
+unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
+unsigned int vp9_avg_8x8_sse2(const uint8_t *, int p);
+#define vp9_avg_8x8 vp9_avg_8x8_sse2
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_sse2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_avx2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+RTCD_EXTERN int64_t (*vp9_block_error)(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+
+int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+int64_t vp9_block_error_fp_sse2(const int16_t *coeff, const int16_t *dqcoeff, int block_size);
+#define vp9_block_error_fp vp9_block_error_fp_sse2
+
+int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+int vp9_denoiser_filter_sse2(const uint8_t *sig, int sig_stride, const uint8_t *mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
+#define vp9_denoiser_filter vp9_denoiser_filter_sse2
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_diamond_search_sad vp9_diamond_search_sad_c
+
+void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_sse2(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_fdct8x8_quant_ssse3(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_fdct8x8_quant)(const int16_t *input, int stride, tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht16x16_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_sse2
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht4x4_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_sse2
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht8x8_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_sse2
+
+void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight16x16_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_sse2
+
+void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+void vp9_filter_by_weight8x8_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
+#define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_sse2
+
+int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+#define vp9_full_range_search vp9_full_range_search_c
+
+int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx3(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+int vp9_full_search_sadx8(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+RTCD_EXTERN int (*vp9_full_search_sad)(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vp9_fwht4x4_mmx(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_mmx
+
+void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_16x16_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+#define vp9_hadamard_16x16 vp9_hadamard_16x16_sse2
+
+void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_8x8_sse2(int16_t const *src_diff, int src_stride, int16_t *coeff);
+void vp9_hadamard_8x8_ssse3(int16_t const *src_diff, int src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vp9_hadamard_8x8)(int16_t const *src_diff, int src_stride, int16_t *coeff);
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+void vp9_iht16x16_256_add_sse2(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_sse2
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht4x4_16_add vp9_iht4x4_16_add_sse2
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+void vp9_iht8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
+#define vp9_iht8x8_64_add vp9_iht8x8_64_add_sse2
+
+int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
+int16_t vp9_int_pro_col_sse2(uint8_t const *ref, const int width);
+#define vp9_int_pro_col vp9_int_pro_col_sse2
+
+void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+void vp9_int_pro_row_sse2(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
+#define vp9_int_pro_row vp9_int_pro_row_sse2
+
+void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_across_ip_xmm(uint8_t *src, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_xmm
+
+void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+void vp9_mbpost_proc_down_xmm(uint8_t *dst, int pitch, int rows, int cols, int flimit);
+#define vp9_mbpost_proc_down vp9_mbpost_proc_down_xmm
+
+void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+void vp9_minmax_8x8_sse2(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vp9_minmax_8x8 vp9_minmax_8x8_sse2
+
+void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+void vp9_plane_add_noise_wmt(uint8_t *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
+#define vp9_plane_add_noise vp9_plane_add_noise_wmt
+
+void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+void vp9_post_proc_down_and_across_xmm(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit);
+#define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_xmm
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_32x32_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp_32x32)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+int16_t vp9_satd_c(const int16_t *coeff, int length);
+int16_t vp9_satd_sse2(const int16_t *coeff, int length);
+#define vp9_satd vp9_satd_sse2
+
+void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+void vp9_temporal_filter_apply_sse2(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
+#define vp9_temporal_filter_apply vp9_temporal_filter_apply_sse2
+
+int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
+int vp9_vector_var_sse2(int16_t const *ref, int16_t const *src, const int bwl);
+#define vp9_vector_var vp9_vector_var_sse2
+
+void vp9_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vp9_block_error = vp9_block_error_sse2;
+ if (flags & HAS_AVX2) vp9_block_error = vp9_block_error_avx2;
+ vp9_fdct8x8_quant = vp9_fdct8x8_quant_sse2;
+ if (flags & HAS_SSSE3) vp9_fdct8x8_quant = vp9_fdct8x8_quant_ssse3;
+ vp9_full_search_sad = vp9_full_search_sad_c;
+ if (flags & HAS_SSE3) vp9_full_search_sad = vp9_full_search_sadx3;
+ if (flags & HAS_SSE4_1) vp9_full_search_sad = vp9_full_search_sadx8;
+ vp9_hadamard_8x8 = vp9_hadamard_8x8_sse2;
+ if (flags & HAS_SSSE3) vp9_hadamard_8x8 = vp9_hadamard_8x8_ssse3;
+ vp9_quantize_fp = vp9_quantize_fp_sse2;
+ if (flags & HAS_SSSE3) vp9_quantize_fp = vp9_quantize_fp_ssse3;
+ vp9_quantize_fp_32x32 = vp9_quantize_fp_32x32_c;
+ if (flags & HAS_SSSE3) vp9_quantize_fp_32x32 = vp9_quantize_fp_32x32_ssse3;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/win/x64/vpx_config.asm b/third_party/libvpx_new/source/config/win/x64/vpx_config.asm
new file mode 100644
index 0000000..a862ea9
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/x64/vpx_config.asm
@@ -0,0 +1,87 @@
+%define ARCH_ARM 0
+%define ARCH_MIPS 0
+%define ARCH_X86 0
+%define ARCH_X86_64 1
+%define HAVE_EDSP 0
+%define HAVE_MEDIA 0
+%define HAVE_NEON 0
+%define HAVE_NEON_ASM 0
+%define HAVE_MIPS32 0
+%define HAVE_DSPR2 0
+%define HAVE_MSA 0
+%define HAVE_MIPS64 0
+%define HAVE_MMX 1
+%define HAVE_SSE 1
+%define HAVE_SSE2 1
+%define HAVE_SSE3 1
+%define HAVE_SSSE3 1
+%define HAVE_SSE4_1 1
+%define HAVE_AVX 1
+%define HAVE_AVX2 1
+%define HAVE_VPX_PORTS 1
+%define HAVE_STDINT_H 0
+%define HAVE_PTHREAD_H 0
+%define HAVE_SYS_MMAN_H 0
+%define HAVE_UNISTD_H 0
+%define CONFIG_DEPENDENCY_TRACKING 1
+%define CONFIG_EXTERNAL_BUILD 1
+%define CONFIG_INSTALL_DOCS 0
+%define CONFIG_INSTALL_BINS 1
+%define CONFIG_INSTALL_LIBS 1
+%define CONFIG_INSTALL_SRCS 0
+%define CONFIG_USE_X86INC 1
+%define CONFIG_DEBUG 0
+%define CONFIG_GPROF 0
+%define CONFIG_GCOV 0
+%define CONFIG_RVCT 0
+%define CONFIG_GCC 0
+%define CONFIG_MSVS 1
+%define CONFIG_PIC 0
+%define CONFIG_BIG_ENDIAN 0
+%define CONFIG_CODEC_SRCS 0
+%define CONFIG_DEBUG_LIBS 0
+%define CONFIG_DEQUANT_TOKENS 0
+%define CONFIG_DC_RECON 0
+%define CONFIG_RUNTIME_CPU_DETECT 1
+%define CONFIG_POSTPROC 1
+%define CONFIG_VP9_POSTPROC 1
+%define CONFIG_MULTITHREAD 1
+%define CONFIG_INTERNAL_STATS 0
+%define CONFIG_VP8_ENCODER 1
+%define CONFIG_VP8_DECODER 1
+%define CONFIG_VP9_ENCODER 1
+%define CONFIG_VP9_DECODER 1
+%define CONFIG_VP10_ENCODER 0
+%define CONFIG_VP10_DECODER 0
+%define CONFIG_VP8 1
+%define CONFIG_VP9 1
+%define CONFIG_VP10 0
+%define CONFIG_ENCODERS 1
+%define CONFIG_DECODERS 1
+%define CONFIG_STATIC_MSVCRT 0
+%define CONFIG_SPATIAL_RESAMPLING 1
+%define CONFIG_REALTIME_ONLY 1
+%define CONFIG_ONTHEFLY_BITPACKING 0
+%define CONFIG_ERROR_CONCEALMENT 0
+%define CONFIG_SHARED 0
+%define CONFIG_STATIC 1
+%define CONFIG_SMALL 0
+%define CONFIG_POSTPROC_VISUALIZER 0
+%define CONFIG_OS_SUPPORT 1
+%define CONFIG_UNIT_TESTS 0
+%define CONFIG_WEBM_IO 1
+%define CONFIG_LIBYUV 1
+%define CONFIG_DECODE_PERF_TESTS 0
+%define CONFIG_ENCODE_PERF_TESTS 0
+%define CONFIG_MULTI_RES_ENCODING 1
+%define CONFIG_TEMPORAL_DENOISING 1
+%define CONFIG_VP9_TEMPORAL_DENOISING 1
+%define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+%define CONFIG_VP9_HIGHBITDEPTH 0
+%define CONFIG_EXPERIMENTAL 0
+%define CONFIG_SIZE_LIMIT 1
+%define CONFIG_SPATIAL_SVC 0
+%define CONFIG_FP_MB_STATS 0
+%define CONFIG_EMULATE_HARDWARE 0
+%define DECODE_WIDTH_LIMIT 16384
+%define DECODE_HEIGHT_LIMIT 16384
diff --git a/third_party/libvpx_new/source/config/win/x64/vpx_config.c b/third_party/libvpx_new/source/config/win/x64/vpx_config.c
new file mode 100644
index 0000000..6dd3005
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/x64/vpx_config.c
@@ -0,0 +1,10 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+#include "vpx/vpx_codec.h"
+static const char* const cfg = "--target=x86_64-win64-vs12 --enable-realtime-only --enable-external-build --enable-postproc --disable-install-srcs --enable-multi-res-encoding --enable-temporal-denoising --disable-unit-tests --disable-install-docs --disable-examples --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx_new/source/config/win/x64/vpx_config.h b/third_party/libvpx_new/source/config/win/x64/vpx_config.h
new file mode 100644
index 0000000..172034b
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/x64/vpx_config.h
@@ -0,0 +1,100 @@
+/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
+/* */
+/* Use of this source code is governed by a BSD-style license */
+/* that can be found in the LICENSE file in the root of the source */
+/* tree. An additional intellectual property rights grant can be found */
+/* in the file PATENTS. All contributing project authors may */
+/* be found in the AUTHORS file in the root of the source tree. */
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT
+#define INLINE __forceinline
+#define ARCH_ARM 0
+#define ARCH_MIPS 0
+#define ARCH_X86 0
+#define ARCH_X86_64 1
+#define HAVE_EDSP 0
+#define HAVE_MEDIA 0
+#define HAVE_NEON 0
+#define HAVE_NEON_ASM 0
+#define HAVE_MIPS32 0
+#define HAVE_DSPR2 0
+#define HAVE_MSA 0
+#define HAVE_MIPS64 0
+#define HAVE_MMX 1
+#define HAVE_SSE 1
+#define HAVE_SSE2 1
+#define HAVE_SSE3 1
+#define HAVE_SSSE3 1
+#define HAVE_SSE4_1 1
+#define HAVE_AVX 1
+#define HAVE_AVX2 1
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 0
+#define HAVE_PTHREAD_H 0
+#define HAVE_SYS_MMAN_H 0
+#define HAVE_UNISTD_H 0
+#define CONFIG_DEPENDENCY_TRACKING 1
+#define CONFIG_EXTERNAL_BUILD 1
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 1
+#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 1
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 0
+#define CONFIG_MSVS 1
+#define CONFIG_PIC 0
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 1
+#define CONFIG_POSTPROC 1
+#define CONFIG_VP9_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP9_ENCODER 1
+#define CONFIG_VP9_DECODER 1
+#define CONFIG_VP10_ENCODER 0
+#define CONFIG_VP10_DECODER 0
+#define CONFIG_VP8 1
+#define CONFIG_VP9 1
+#define CONFIG_VP10 0
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_ONTHEFLY_BITPACKING 0
+#define CONFIG_ERROR_CONCEALMENT 0
+#define CONFIG_SHARED 0
+#define CONFIG_STATIC 1
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_UNIT_TESTS 0
+#define CONFIG_WEBM_IO 1
+#define CONFIG_LIBYUV 1
+#define CONFIG_DECODE_PERF_TESTS 0
+#define CONFIG_ENCODE_PERF_TESTS 0
+#define CONFIG_MULTI_RES_ENCODING 1
+#define CONFIG_TEMPORAL_DENOISING 1
+#define CONFIG_VP9_TEMPORAL_DENOISING 1
+#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
+#define CONFIG_VP9_HIGHBITDEPTH 0
+#define CONFIG_EXPERIMENTAL 0
+#define CONFIG_SIZE_LIMIT 1
+#define CONFIG_SPATIAL_SVC 0
+#define CONFIG_FP_MB_STATS 0
+#define CONFIG_EMULATE_HARDWARE 0
+#define DECODE_WIDTH_LIMIT 16384
+#define DECODE_HEIGHT_LIMIT 16384
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx_new/source/config/win/x64/vpx_dsp_rtcd.h b/third_party/libvpx_new/source/config/win/x64/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..7cf74d2
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/x64/vpx_dsp_rtcd.h
@@ -0,0 +1,1126 @@
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_c
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_avg vpx_convolve_avg_sse2
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_convolve_copy_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_convolve_copy vpx_convolve_copy_sse2
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_sse2
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_sse2
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_sse
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_sse
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_sse2
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_sse2
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_sse
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_sse
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_sse2
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_sse2
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_sse
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_sse
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_sse2
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_sse2
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_sse
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_sse
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_sse2
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_sse2
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_sse2
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32_rd)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_sse2
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_sse2
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_ssse3(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8_1 vpx_fdct8x8_1_sse2
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get16x16var)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get8x8var vpx_get8x8var_sse2
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+unsigned int vpx_get_mb_ss_mmx(const int16_t *);
+unsigned int vpx_get_mb_ss_sse2(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_sse2
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_h_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_10_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_10_add vpx_idct16x16_10_add_sse2
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_1_add vpx_idct16x16_1_add_sse2
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct16x16_256_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct16x16_256_add vpx_idct16x16_256_add_sse2
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1024_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_sse2
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_1_add vpx_idct32x32_1_add_sse2
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct32x32_34_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct32x32_34_add vpx_idct32x32_34_add_sse2
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_16_add vpx_idct4x4_16_add_sse2
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct4x4_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct4x4_1_add vpx_idct4x4_1_add_sse2
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_12_add_ssse3(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_12_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_idct8x8_1_add vpx_idct8x8_1_add_sse2
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_idct8x8_64_add_ssse3(const tran_low_t *input, uint8_t *dest, int dest_stride);
+RTCD_EXTERN void (*vpx_idct8x8_64_add)(const tran_low_t *input, uint8_t *dest, int dest_stride);
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+void vpx_iwht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_sse2
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_16_avx2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+RTCD_EXTERN void (*vpx_lpf_horizontal_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_mmx
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_sse2
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_horizontal_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_sse2
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_sse2
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16 vpx_lpf_vertical_16_sse2
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_sse2
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_4 vpx_lpf_vertical_4_mmx
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_sse2
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+void vpx_lpf_vertical_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vpx_lpf_vertical_8 vpx_lpf_vertical_8_sse2
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_sse2
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse16x8 vpx_mse16x8_sse2
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_sse2
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+unsigned int vpx_mse8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_sse2
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vpx_quantize_b)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_32x32_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vpx_quantize_b_32x32)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x16 vpx_sad16x16_sse2
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_sse2
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x4d vpx_sad16x16x4d_sse2
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_sse2
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_sse2
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_sse2
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x8 vpx_sad16x8_sse2
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_sse2
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_sse2
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_sse2
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x32x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x3 vpx_sad32x32x3_c
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x32x8 vpx_sad32x32x8_c
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_sse2
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x4 vpx_sad4x4_sse
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x4_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_sse
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_sse
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x8_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_sse
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x8_avg_sse(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_sse
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x8x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_sse
+
+void vpx_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x8 vpx_sad4x8x8_c
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_sse2
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x64x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x3 vpx_sad64x64x3_c
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad64x64x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x64x8 vpx_sad64x64x8_c
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x16 vpx_sad8x16_sse2
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_sse2
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_sse2
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x4_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_sse2
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x4_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_sse2
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x4x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_sse2
+
+void vpx_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x8 vpx_sad8x4x8_c
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_mmx(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x8 vpx_sad8x8_sse2
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_sse2
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_ptr[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_sse2
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+void vpx_scaled_2d_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_scaled_2d)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+void vpx_subtract_block_sse2(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+#define vpx_subtract_block vpx_subtract_block_sse2
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_sse2
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_sse2
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_sse
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_sse2
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_16x16 vpx_v_predictor_16x16_sse2
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_32x32 vpx_v_predictor_32x32_sse2
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_4x4 vpx_v_predictor_4x4_sse
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_8x8 vpx_v_predictor_8x8_sse
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x32 vpx_variance16x32_sse2
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance16x8 vpx_variance16x8_sse2
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x16)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance32x64 vpx_variance32x64_sse2
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_sse2
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_sse2
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x32)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x64)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x16 vpx_variance8x16_sse2
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_sse2
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x8 vpx_variance8x8_sse2
+
+uint32_t vpx_variance_halfpixvar16x16_h_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_h_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_h vpx_variance_halfpixvar16x16_h_sse2
+
+uint32_t vpx_variance_halfpixvar16x16_hv_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_hv_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_hv vpx_variance_halfpixvar16x16_hv_sse2
+
+uint32_t vpx_variance_halfpixvar16x16_v_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_variance_halfpixvar16x16_v_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, uint32_t *sse);
+#define vpx_variance_halfpixvar16x16_v vpx_variance_halfpixvar16x16_v_sse2
+
+void vpx_dsp_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+ vpx_convolve8 = vpx_convolve8_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8 = vpx_convolve8_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8 = vpx_convolve8_avx2;
+ vpx_convolve8_avg = vpx_convolve8_avg_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg = vpx_convolve8_avg_ssse3;
+ vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_ssse3;
+ vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_ssse3;
+ vpx_convolve8_horiz = vpx_convolve8_horiz_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_horiz = vpx_convolve8_horiz_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_horiz = vpx_convolve8_horiz_avx2;
+ vpx_convolve8_vert = vpx_convolve8_vert_sse2;
+ if (flags & HAS_SSSE3) vpx_convolve8_vert = vpx_convolve8_vert_ssse3;
+ if (flags & HAS_AVX2) vpx_convolve8_vert = vpx_convolve8_vert_avx2;
+ vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_ssse3;
+ vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_ssse3;
+ vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_ssse3;
+ vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_ssse3;
+ vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_ssse3;
+ vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_ssse3;
+ vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_4x4 = vpx_d207_predictor_4x4_ssse3;
+ vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_ssse3;
+ vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_ssse3;
+ vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_ssse3;
+ vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_4x4 = vpx_d45_predictor_4x4_ssse3;
+ vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d45_predictor_8x8 = vpx_d45_predictor_8x8_ssse3;
+ vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_ssse3;
+ vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_ssse3;
+ vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_ssse3;
+ vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_ssse3;
+ vpx_fdct32x32 = vpx_fdct32x32_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32 = vpx_fdct32x32_avx2;
+ vpx_fdct32x32_rd = vpx_fdct32x32_rd_sse2;
+ if (flags & HAS_AVX2) vpx_fdct32x32_rd = vpx_fdct32x32_rd_avx2;
+ vpx_fdct8x8 = vpx_fdct8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_fdct8x8 = vpx_fdct8x8_ssse3;
+ vpx_get16x16var = vpx_get16x16var_sse2;
+ if (flags & HAS_AVX2) vpx_get16x16var = vpx_get16x16var_avx2;
+ vpx_h_predictor_16x16 = vpx_h_predictor_16x16_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_16x16 = vpx_h_predictor_16x16_ssse3;
+ vpx_h_predictor_32x32 = vpx_h_predictor_32x32_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_32x32 = vpx_h_predictor_32x32_ssse3;
+ vpx_h_predictor_4x4 = vpx_h_predictor_4x4_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_4x4 = vpx_h_predictor_4x4_ssse3;
+ vpx_h_predictor_8x8 = vpx_h_predictor_8x8_c;
+ if (flags & HAS_SSSE3) vpx_h_predictor_8x8 = vpx_h_predictor_8x8_ssse3;
+ vpx_idct8x8_12_add = vpx_idct8x8_12_add_sse2;
+ if (flags & HAS_SSSE3) vpx_idct8x8_12_add = vpx_idct8x8_12_add_ssse3;
+ vpx_idct8x8_64_add = vpx_idct8x8_64_add_sse2;
+ if (flags & HAS_SSSE3) vpx_idct8x8_64_add = vpx_idct8x8_64_add_ssse3;
+ vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_sse2;
+ if (flags & HAS_AVX2) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_avx2;
+ vpx_mse16x16 = vpx_mse16x16_sse2;
+ if (flags & HAS_AVX2) vpx_mse16x16 = vpx_mse16x16_avx2;
+ vpx_quantize_b = vpx_quantize_b_sse2;
+ if (flags & HAS_SSSE3) vpx_quantize_b = vpx_quantize_b_ssse3;
+ vpx_quantize_b_32x32 = vpx_quantize_b_32x32_c;
+ if (flags & HAS_SSSE3) vpx_quantize_b_32x32 = vpx_quantize_b_32x32_ssse3;
+ vpx_sad16x16x3 = vpx_sad16x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x16x3 = vpx_sad16x16x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x16x3 = vpx_sad16x16x3_ssse3;
+ vpx_sad16x16x8 = vpx_sad16x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x16x8 = vpx_sad16x16x8_sse4_1;
+ vpx_sad16x8x3 = vpx_sad16x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad16x8x3 = vpx_sad16x8x3_sse3;
+ if (flags & HAS_SSSE3) vpx_sad16x8x3 = vpx_sad16x8x3_ssse3;
+ vpx_sad16x8x8 = vpx_sad16x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad16x8x8 = vpx_sad16x8x8_sse4_1;
+ vpx_sad32x16 = vpx_sad32x16_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16 = vpx_sad32x16_avx2;
+ vpx_sad32x16_avg = vpx_sad32x16_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x16_avg = vpx_sad32x16_avg_avx2;
+ vpx_sad32x32 = vpx_sad32x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32 = vpx_sad32x32_avx2;
+ vpx_sad32x32_avg = vpx_sad32x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32_avg = vpx_sad32x32_avg_avx2;
+ vpx_sad32x32x4d = vpx_sad32x32x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x32x4d = vpx_sad32x32x4d_avx2;
+ vpx_sad32x64 = vpx_sad32x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64 = vpx_sad32x64_avx2;
+ vpx_sad32x64_avg = vpx_sad32x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad32x64_avg = vpx_sad32x64_avg_avx2;
+ vpx_sad4x4x3 = vpx_sad4x4x3_c;
+ if (flags & HAS_SSE3) vpx_sad4x4x3 = vpx_sad4x4x3_sse3;
+ vpx_sad4x4x8 = vpx_sad4x4x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad4x4x8 = vpx_sad4x4x8_sse4_1;
+ vpx_sad64x32 = vpx_sad64x32_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32 = vpx_sad64x32_avx2;
+ vpx_sad64x32_avg = vpx_sad64x32_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x32_avg = vpx_sad64x32_avg_avx2;
+ vpx_sad64x64 = vpx_sad64x64_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64 = vpx_sad64x64_avx2;
+ vpx_sad64x64_avg = vpx_sad64x64_avg_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64_avg = vpx_sad64x64_avg_avx2;
+ vpx_sad64x64x4d = vpx_sad64x64x4d_sse2;
+ if (flags & HAS_AVX2) vpx_sad64x64x4d = vpx_sad64x64x4d_avx2;
+ vpx_sad8x16x3 = vpx_sad8x16x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x16x3 = vpx_sad8x16x3_sse3;
+ vpx_sad8x16x8 = vpx_sad8x16x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x16x8 = vpx_sad8x16x8_sse4_1;
+ vpx_sad8x8x3 = vpx_sad8x8x3_c;
+ if (flags & HAS_SSE3) vpx_sad8x8x3 = vpx_sad8x8x3_sse3;
+ vpx_sad8x8x8 = vpx_sad8x8x8_c;
+ if (flags & HAS_SSE4_1) vpx_sad8x8x8 = vpx_sad8x8x8_sse4_1;
+ vpx_scaled_2d = vpx_scaled_2d_c;
+ if (flags & HAS_SSSE3) vpx_scaled_2d = vpx_scaled_2d_ssse3;
+ vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_ssse3;
+ vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_ssse3;
+ vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_ssse3;
+ vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_ssse3;
+ vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_avx2;
+ vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_ssse3;
+ vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_ssse3;
+ vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_ssse3;
+ vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_ssse3;
+ vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_avx2;
+ vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_ssse3;
+ vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_ssse3;
+ vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_ssse3;
+ vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_ssse3;
+ vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_ssse3;
+ vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_ssse3;
+ vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_ssse3;
+ vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_avx2;
+ vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_ssse3;
+ vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_ssse3;
+ vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_sse;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_ssse3;
+ vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_ssse3;
+ vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_ssse3;
+ if (flags & HAS_AVX2) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_avx2;
+ vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_ssse3;
+ vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_ssse3;
+ vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_sse2;
+ if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_ssse3;
+ vpx_variance16x16 = vpx_variance16x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance16x16 = vpx_variance16x16_avx2;
+ vpx_variance32x16 = vpx_variance32x16_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x16 = vpx_variance32x16_avx2;
+ vpx_variance32x32 = vpx_variance32x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance32x32 = vpx_variance32x32_avx2;
+ vpx_variance64x32 = vpx_variance64x32_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x32 = vpx_variance64x32_avx2;
+ vpx_variance64x64 = vpx_variance64x64_sse2;
+ if (flags & HAS_AVX2) vpx_variance64x64 = vpx_variance64x64_avx2;
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/source/config/win/x64/vpx_scale_rtcd.h b/third_party/libvpx_new/source/config/win/x64/vpx_scale_rtcd.h
new file mode 100644
index 0000000..ddf7d01
--- /dev/null
+++ b/third_party/libvpx_new/source/config/win/x64/vpx_scale_rtcd.h
@@ -0,0 +1,69 @@
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+ int flags = x86_simd_caps();
+
+ (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif
diff --git a/third_party/libvpx_new/update_libvpx.sh b/third_party/libvpx_new/update_libvpx.sh
new file mode 100755
index 0000000..56926bc
--- /dev/null
+++ b/third_party/libvpx_new/update_libvpx.sh
@@ -0,0 +1,137 @@
+#!/bin/bash -e
+#
+# Copyright (c) 2012 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This tool is used to update libvpx source code with the latest git
+# repository.
+#
+# Make sure you run this in a git checkout of deps/third_party/libvpx!
+
+# Usage:
+#
+# $ ./update_libvpx.sh [branch | revision | file or url containing a revision]
+# When specifying a branch it may be necessary to prefix with origin/
+
+# Tools required for running this tool:
+#
+# 1. Linux / Mac
+# 2. git
+
+export LC_ALL=C
+
+# Location for the remote git repository.
+GIT_REPO="https://chromium.googlesource.com/webm/libvpx"
+
+GIT_BRANCH="origin/master"
+LIBVPX_SRC_DIR="source/libvpx"
+BASE_DIR=`pwd`
+
+if [ -n "$1" ]; then
+ GIT_BRANCH="$1"
+ if [ -f "$1" ]; then
+ GIT_BRANCH=$(<"$1")
+ elif [[ $1 = http* ]]; then
+ GIT_BRANCH=`curl $1`
+ fi
+fi
+
+prev_hash="$(egrep "^Commit: [[:alnum:]]" README.chromium | awk '{ print $2 }')"
+echo "prev_hash:$prev_hash"
+
+rm -rf $LIBVPX_SRC_DIR
+mkdir $LIBVPX_SRC_DIR
+cd $LIBVPX_SRC_DIR
+
+# Start a local git repo.
+git clone $GIT_REPO .
+
+# Switch the content to the latest git repo.
+git checkout -b tot $GIT_BRANCH
+
+add="$(git diff-index --diff-filter=A $prev_hash | grep -v vp10/ | \
+tr -s [:blank:] ' ' | cut -f6 -d\ )"
+delete="$(git diff-index --diff-filter=D $prev_hash | grep -v vp10/ | \
+tr -s [:blank:] ' ' | cut -f6 -d\ )"
+
+# Get the current commit hash.
+hash=$(git log -1 --format="%H")
+
+# README reminder.
+echo "Update README.chromium:"
+echo "==============="
+echo "Date: $(date +"%A %B %d %Y")"
+echo "Branch: master"
+echo "Commit: $hash"
+echo "==============="
+echo ""
+
+# Commit message header.
+echo "Commit message:"
+echo "==============="
+echo "libvpx: Pull from upstream"
+echo ""
+
+# Output the current commit hash.
+echo "Current HEAD: $hash"
+echo ""
+
+# Output log for upstream from current hash.
+if [ -n "$prev_hash" ]; then
+ echo "git log from upstream:"
+ pretty_git_log="$(git log \
+ --no-merges \
+ --topo-order \
+ --pretty="%h %s" \
+ --max-count=20 \
+ $prev_hash..$hash)"
+ if [ -z "$pretty_git_log" ]; then
+ echo "No log found. Checking for reverts."
+ pretty_git_log="$(git log \
+ --no-merges \
+ --topo-order \
+ --pretty="%h %s" \
+ --max-count=20 \
+ $hash..$prev_hash)"
+ fi
+ echo "$pretty_git_log"
+ # If it makes it to 20 then it's probably skipping even more.
+ if [ `echo "$pretty_git_log" | wc -l` -eq 20 ]; then
+ echo "<...>"
+ fi
+fi
+
+# Commit message footer.
+echo ""
+echo "TBR=tomfinegan@chromium.org"
+echo "==============="
+
+# Git is useless now, remove the local git repo.
+# Remove vp10 to cut down on code churn since it is not currently built.
+rm -rf .git vp10
+
+# Add and remove files.
+echo "$add" | xargs -I {} git add {}
+echo "$delete" | xargs -I {} git rm --ignore-unmatch {}
+
+# Find empty directories and remove them.
+find . -type d -empty -exec git rm {} \;
+
+# Mark the scripts as executable so presubmit doesn't complain. The important
+# ones already have the x bit set but some of the files they include do not.
+chmod 755 build/make/*.sh build/make/*.pl configure
+
+# The build system doesn't support files with the same name. Search vp8, vp9 and vpx_dsp
+# for such files.
+duplicate_files=$(find vp8 vp9 vpx_dsp -type f | xargs basename | sort | uniq -d | \
+ egrep -v '(^exports_(dec|enc)|\.h)$' | \
+ xargs -I {} find vp8 vp9 vpx_dsp -name {})
+
+if [ -n "$duplicate_files" ]; then
+ echo "WARNING: DUPLICATE FILES FOUND"
+ echo "It would be a good idea to resolve these before attempting to roll"
+ echo $duplicate_files
+fi
+
+cd $BASE_DIR
diff --git a/tools/checklicenses/checklicenses.py b/tools/checklicenses/checklicenses.py
index ac44de5..1a107c3 100755
--- a/tools/checklicenses/checklicenses.py
+++ b/tools/checklicenses/checklicenses.py
@@ -370,6 +370,9 @@ PATH_SPECIFIC_WHITELISTED_LICENSES = {
'third_party/libvpx/source': [ # http://crbug.com/98319
'UNKNOWN',
],
+ 'third_party/libvpx_new/source': [ # http://crbug.com/98319
+ 'UNKNOWN',
+ ],
'third_party/libxml': [
'UNKNOWN',
],
diff --git a/tools/copyright_scanner/third_party_files_whitelist.txt b/tools/copyright_scanner/third_party_files_whitelist.txt
index 9dffcd5..a16ad88 100644
--- a/tools/copyright_scanner/third_party_files_whitelist.txt
+++ b/tools/copyright_scanner/third_party_files_whitelist.txt
@@ -75,7 +75,7 @@ content/renderer/input/input_scroll_elasticity_controller.h
# Copyright Google Inc, no license. Not used on Android.
google_update/google_update_idl.idl
# Copyright WebM Project authors; BSD license. Copied and modified from
-# third_party/libvpx. Not used on Android.
+# third_party/libvpx_new. Not used on Android.
media/filters/vp8_bool_decoder.h
media/filters/vp8_bool_decoder.cc
# Native client not used in Android. Contains the word "Copyright"