From: James Zern Date: Wed, 11 May 2016 02:28:35 +0000 (-0700) Subject: fix 'dist' & other decode-only builds X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9fa47587d9cdc185ce02fc327a40e8e4a5ebdbd2;p=libvpx fix 'dist' & other decode-only builds common/av1_fwd_txfm.[hc] are encode-only; add a TODO to relocate them Change-Id: I28cf8d0b22632b04066bcb72f3d2252ee7eb153e --- diff --git a/av1/av1_common.mk b/av1/av1_common.mk index 1fd39bc24..cd3e1d13e 100644 --- a/av1/av1_common.mk +++ b/av1/av1_common.mk @@ -62,8 +62,9 @@ AV1_COMMON_SRCS-yes += common/restoration.h AV1_COMMON_SRCS-yes += common/common_data.h AV1_COMMON_SRCS-yes += common/scan.c AV1_COMMON_SRCS-yes += common/scan.h -AV1_COMMON_SRCS-yes += common/av1_fwd_txfm.h -AV1_COMMON_SRCS-yes += common/av1_fwd_txfm.c +# TODO(angiebird) the forward transform belongs under encoder/ +AV1_COMMON_SRCS-$(CONFIG_AV1_ENCODER) += common/av1_fwd_txfm.h +AV1_COMMON_SRCS-$(CONFIG_AV1_ENCODER) += common/av1_fwd_txfm.c AV1_COMMON_SRCS-yes += common/av1_txfm.h AV1_COMMON_SRCS-yes += common/av1_fwd_txfm1d.h AV1_COMMON_SRCS-yes += common/av1_fwd_txfm1d.c @@ -113,13 +114,14 @@ AV1_COMMON_SRCS-$(HAVE_MSA) += common/mips/msa/idct8x8_msa.c AV1_COMMON_SRCS-$(HAVE_MSA) += common/mips/msa/idct16x16_msa.c AV1_COMMON_SRCS-$(HAVE_SSE2) += common/x86/idct_intrin_sse2.c +ifeq ($(CONFIG_AV1_ENCODER),yes) AV1_COMMON_SRCS-$(HAVE_SSE2) += common/x86/av1_fwd_txfm_sse2.c AV1_COMMON_SRCS-$(HAVE_SSE2) += common/x86/av1_fwd_dct32x32_impl_sse2.h AV1_COMMON_SRCS-$(HAVE_SSE2) += common/x86/av1_fwd_txfm_impl_sse2.h AV1_COMMON_SRCS-$(HAVE_SSE4_1) += common/x86/av1_txfm1d_sse4.h AV1_COMMON_SRCS-$(HAVE_SSE4_1) += common/x86/av1_fwd_txfm1d_sse4.c AV1_COMMON_SRCS-$(HAVE_SSE4_1) += common/x86/av1_fwd_txfm2d_sse4.c - +endif ifeq ($(CONFIG_AOM_HIGHBITDEPTH),yes) AV1_COMMON_SRCS-$(HAVE_SSE4_1) += common/x86/highbd_txfm_utility_sse4.h endif diff --git a/av1/common/av1_rtcd_defs.pl b/av1/common/av1_rtcd_defs.pl index c1b0f9e1b..3e003672b 100644 --- a/av1/common/av1_rtcd_defs.pl +++ b/av1/common/av1_rtcd_defs.pl @@ -83,57 +83,6 @@ if (aom_config("CONFIG_AOM_HIGHBITDEPTH") eq "yes") { add_proto qw/void av1_iht16x16_256_add/, "const tran_low_t *input, uint8_t *output, int pitch, int tx_type"; specialize qw/av1_iht16x16_256_add/; - - add_proto qw/void av1_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct4x4/; - - add_proto qw/void av1_fdct4x4_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct4x4_1/; - - add_proto qw/void av1_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct8x8/; - - add_proto qw/void av1_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct8x8_1/; - - add_proto qw/void av1_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct16x16/; - - add_proto qw/void av1_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct16x16_1/; - - add_proto qw/void av1_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32/; - - add_proto qw/void av1_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32_rd/; - - add_proto qw/void av1_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32_1/; - - add_proto qw/void av1_highbd_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct4x4/; - - add_proto qw/void av1_highbd_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct8x8/; - - add_proto qw/void av1_highbd_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct8x8_1/; - - add_proto qw/void av1_highbd_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct16x16/; - - add_proto qw/void av1_highbd_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct16x16_1/; - - add_proto qw/void av1_highbd_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct32x32/; - - add_proto qw/void av1_highbd_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct32x32_rd/; - - add_proto qw/void av1_highbd_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct32x32_1/; } else { add_proto qw/void av1_iht4x4_16_add/, "const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type"; specialize qw/av1_iht4x4_16_add sse2/; @@ -161,57 +110,6 @@ if (aom_config("CONFIG_AOM_HIGHBITDEPTH") eq "yes") { add_proto qw/void av1_iht16x16_256_add/, "const tran_low_t *input, uint8_t *output, int pitch, int tx_type"; specialize qw/av1_iht16x16_256_add sse2/; - - add_proto qw/void av1_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct4x4 sse2/; - - add_proto qw/void av1_fdct4x4_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct4x4_1 sse2/; - - add_proto qw/void av1_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct8x8 sse2/; - - add_proto qw/void av1_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct8x8_1 sse2/; - - add_proto qw/void av1_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct16x16 sse2/; - - add_proto qw/void av1_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct16x16_1 sse2/; - - add_proto qw/void av1_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32 sse2/; - - add_proto qw/void av1_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32_rd sse2/; - - add_proto qw/void av1_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32_1 sse2/; - - add_proto qw/void av1_highbd_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct4x4 sse2/; - - add_proto qw/void av1_highbd_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct8x8 sse2/; - - add_proto qw/void av1_highbd_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct8x8_1/; - - add_proto qw/void av1_highbd_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct16x16 sse2/; - - add_proto qw/void av1_highbd_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct16x16_1/; - - add_proto qw/void av1_highbd_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct32x32 sse2/; - - add_proto qw/void av1_highbd_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct32x32_rd sse2/; - - add_proto qw/void av1_highbd_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_highbd_fdct32x32_1/; } } else { # Force C versions if CONFIG_EMULATE_HARDWARE is 1 @@ -242,33 +140,6 @@ if (aom_config("CONFIG_AOM_HIGHBITDEPTH") eq "yes") { add_proto qw/void av1_iht16x16_256_add/, "const tran_low_t *input, uint8_t *output, int pitch, int tx_type"; specialize qw/av1_iht16x16_256_add/; - - add_proto qw/void av1_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct4x4/; - - add_proto qw/void av1_fdct4x4_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct4x4_1/; - - add_proto qw/void av1_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct8x8/; - - add_proto qw/void av1_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct8x8_1/; - - add_proto qw/void av1_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct16x16/; - - add_proto qw/void av1_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct16x16_1/; - - add_proto qw/void av1_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32/; - - add_proto qw/void av1_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32_rd/; - - add_proto qw/void av1_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32_1/; } else { add_proto qw/void av1_iht4x4_16_add/, "const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type"; specialize qw/av1_iht4x4_16_add sse2 neon dspr2/; @@ -302,33 +173,6 @@ if (aom_config("CONFIG_AOM_HIGHBITDEPTH") eq "yes") { specialize qw/av1_iht8x8_64_add msa/; specialize qw/av1_iht16x16_256_add msa/; } - - add_proto qw/void av1_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct4x4 sse2/; - - add_proto qw/void av1_fdct4x4_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct4x4_1 sse2/; - - add_proto qw/void av1_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct8x8 sse2/; - - add_proto qw/void av1_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct8x8_1 sse2/; - - add_proto qw/void av1_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct16x16 sse2/; - - add_proto qw/void av1_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct16x16_1 sse2/; - - add_proto qw/void av1_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32 sse2/; - - add_proto qw/void av1_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32_rd sse2/; - - add_proto qw/void av1_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; - specialize qw/av1_fdct32x32_1 sse2/; } } @@ -557,6 +401,109 @@ if (aom_config("CONFIG_AOM_HIGHBITDEPTH") eq "yes") { add_proto qw/void av1_fwht4x4/, "const int16_t *input, tran_low_t *output, int stride"; specialize qw/av1_fwht4x4/; + if (aom_config("CONFIG_EMULATE_HARDWARE") eq "yes") { + add_proto qw/void av1_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct4x4/; + + add_proto qw/void av1_fdct4x4_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct4x4_1/; + + add_proto qw/void av1_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct8x8/; + + add_proto qw/void av1_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct8x8_1/; + + add_proto qw/void av1_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct16x16/; + + add_proto qw/void av1_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct16x16_1/; + + add_proto qw/void av1_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32/; + + add_proto qw/void av1_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32_rd/; + + add_proto qw/void av1_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32_1/; + + add_proto qw/void av1_highbd_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct4x4/; + + add_proto qw/void av1_highbd_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct8x8/; + + add_proto qw/void av1_highbd_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct8x8_1/; + + add_proto qw/void av1_highbd_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct16x16/; + + add_proto qw/void av1_highbd_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct16x16_1/; + + add_proto qw/void av1_highbd_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct32x32/; + + add_proto qw/void av1_highbd_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct32x32_rd/; + + add_proto qw/void av1_highbd_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct32x32_1/; + } else { + add_proto qw/void av1_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct4x4 sse2/; + + add_proto qw/void av1_fdct4x4_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct4x4_1 sse2/; + + add_proto qw/void av1_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct8x8 sse2/; + + add_proto qw/void av1_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct8x8_1 sse2/; + + add_proto qw/void av1_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct16x16 sse2/; + + add_proto qw/void av1_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct16x16_1 sse2/; + + add_proto qw/void av1_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32 sse2/; + + add_proto qw/void av1_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32_rd sse2/; + + add_proto qw/void av1_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32_1 sse2/; + + add_proto qw/void av1_highbd_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct4x4 sse2/; + + add_proto qw/void av1_highbd_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct8x8 sse2/; + + add_proto qw/void av1_highbd_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct8x8_1/; + + add_proto qw/void av1_highbd_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct16x16 sse2/; + + add_proto qw/void av1_highbd_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct16x16_1/; + + add_proto qw/void av1_highbd_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct32x32 sse2/; + + add_proto qw/void av1_highbd_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct32x32_rd sse2/; + + add_proto qw/void av1_highbd_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_highbd_fdct32x32_1/; + } } else { add_proto qw/void av1_fht4x4/, "const int16_t *input, tran_low_t *output, int stride, int tx_type"; specialize qw/av1_fht4x4 sse2/; @@ -596,6 +543,61 @@ if (aom_config("CONFIG_AOM_HIGHBITDEPTH") eq "yes") { add_proto qw/void av1_fwht4x4/, "const int16_t *input, tran_low_t *output, int stride"; specialize qw/av1_fwht4x4/; + if (aom_config("CONFIG_EMULATE_HARDWARE") eq "yes") { + add_proto qw/void av1_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct4x4/; + + add_proto qw/void av1_fdct4x4_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct4x4_1/; + + add_proto qw/void av1_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct8x8/; + + add_proto qw/void av1_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct8x8_1/; + + add_proto qw/void av1_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct16x16/; + + add_proto qw/void av1_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct16x16_1/; + + add_proto qw/void av1_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32/; + + add_proto qw/void av1_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32_rd/; + + add_proto qw/void av1_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32_1/; + } else { + add_proto qw/void av1_fdct4x4/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct4x4 sse2/; + + add_proto qw/void av1_fdct4x4_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct4x4_1 sse2/; + + add_proto qw/void av1_fdct8x8/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct8x8 sse2/; + + add_proto qw/void av1_fdct8x8_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct8x8_1 sse2/; + + add_proto qw/void av1_fdct16x16/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct16x16 sse2/; + + add_proto qw/void av1_fdct16x16_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct16x16_1 sse2/; + + add_proto qw/void av1_fdct32x32/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32 sse2/; + + add_proto qw/void av1_fdct32x32_rd/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32_rd sse2/; + + add_proto qw/void av1_fdct32x32_1/, "const int16_t *input, tran_low_t *output, int stride"; + specialize qw/av1_fdct32x32_1 sse2/; + } } add_proto qw/void av1_fwd_idtx/, "const int16_t *src_diff, tran_low_t *coeff, int stride, int bs, int tx_type";