diff options
author | hclam@chromium.org <hclam@chromium.org> | 2014-09-13 00:28:02 +0000 |
---|---|---|
committer | hclam@chromium.org <hclam@chromium.org> | 2014-09-13 00:28:02 +0000 |
commit | 8064f37966e30866abedb5f454406b5a7b13318e (patch) | |
tree | 62949f64987f55275d2d588ffab88aefe34cce59 | |
parent | 17fcbf6b40c020754cadbd1f719a7974bf98db24 (diff) | |
download | libvpx-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.gn | 37 | ||||
-rwxr-xr-x | generate_gypi.sh | 6 | ||||
-rw-r--r-- | libvpx_srcs.gni | 188 | ||||
-rw-r--r-- | run_perl.py | 28 |
4 files changed, 169 insertions, 90 deletions
@@ -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) |