summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhclam@chromium.org <hclam@chromium.org>2014-09-13 00:28:02 +0000
committerhclam@chromium.org <hclam@chromium.org>2014-09-13 00:28:02 +0000
commit8064f37966e30866abedb5f454406b5a7b13318e (patch)
tree62949f64987f55275d2d588ffab88aefe34cce59
parent17fcbf6b40c020754cadbd1f719a7974bf98db24 (diff)
downloadlibvpx-8064f37966e30866abedb5f454406b5a7b13318e.tar.gz
GN & libvpx: Convert ARM assembly files and compile
libvpx's assembly source files for ARM need to be converted before they can be compiled. This change coverts them to GAS format and compile. R=brettw@chromium.org, johannkoenig@google.com Review URL: https://codereview.chromium.org/567883002 git-svn-id: http://src.chromium.org/svn/trunk/deps/third_party/libvpx@291959 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
-rw-r--r--BUILD.gn37
-rwxr-xr-xgenerate_gypi.sh6
-rw-r--r--libvpx_srcs.gni188
-rw-r--r--run_perl.py28
4 files changed, 169 insertions, 90 deletions
diff --git a/BUILD.gn b/BUILD.gn
index ced12ef..f2f5747 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -179,6 +179,39 @@ if (cpu_arch_full == "arm-neon-cpu-detect") {
}
}
+# Converts ARM assembly files to GAS style.
+if (cpu_arch == "arm") {
+ action_foreach("convert_arm_assembly") {
+ script = "//third_party/libvpx/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/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")
+ deps = [ ":convert_arm_assembly" ]
+ configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
+ configs += [ ":libvpx_config" ]
+ if (cpu_arch_full == "arm-neon" ||
+ cpu_arch_full == "arm-neon-cpu-detect") {
+ cflags = [ "-mfpu=neon" ]
+ }
+ }
+}
+
static_library("libvpx") {
if (!is_debug && is_win && is_official_build) {
configs -= [ "//build/config/compiler:optimize" ]
@@ -206,7 +239,6 @@ static_library("libvpx") {
} else if (cpu_arch == "arm64") {
sources = libvpx_srcs_arm64
}
-
deps = [
":gen_asm_offsets_vp8",
]
@@ -226,4 +258,7 @@ static_library("libvpx") {
if (is_android) {
deps += [ "//third_party/android_tools:cpu_features" ]
}
+ if (cpu_arch == "arm") {
+ deps += [ ":libvpx_assembly_arm" ]
+ }
}
diff --git a/generate_gypi.sh b/generate_gypi.sh
index 1d5a5a1..594bb63 100755
--- a/generate_gypi.sh
+++ b/generate_gypi.sh
@@ -255,7 +255,6 @@ function convert_srcs_to_project_files {
# Write a single .gni file that includes all source files for all archs.
if [ 0 -ne ${#x86_list} ]; then
- # X86 systems need to separate C and assembly files for GN.
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$')
@@ -276,8 +275,11 @@ function convert_srcs_to_project_files {
write_gni avx_sources $2_avx "$BASE_DIR/libvpx_srcs.gni"
write_gni avx2_sources $2_avx2 "$BASE_DIR/libvpx_srcs.gni"
else
+ local c_sources=$(echo "$source_list" | egrep '.(c|h)$')
+ local assembly_sources=$(echo "$source_list" | egrep '.asm$')
local neon_sources=$(echo "$intrinsic_list" | grep '_neon\.c$')
- write_gni source_list $2 "$BASE_DIR/libvpx_srcs.gni"
+ 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
diff --git a/libvpx_srcs.gni b/libvpx_srcs.gni
index 39e8a68..2b31283 100644
--- a/libvpx_srcs.gni
+++ b/libvpx_srcs.gni
@@ -786,27 +786,7 @@ libvpx_srcs_x86_64_avx2 = [
libvpx_srcs_arm = [
"//third_party/libvpx/source/libvpx/vp8/common/alloccommon.c",
"//third_party/libvpx/source/libvpx/vp8/common/alloccommon.h",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/bilinearfilter_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/copymem16x16_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/copymem8x4_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/copymem8x8_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/dc_only_idct_add_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/dequant_idct_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/dequantize_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/filter_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/idct_blk_v6.c",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/idct_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/intra4x4_predict_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/iwalsh_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/loopfilter_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/simpleloopfilter_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/sixtappredict8x4_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_sad16x16_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance16x16_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance8x8_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_h_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_hv_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_v_armv6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/bilinearfilter_arm.c",
"//third_party/libvpx/source/libvpx/vp8/common/arm/bilinearfilter_arm.h",
"//third_party/libvpx/source/libvpx/vp8/common/arm/dequantize_arm.c",
@@ -883,11 +863,6 @@ libvpx_srcs_arm = [
"//third_party/libvpx/source/libvpx/vp8/decoder/onyxd_int.h",
"//third_party/libvpx/source/libvpx/vp8/decoder/threading.c",
"//third_party/libvpx/source/libvpx/vp8/decoder/treereader.h",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_mse16x16_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_subtract_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/walsh_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/encoder/arm/dct_arm.c",
"//third_party/libvpx/source/libvpx/vp8/encoder/arm/quantize_arm.c",
"//third_party/libvpx/source/libvpx/vp8/encoder/bitstream.c",
@@ -1114,9 +1089,7 @@ libvpx_srcs_arm = [
"//third_party/libvpx/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
"//third_party/libvpx/source/libvpx/vpx_scale/yv12config.h",
]
-libvpx_srcs_arm_neon = [
- "//third_party/libvpx/source/libvpx/vp8/common/alloccommon.c",
- "//third_party/libvpx/source/libvpx/vp8/common/alloccommon.h",
+libvpx_srcs_arm_assembly = [
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/bilinearfilter_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/copymem16x16_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/copymem8x4_v6.asm",
@@ -1125,7 +1098,6 @@ libvpx_srcs_arm_neon = [
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/dequant_idct_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/dequantize_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/filter_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/idct_blk_v6.c",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/idct_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/intra4x4_predict_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/iwalsh_v6.asm",
@@ -1138,6 +1110,16 @@ libvpx_srcs_arm_neon = [
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_h_armv6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_hv_armv6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_v_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_mse16x16_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_subtract_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/walsh_v6.asm",
+]
+libvpx_srcs_arm_neon = [
+ "//third_party/libvpx/source/libvpx/vp8/common/alloccommon.c",
+ "//third_party/libvpx/source/libvpx/vp8/common/alloccommon.h",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/idct_blk_v6.c",
"//third_party/libvpx/source/libvpx/vp8/common/arm/bilinearfilter_arm.c",
"//third_party/libvpx/source/libvpx/vp8/common/arm/bilinearfilter_arm.h",
"//third_party/libvpx/source/libvpx/vp8/common/arm/dequantize_arm.c",
@@ -1233,17 +1215,10 @@ libvpx_srcs_arm_neon = [
"//third_party/libvpx/source/libvpx/vp8/decoder/onyxd_int.h",
"//third_party/libvpx/source/libvpx/vp8/decoder/threading.c",
"//third_party/libvpx/source/libvpx/vp8/decoder/treereader.h",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_mse16x16_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_subtract_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/walsh_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/encoder/arm/dct_arm.c",
"//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/denoising_neon.c",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/fastquantizeb_neon.asm",
"//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/shortfdct_neon.c",
"//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/subtract_neon.c",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/vp8_mse16x16_neon.asm",
"//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.c",
"//third_party/libvpx/source/libvpx/vp8/encoder/arm/quantize_arm.c",
"//third_party/libvpx/source/libvpx/vp8/encoder/bitstream.c",
@@ -1294,29 +1269,9 @@ libvpx_srcs_arm_neon = [
"//third_party/libvpx/source/libvpx/vp8/encoder/treewriter.h",
"//third_party/libvpx/source/libvpx/vp8/vp8_cx_iface.c",
"//third_party/libvpx/source/libvpx/vp8/vp8_dx_iface.c",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_avg_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_convolve8_avg_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_convolve8_neon.asm",
"//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_convolve_neon.c",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_copy_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_dc_only_idct_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct16x16_1_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct16x16_add_neon.asm",
"//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct16x16_neon.c",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct32x32_1_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct32x32_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct4x4_1_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct4x4_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct8x8_1_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct8x8_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_iht4x4_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_iht8x8_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_loopfilter_16_neon.asm",
"//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_loopfilter_16_neon.c",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_loopfilter_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_mb_lpf_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_reconintra_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_save_reg_neon.asm",
"//third_party/libvpx/source/libvpx/vp9/common/vp9_alloccommon.c",
"//third_party/libvpx/source/libvpx/vp9/common/vp9_alloccommon.h",
"//third_party/libvpx/source/libvpx/vp9/common/vp9_blockd.c",
@@ -1498,9 +1453,7 @@ libvpx_srcs_arm_neon = [
"//third_party/libvpx/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
"//third_party/libvpx/source/libvpx/vpx_scale/yv12config.h",
]
-libvpx_srcs_arm_neon_cpu_detect = [
- "//third_party/libvpx/source/libvpx/vp8/common/alloccommon.c",
- "//third_party/libvpx/source/libvpx/vp8/common/alloccommon.h",
+libvpx_srcs_arm_neon_assembly = [
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/bilinearfilter_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/copymem16x16_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/copymem8x4_v6.asm",
@@ -1509,7 +1462,6 @@ libvpx_srcs_arm_neon_cpu_detect = [
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/dequant_idct_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/dequantize_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/filter_v6.asm",
- "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/idct_blk_v6.c",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/idct_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/intra4x4_predict_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/iwalsh_v6.asm",
@@ -1522,6 +1474,38 @@ libvpx_srcs_arm_neon_cpu_detect = [
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_h_armv6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_hv_armv6.asm",
"//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_v_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_mse16x16_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_subtract_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/walsh_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/fastquantizeb_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/vp8_mse16x16_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_avg_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_convolve8_avg_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_convolve8_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_copy_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_dc_only_idct_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct16x16_1_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct16x16_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct32x32_1_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct32x32_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct4x4_1_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct4x4_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct8x8_1_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct8x8_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_iht4x4_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_iht8x8_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_loopfilter_16_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_loopfilter_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_mb_lpf_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_reconintra_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_save_reg_neon.asm",
+]
+libvpx_srcs_arm_neon_cpu_detect = [
+ "//third_party/libvpx/source/libvpx/vp8/common/alloccommon.c",
+ "//third_party/libvpx/source/libvpx/vp8/common/alloccommon.h",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/idct_blk_v6.c",
"//third_party/libvpx/source/libvpx/vp8/common/arm/bilinearfilter_arm.c",
"//third_party/libvpx/source/libvpx/vp8/common/arm/bilinearfilter_arm.h",
"//third_party/libvpx/source/libvpx/vp8/common/arm/dequantize_arm.c",
@@ -1598,14 +1582,7 @@ libvpx_srcs_arm_neon_cpu_detect = [
"//third_party/libvpx/source/libvpx/vp8/decoder/onyxd_int.h",
"//third_party/libvpx/source/libvpx/vp8/decoder/threading.c",
"//third_party/libvpx/source/libvpx/vp8/decoder/treereader.h",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_mse16x16_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_subtract_armv6.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/walsh_v6.asm",
"//third_party/libvpx/source/libvpx/vp8/encoder/arm/dct_arm.c",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/fastquantizeb_neon.asm",
- "//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/vp8_mse16x16_neon.asm",
"//third_party/libvpx/source/libvpx/vp8/encoder/arm/quantize_arm.c",
"//third_party/libvpx/source/libvpx/vp8/encoder/bitstream.c",
"//third_party/libvpx/source/libvpx/vp8/encoder/bitstream.h",
@@ -1655,26 +1632,6 @@ libvpx_srcs_arm_neon_cpu_detect = [
"//third_party/libvpx/source/libvpx/vp8/encoder/treewriter.h",
"//third_party/libvpx/source/libvpx/vp8/vp8_cx_iface.c",
"//third_party/libvpx/source/libvpx/vp8/vp8_dx_iface.c",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_avg_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_convolve8_avg_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_convolve8_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_copy_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_dc_only_idct_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct16x16_1_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct16x16_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct32x32_1_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct32x32_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct4x4_1_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct4x4_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct8x8_1_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct8x8_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_iht4x4_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_iht8x8_add_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_loopfilter_16_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_loopfilter_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_mb_lpf_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_reconintra_neon.asm",
- "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_save_reg_neon.asm",
"//third_party/libvpx/source/libvpx/vp9/common/vp9_alloccommon.c",
"//third_party/libvpx/source/libvpx/vp9/common/vp9_alloccommon.h",
"//third_party/libvpx/source/libvpx/vp9/common/vp9_blockd.c",
@@ -1851,6 +1808,55 @@ libvpx_srcs_arm_neon_cpu_detect = [
"//third_party/libvpx/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
"//third_party/libvpx/source/libvpx/vpx_scale/yv12config.h",
]
+libvpx_srcs_arm_neon_cpu_detect_assembly = [
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/bilinearfilter_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/copymem16x16_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/copymem8x4_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/copymem8x8_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/dc_only_idct_add_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/dequant_idct_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/dequantize_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/filter_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/idct_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/intra4x4_predict_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/iwalsh_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/loopfilter_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/simpleloopfilter_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/sixtappredict8x4_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_sad16x16_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance16x16_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance8x8_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_h_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_hv_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_v_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_mse16x16_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/vp8_subtract_armv6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/armv6/walsh_v6.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/fastquantizeb_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp8/encoder/arm/neon/vp8_mse16x16_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_avg_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_convolve8_avg_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_convolve8_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_copy_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_dc_only_idct_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct16x16_1_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct16x16_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct32x32_1_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct32x32_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct4x4_1_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct4x4_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct8x8_1_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_idct8x8_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_iht4x4_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_iht8x8_add_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_loopfilter_16_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_loopfilter_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_mb_lpf_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_reconintra_neon.asm",
+ "//third_party/libvpx/source/libvpx/vp9/common/arm/neon/vp9_save_reg_neon.asm",
+]
libvpx_srcs_arm_neon_cpu_detect_neon = [
"//third_party/libvpx/source/libvpx/vp8/common/arm/neon/bilinearpredict_neon.c",
"//third_party/libvpx/source/libvpx/vp8/common/arm/neon/copymem_neon.c",
@@ -2215,6 +2221,8 @@ libvpx_srcs_arm64 = [
"//third_party/libvpx/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
"//third_party/libvpx/source/libvpx/vpx_scale/yv12config.h",
]
+libvpx_srcs_arm64_assembly = [
+]
libvpx_srcs_mips = [
"//third_party/libvpx/source/libvpx/vp8/common/alloccommon.c",
"//third_party/libvpx/source/libvpx/vp8/common/alloccommon.h",
@@ -2512,6 +2520,8 @@ libvpx_srcs_mips = [
"//third_party/libvpx/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
"//third_party/libvpx/source/libvpx/vpx_scale/yv12config.h",
]
+libvpx_srcs_mips_assembly = [
+]
libvpx_srcs_nacl = [
"//third_party/libvpx/source/libvpx/vp8/common/alloccommon.c",
"//third_party/libvpx/source/libvpx/vp8/common/alloccommon.h",
@@ -2807,6 +2817,8 @@ libvpx_srcs_nacl = [
"//third_party/libvpx/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
"//third_party/libvpx/source/libvpx/vpx_scale/yv12config.h",
]
+libvpx_srcs_nacl_assembly = [
+]
libvpx_srcs_generic = [
"//third_party/libvpx/source/libvpx/vp8/common/alloccommon.c",
"//third_party/libvpx/source/libvpx/vp8/common/alloccommon.h",
@@ -3102,3 +3114,5 @@ libvpx_srcs_generic = [
"//third_party/libvpx/source/libvpx/vpx_scale/vpx_scale_rtcd.c",
"//third_party/libvpx/source/libvpx/vpx_scale/yv12config.h",
]
+libvpx_srcs_generic_assembly = [
+]
diff --git a/run_perl.py b/run_perl.py
new file mode 100644
index 0000000..a81828e
--- /dev/null
+++ b/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)