From c95c9a048f3283afb2e412b10085d4f7c19e1412 Mon Sep 17 00:00:00 2001 From: xiangmingzhu Date: Wed, 30 Apr 2014 15:48:07 +0800 Subject: Cisco optimization for x86 & fixed point 1. Only for fixed point on x86 platform (32bit and 64bit, uses SIMD intrinsics up to SSE4.2) 2. Use "configure --enable-fixed-point --enable-intrinsics" to enable optimization, default is disabled. 3. Official test cases are verified and passed. Signed-off-by: Timothy B. Terriberry --- Makefile.am | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'Makefile.am') diff --git a/Makefile.am b/Makefile.am index fac7651f..bcfeb20b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -18,6 +18,9 @@ include opus_sources.mk if FIXED_POINT SILK_SOURCES += $(SILK_SOURCES_FIXED) +if HAVE_SSE4_1 +SILK_SOURCES += $(SILK_SOURCES_SSE4_1) $(SILK_SOURCES_FIXED_SSE4_1) +endif else SILK_SOURCES += $(SILK_SOURCES_FLOAT) endif @@ -27,6 +30,14 @@ else OPUS_SOURCES += $(OPUS_SOURCES_FLOAT) endif +if HAVE_SSE4_1 +CELT_SOURCES += $(CELT_SOURCES_SSE) $(CELT_SOURCES_SSE4_1) +else +if HAVE_SSE2 +CELT_SOURCES += $(CELT_SOURCES_SSE) +endif +endif + if CPU_ARM CELT_SOURCES += $(CELT_SOURCES_ARM) SILK_SOURCES += $(SILK_SOURCES_ARM) @@ -229,3 +240,13 @@ $(CELT_SOURCES_ARM_ASM:%.s=%-gnu.S): $(top_srcdir)/celt/arm/arm2gnu.pl # For autoconf-modified sources (e.g., armopts.s) %-gnu.S: %.s $(top_srcdir)/celt/arm/arm2gnu.pl @ARM2GNU_PARAMS@ < $< > $@ + +SSE_OBJ = %_sse.o %_sse.lo %test_unit_mathops.o %test_unit_rotation.o + +if HAVE_SSE4_1 +$(SSE_OBJ): CFLAGS += -msse4.1 +else +if HAVE_SSE2 +$(SSE_OBJ): CFLAGS += -msse2 +endif +endif -- cgit v1.2.3