summaryrefslogtreecommitdiff
path: root/media
diff options
context:
space:
mode:
authorMatt A. Tobin <email@mattatobin.com>2014-08-24 01:48:42 -0400
committerMatt A. Tobin <email@mattatobin.com>2014-08-24 02:04:22 -0400
commitd972fe6d11d7eea92cb22bfdb7cd8e5e2c81dbc5 (patch)
treed40360a6a8b3740ed09fffcf100299d8e403c95b /media
parentde5b0c811abce90b68958afa49230b3cca11c6db (diff)
downloadpalemoon-gre-d972fe6d11d7eea92cb22bfdb7cd8e5e2c81dbc5.tar.gz
Part 1: Update libvpx build files (x86)
Diffstat (limited to 'media')
-rw-r--r--media/libvpx/Makefile.in284
-rw-r--r--media/libvpx/moz.build38
2 files changed, 174 insertions, 148 deletions
diff --git a/media/libvpx/Makefile.in b/media/libvpx/Makefile.in
index 74890cad9..490762169 100644
--- a/media/libvpx/Makefile.in
+++ b/media/libvpx/Makefile.in
@@ -28,6 +28,11 @@ LOCAL_INCLUDES += \
-I$(topsrcdir)/media/libvpx/vp8/decoder \
-I$(topsrcdir)/media/libvpx/vp8/decoder/arm \
-I$(topsrcdir)/media/libvpx/vp8/decoder/x86 \
+ -I$(topsrcdir)/media/libvpx/vp9/ \
+ -I$(topsrcdir)/media/libvpx/vp9/common/ \
+ -I$(topsrcdir)/media/libvpx/vp9/common/arm \
+ -I$(topsrcdir)/media/libvpx/vp9/common/x86 \
+ -I$(topsrcdir)/media/libvpx/vp9/decoder/ \
-I$(topsrcdir)/media/libvpx/vpx_codec \
-I$(topsrcdir)/media/libvpx/vpx_mem/ \
-I$(topsrcdir)/media/libvpx/vpx_mem/include \
@@ -59,6 +64,13 @@ VPATH += \
$(srcdir)/vp8/decoder/arm/neon \
$(srcdir)/vp8/decoder/generic \
$(srcdir)/vp8/decoder/x86 \
+ $(srcdir)/vp9 \
+ $(srcdir)/vp9/common \
+ $(srcdir)/vp9/common/arm \
+ $(srcdir)/vp9/common/arm/neon \
+ $(srcdir)/vp9/common/generic \
+ $(srcdir)/vp9/common/x86 \
+ $(srcdir)/vp9/decoder \
$(NULL)
#Setup the libvpx assembler config.
@@ -68,8 +80,6 @@ AS_DASH_C_FLAG=$(VPX_DASH_C_FLAG)
ASM_SUFFIX=$(VPX_ASM_SUFFIX)
CSRCS += \
- vpx_config_c.c \
- vp8_dx_iface.c \
alloccommon.c \
blockd.c \
debugmodes.c \
@@ -80,43 +90,73 @@ CSRCS += \
extend.c \
filter.c \
findnearmv.c \
+ systemdependent.c \
idct_blk.c \
idctllm.c \
loopfilter.c \
loopfilter_filters.c \
mbpitch.c \
modecont.c \
- modecontext.c \
- postproc.c \
quant_common.c \
reconinter.c \
reconintra.c \
reconintra4x4.c \
+ rtcd.c \
sad_c.c \
setupintrarecon.c \
swapyv12buffer.c \
treecoder.c \
variance_c.c \
- systemdependent.c \
dboolhuff.c \
decodemv.c \
decodframe.c \
detokenize.c \
- reconintra_mt.c \
onyxd_if.c \
threading.c \
- dsystemdependent.c \
+ vp8_dx_iface.c \
+ vp9_systemdependent.c \
+ vp9_alloccommon.c \
+ vp9_common_data.c \
+ vp9_convolve.c \
+ vp9_debugmodes.c \
+ vp9_entropy.c \
+ vp9_entropymode.c \
+ vp9_entropymv.c \
+ vp9_extend.c \
+ vp9_filter.c \
+ vp9_findnearmv.c \
+ vp9_idct.c \
+ vp9_loopfilter.c \
+ vp9_loopfilter_filters.c \
+ vp9_mvref_common.c \
+ vp9_pred_common.c \
+ vp9_quant_common.c \
+ vp9_reconinter.c \
+ vp9_reconintra.c \
+ vp9_rtcd.c \
+ vp9_scale.c \
+ vp9_scan.c \
+ vp9_seg_common.c \
+ vp9_tile_common.c \
+ vp9_treecoder.c \
+ vp9_dboolhuff.c \
+ vp9_decodemv.c \
+ vp9_decodframe.c \
+ vp9_detokenize.c \
+ vp9_dsubexp.c \
+ vp9_onyxd_if.c \
+ vp9_thread.c \
+ vp9_dx_iface.c \
vpx_codec.c \
vpx_decoder.c \
- vpx_decoder_compat.c \
vpx_encoder.c \
vpx_image.c \
vpx_mem.c \
gen_scalers.c \
- vpxscale.c \
- scalesystemdependent.c \
+ vpx_scale.c \
yv12config.c \
yv12extend.c \
+ vpx_scale_rtcd.c \
$(NULL)
ifdef MOZ_VP8_ERROR_CONCEALMENT
@@ -134,14 +174,17 @@ VPATH += \
$(srcdir)/vp8/encoder/arm/neon \
$(srcdir)/vp8/encoder/generic \
$(srcdir)/vp8/encoder/x86 \
+ $(srcdir)/vp9/encoder \
+ $(srcdir)/vp9/encoder/x86 \
$(srcdir)/vpx_scale/arm \
$(srcdir)/vpx_scale/arm/neon \
+ $(srcdir)/third_party/x86inc \
$(NULL)
CSRCS += \
- vp8_cx_iface.c \
bitstream.c \
dct.c \
+ denoising.c \
encodeframe.c \
encodeintra.c \
encodemb.c \
@@ -163,7 +206,35 @@ CSRCS += \
temporal_filter.c \
tokenize.c \
treewriter.c \
- csystemdependent.c \
+ vp8_cx_iface.c \
+ vp9_bitstream.c \
+ vp9_boolhuff.c \
+ vp9_dct.c \
+ vp9_encodeframe.c \
+ vp9_encodeintra.c \
+ vp9_encodemb.c \
+ vp9_encodemv.c \
+ vp9_firstpass.c \
+ vp9_lookahead.c \
+ vp9_mbgraph.c \
+ vp9_mcomp.c \
+ vp9_modecosts.c \
+ vp9_onyx_if.c \
+ vp9_picklpf.c \
+ vp9_psnr.c \
+ vp9_quantize.c \
+ vp9_ratectrl.c \
+ vp9_rdopt.c \
+ vp9_sad_c.c \
+ vp9_segmentation.c \
+ vp9_subexp.c \
+ vp9_temporal_filter.c \
+ vp9_tokenize.c \
+ vp9_treewriter.c \
+ vp9_vaq.c \
+ vp9_variance_c.c \
+ vp9_cx_iface.c \
+ svc_encodeframe.c \
$(NULL)
endif
@@ -172,6 +243,8 @@ ifdef VPX_X86_ASM
# the optimized assembly in the build.
CSRCS += \
+ mfqe.c \
+ postproc.c \
filter_x86.c \
idct_blk_mmx.c \
idct_blk_sse2.c \
@@ -182,8 +255,10 @@ CSRCS += \
variance_sse2.c \
variance_ssse3.c \
vp8_asm_stubs.c \
- x86_systemdependent.c \
- x86_dsystemdependent.c \
+ vp9_asm_stubs.c \
+ vp9_idct_intrin_sse2.c \
+ vp9_loopfilter_intrin_sse2.c \
+ x86_cpuid.c \
$(NULL)
ASFILES += \
@@ -194,6 +269,7 @@ ASFILES += \
iwalsh_sse2.asm \
loopfilter_mmx.asm \
loopfilter_sse2.asm \
+ mfqe_sse2.asm \
postproc_mmx.asm \
postproc_sse2.asm \
recon_mmx.asm \
@@ -209,22 +285,44 @@ ASFILES += \
variance_impl_mmx.asm \
variance_impl_sse2.asm \
variance_impl_ssse3.asm \
+ vp9_copy_sse2.asm \
+ vp9_intrapred_sse2.asm \
+ vp9_intrapred_ssse3.asm \
+ vp9_loopfilter_mmx.asm \
+ vp9_subpixel_8t_sse2.asm \
+ vp9_subpixel_8t_ssse3.asm \
emms.asm \
$(NULL)
ifeq (64,$(findstring 64,$(OS_TEST)))
-ASFILES += loopfilter_block_sse2.asm
+VPATH += \
+ $(srcdir)/third_party/x86inc \
+ $(NULL)
+
+ASFILES += \
+ x86inc.asm \
+ loopfilter_block_sse2.asm \
+ $(NULL)
endif
+ # AVX2 only supported on
+ # Darwin toolchain right now
+### BINOC TODO: AVX2 Conversion from m-r28-moz.build
+
ifdef MOZ_VP8_ENCODER
CSRCS += \
- x86_csystemdependent.c \
+ denoising_sse2.c \
+ quantize_sse2.c \
+ vp8_enc_stubs_mmx.c \
+ vp8_enc_stubs_sse2.c \
+ vp9_dct32x32_sse2.c \
+ vp9_dct_sse2.c \
+ vp9_variance_mmx.c \
+ vp9_variance_sse2.c \
$(NULL)
-# Files which depend on asm_enc_offsets.asm
VPX_ASM_ENC_OFFSETS_SRCS = \
- quantize_sse2.asm \
quantize_sse4.asm \
quantize_ssse3.asm \
$(NULL)
@@ -238,13 +336,34 @@ ASFILES += \
subtract_mmx.asm \
subtract_sse2.asm \
temporal_filter_apply_sse2.asm \
+ vp9_error_sse2.asm \
+ vp9_sad4d_sse2.asm \
+ vp9_sad_mmx.asm \
+ vp9_sad_sse2.asm \
+ vp9_sad_sse3.asm \
+ vp9_sad_sse4.asm \
+ vp9_sad_ssse3.asm \
+ vp9_subpel_variance.asm \
+ vp9_subpel_variance_impl_sse2.asm \
+ vp9_subtract_sse2.asm \
+ vp9_temporal_filter_apply_sse2.asm \
+ vp9_variance_impl_mmx.asm \
+ vp9_variance_impl_sse2.asm \
$(VPX_ASM_ENC_OFFSETS_SRCS) \
$(NULL)
+ifeq (64,$(findstring 64,$(OS_TEST)))
+ASFILES += \
+ vp9_quantize_ssse3.asm \
+ $(NULL)
+endif
+
endif
endif
+### BINOC PROGRESS STOP
+
ifdef VPX_ARM_ASM
# Building on an ARM platform with a supported assembler, include
# the optimized assembly in the build.
@@ -265,111 +384,24 @@ endif
endif
CSRCS += \
- arm_cpudetect.c \
- arm_systemdependent.c \
- bilinearfilter_arm.c \
- dequantize_arm.c \
- filter_arm.c \
- loopfilter_arm.c \
- reconintra_arm.c \
- variance_arm.c \
- idct_blk_v6.c \
- idct_blk_neon.c \
- arm_dsystemdependent.c \
- arm_scalesystemdependent.c \
- yv12extend_arm.c \
$(NULL)
# Files which depend on asm_com_offsets.asm
VPX_ASM_COM_OFFSETS_SRCS = \
- vp8_vpxyv12_copy_y_neon.asm \
- vp8_vpxyv12_copyframe_func_neon.asm \
- vp8_vpxyv12_extendframeborders_neon.asm \
$(NULL)
VPX_ASFILES = \
- bilinearfilter_v6.asm \
- copymem16x16_v6.asm \
- copymem8x4_v6.asm \
- copymem8x8_v6.asm \
- dc_only_idct_add_v6.asm \
- dequant_idct_v6.asm \
- dequantize_v6.asm \
- filter_v6.asm \
- idct_v6.asm \
- intra4x4_predict_v6.asm \
- iwalsh_v6.asm \
- loopfilter_v6.asm \
- simpleloopfilter_v6.asm \
- sixtappredict8x4_v6.asm \
- bilinearpredict16x16_neon.asm \
- bilinearpredict4x4_neon.asm \
- bilinearpredict8x4_neon.asm \
- bilinearpredict8x8_neon.asm \
- buildintrapredictorsmby_neon.asm \
- copymem16x16_neon.asm \
- copymem8x4_neon.asm \
- copymem8x8_neon.asm \
- dc_only_idct_add_neon.asm \
- dequant_idct_neon.asm \
- dequantizeb_neon.asm \
- idct_dequant_0_2x_neon.asm \
- idct_dequant_full_2x_neon.asm \
- iwalsh_neon.asm \
- loopfilter_neon.asm \
- loopfiltersimplehorizontaledge_neon.asm \
- loopfiltersimpleverticaledge_neon.asm \
- mbloopfilter_neon.asm \
- save_neon_reg.asm \
- vp8_mse16x16_armv6.asm \
- vp8_sad16x16_armv6.asm \
- vp8_variance16x16_armv6.asm \
- vp8_variance8x8_armv6.asm \
- vp8_variance_halfpixvar16x16_h_armv6.asm \
- vp8_variance_halfpixvar16x16_hv_armv6.asm \
- vp8_variance_halfpixvar16x16_v_armv6.asm \
- shortidct4x4llm_neon.asm \
- sad16_neon.asm \
- sad8_neon.asm \
- sixtappredict16x16_neon.asm \
- sixtappredict4x4_neon.asm \
- sixtappredict8x4_neon.asm \
- sixtappredict8x8_neon.asm \
- variance_neon.asm \
- vp8_mse16x16_neon.asm \
- vp8_subpixelvariance8x8_neon.asm \
- vp8_subpixelvariance16x16_neon.asm \
- vp8_subpixelvariance16x16s_neon.asm \
- $(VPX_ASM_COM_OFFSETS_SRCS) \
$(NULL)
ifdef MOZ_VP8_ENCODER
CSRCS += \
- arm_csystemdependent.c \
- boolhuff_arm.c \
- dct_arm.c \
- picklpf_arm.c \
$(NULL)
# Files which depend on asm_enc_offsets.asm
VPX_ASM_ENC_OFFSETS_SRCS = \
- boolhuff_armv5te.asm \
- vp8_packtokens_armv5.asm \
- vp8_packtokens_mbrow_armv5.asm \
- vp8_packtokens_partitions_armv5.asm \
- vp8_fast_quantize_b_armv6.asm \
- vp8_subtract_armv6.asm \
- fastquantizeb_neon.asm \
- subtract_neon.asm \
$(NULL)
VPX_ASFILES += \
- vp8_short_fdct4x4_armv6.asm \
- walsh_v6.asm \
- shortfdct_neon.asm \
- vp8_memcpy_neon.asm \
- vp8_shortwalsh4x4_neon.asm \
- $(VPX_ASM_ENC_OFFSETS_SRCS) \
$(NULL)
endif
@@ -411,14 +443,14 @@ endif
HOST_PROGRAM = host_obj_int_extract$(HOST_BIN_SUFFIX)
-CSRCS += asm_com_offsets.c
+CSRCS += vpx_scale_asm_offsets.c
-GARBAGE += asm_com_offsets.$(OBJ_SUFFIX) asm_com_offsets.asm
+GARBAGE += vpx_scale_asm_offsets.$(OBJ_SUFFIX) vpx_scale_asm_offsets.asm
ifdef MOZ_VP8_ENCODER
-CSRCS += asm_enc_offsets.c
+CSRCS += vp8_asm_enc_offsets.c
-GARBAGE += asm_enc_offsets.$(OBJ_SUFFIX) asm_enc_offsets.asm
+GARBAGE += vp8_asm_enc_offsets.$(OBJ_SUFFIX) vp8_asm_enc_offsets.asm
endif
else
@@ -426,31 +458,31 @@ else
# We can extract the asm offsets directly from generated assembly using inline
# asm. This is the preferred method.
-asm_com_offsets.s: CFLAGS += -DINLINE_ASM
+vpx_scale_asm_offsets.s: CFLAGS += -DINLINE_ASM
OFFSET_PATTERN := '^[a-zA-Z0-9_]* EQU'
-asm_com_offsets.asm: asm_com_offsets.s
+vpx_scale_asm_offsets.asm: vpx_scale_asm_offsets.s
grep $(OFFSET_PATTERN) $< | sed -e 's/[$$\#]//g' \
$(if $(VPX_AS_CONVERSION),| $(VPX_AS_CONVERSION)) > $@
-GARBAGE += asm_com_offsets.s asm_com_offsets.asm
+GARBAGE += vpx_scale_asm_offsets.s vpx_scale_asm_offsets.asm
ifdef MOZ_VP8_ENCODER
-asm_enc_offsets.s: CFLAGS += -DINLINE_ASM
+vp8_asm_enc_offsets.s: CFLAGS += -DINLINE_ASM
-asm_enc_offsets.asm: asm_enc_offsets.s
+vp8_asm_enc_offsets.asm: vp8_asm_enc_offsets.s
grep $(OFFSET_PATTERN) $< | sed -e 's/[$$\#]//g' \
$(if $(VPX_AS_CONVERSION),| $(VPX_AS_CONVERSION)) > $@
-GARBAGE += asm_enc_offsets.s asm_enc_offsets.asm
+GARBAGE += vp8_asm_enc_offsets.s vp8_asm_enc_offsets.asm
endif
endif
-EXTRA_MDDEPEND_FILES = asm_enc_offsets.s.pp asm_enc_offsets.$(OBJ_SUFFIX).pp asm_com_offsets.s.pp asm_com_offsets.$(OBJ_SUFFIX).pp
+EXTRA_MDDEPEND_FILES = vp8_asm_enc_offsets.s.pp vp8_asm_enc_offsets.$(OBJ_SUFFIX).pp vpx_scale_asm_offsets.s.pp vpx_scale_asm_offsets.$(OBJ_SUFFIX).pp
include $(topsrcdir)/config/rules.mk
@@ -460,44 +492,44 @@ ifdef VPX_NEED_OBJ_INT_EXTRACT
# only for MSVC
ifdef _MSC_VER
-asm_com_offsets.$(OBJ_SUFFIX): CFLAGS += -GL-
+vpx_scale_asm_offsets.$(OBJ_SUFFIX): CFLAGS += -GL-
endif
-asm_com_offsets.asm: asm_com_offsets.$(OBJ_SUFFIX) $(HOST_PROGRAM)
+vpx_scale_asm_offsets.asm: vpx_scale_asm_offsets.$(OBJ_SUFFIX) $(HOST_PROGRAM)
./$(HOST_PROGRAM) $(VPX_OIE_FORMAT) $< \
$(if $(VPX_AS_CONVERSION),| $(VPX_AS_CONVERSION)) > $@
# Filter out this object, because we don't want to link against it.
# It was generated solely so it could be parsed by obj_int_extract.
-OBJS := $(filter-out asm_com_offsets.$(OBJ_SUFFIX),$(OBJS))
+OBJS := $(filter-out vpx_scale_asm_offsets.$(OBJ_SUFFIX),$(OBJS))
ifdef MOZ_VP8_ENCODER
ifdef _MSC_VER
-asm_enc_offsets.$(OBJ_SUFFIX): CFLAGS += -GL-
+vp8_asm_enc_offsets.$(OBJ_SUFFIX): CFLAGS += -GL-
endif
-asm_enc_offsets.asm: asm_enc_offsets.$(OBJ_SUFFIX) $(HOST_PROGRAM)
+vp8_asm_enc_offsets.asm: vp8_asm_enc_offsets.$(OBJ_SUFFIX) $(HOST_PROGRAM)
./$(HOST_PROGRAM) $(VPX_OIE_FORMAT) $< \
$(if $(VPX_AS_CONVERSION),| $(VPX_AS_CONVERSION)) > $@
# Filter out this object, because we don't want to link against it.
# It was generated solely so it could be parsed by obj_int_extract.
-OBJS := $(filter-out asm_enc_offsets.$(OBJ_SUFFIX),$(OBJS))
+OBJS := $(filter-out vp8_asm_enc_offsets.$(OBJ_SUFFIX),$(OBJS))
endif
endif
# These dependencies are not generated automatically, so do it manually.
ifdef VPX_AS_CONVERSION
-$(addsuffix .$(OBJ_SUFFIX), $(VPX_ASM_COM_OFFSETS_SRCS)): asm_com_offsets.asm
+$(addsuffix .$(OBJ_SUFFIX), $(VPX_ASM_COM_OFFSETS_SRCS)): vpx_scale_asm_offsets.asm
ifdef MOZ_VP8_ENCODER
-$(addsuffix .$(OBJ_SUFFIX), $(VPX_ASM_ENC_OFFSETS_SRCS)): asm_enc_offsets.asm
+$(addsuffix .$(OBJ_SUFFIX), $(VPX_ASM_ENC_OFFSETS_SRCS)): vp8_asm_enc_offsets.asm
endif
else
-$(patsubst %.$(ASM_SUFFIX),%.$(OBJ_SUFFIX), $(VPX_ASM_COM_OFFSETS_SRCS)): asm_com_offsets.asm
+$(patsubst %.$(ASM_SUFFIX),%.$(OBJ_SUFFIX), $(VPX_ASM_COM_OFFSETS_SRCS)): vpx_scale_asm_offsets.asm
ifdef MOZ_VP8_ENCODER
-$(patsubst %.$(ASM_SUFFIX),%.$(OBJ_SUFFIX), $(VPX_ASM_ENC_OFFSETS_SRCS)): asm_enc_offsets.asm
+$(patsubst %.$(ASM_SUFFIX),%.$(OBJ_SUFFIX), $(VPX_ASM_ENC_OFFSETS_SRCS)): vp8_asm_enc_offsets.asm
endif
endif
diff --git a/media/libvpx/moz.build b/media/libvpx/moz.build
index 96222817d..716fc20e8 100644
--- a/media/libvpx/moz.build
+++ b/media/libvpx/moz.build
@@ -7,28 +7,22 @@
MODULE = 'vpx'
EXPORTS.vpx += [
- 'arm.h',
- 'mem.h',
- 'scale_mode.h',
- 'vp8.h',
- 'vp8cx.h',
- 'vp8dx.h',
- 'vp8e.h',
- 'vpx_codec.h',
- 'vpx_codec_impl_bottom.h',
- 'vpx_codec_impl_top.h',
- 'vpx_decoder.h',
- 'vpx_decoder_compat.h',
- 'vpx_encoder.h',
- 'vpx_image.h',
- 'vpx_integer.h',
- 'vpx_mem.h',
- 'vpx_mem_intrnl.h',
- 'vpx_timer.h',
- 'vpxscale.h',
- 'x86.h',
- 'yv12config.h',
- 'yv12extend.h',
+ 'vpx/vp8.h',
+ 'vpx/vp8cx.h',
+ 'vpx/vp8dx.h',
+ 'vpx/vpx_codec.h',
+ 'vpx/vpx_decoder.h',
+ 'vpx/vpx_encoder.h',
+ 'vpx/vpx_image.h',
+ 'vpx/vpx_integer.h',
+ 'vpx_mem/include/vpx_mem_intrnl.h',
+ 'vpx_mem/vpx_mem.h',
+ 'vpx_ports/arm.h',
+ 'vpx_ports/mem.h',
+ 'vpx_ports/vpx_timer.h',
+ 'vpx_ports/x86.h',
+ 'vpx_scale/vpx_scale.h',
+ 'vpx_scale/yv12config.h',
]
if CONFIG['VPX_NEED_OBJ_INT_EXTRACT']: