Commit Graph

401 Commits

Author SHA1 Message Date
James Zern
21da45e570 Android.mk: fix *_rtcd.h deps for armeabi-v7a
strip '.neon' so *_rtcd.h depends on the correct file

Change-Id: Iecdbbc34c9ce5c6d0a4b466332d52f4e6a0cb128
2015-07-30 13:27:30 -07:00
James Zern
e3365c894a Android.mk: add a dep on vpx_config.asm for x86_64
Change-Id: I8b4db93f754607aab64351745bd102ab238d9501
2015-07-29 15:38:43 -07:00
James Zern
bd863314d0 Merge "build/make/Android.mk: support TARGET_ARCH_ABI=x86_64" 2015-07-28 21:50:35 +00:00
hui su
7971846a5e Move intra prediction functions from vp9/common/ to vpx_dsp/
Change-Id: I64edc26cf4aab050c83f2d393df6250628ad43b8
2015-07-27 13:38:16 -07:00
James Zern
5da87e84d5 build/make/Android.mk: support TARGET_ARCH_ABI=x86_64
requires r10e or newer:

Android NDK, Revision 10e (May 2015)
...
Other bug fixes:
...
  - Fixed .asm support for ABI x86_64.

Change-Id: I51ec9a5f77c982b7412d922e896348a83ae2d7d6
2015-07-24 19:36:39 -07:00
James Zern
9f0383c66f Merge "build: add *test-no-data-check targets" 2015-06-24 06:20:38 +00:00
Brion Vibber
78637b6136 Fix building with iOS 9 beta SDK
configure.sh was setting some Mac OS X options for iOS targets, which
confuses the iOS 9 beta SDK in Xcode 7 when linking libraries.

Additionally, old armv6 media extensions were being enabled on iOS
when they're not needed (we always have Neon since iOS 6). These
broke on iOS 9 SDK which no longer assembles those instructions.

Change-Id: I4e4d2722392ead3382ce96289c03ef1e489799d6
2015-06-22 12:09:09 -07:00
James Zern
557ae511cb build: add *test-no-data-check targets
skips testdata verification; useful with slow media or if the data was
retrieved via a separate call to testdata

Change-Id: Ifd97892cee6c04b0111874cc8071675e90ec852b
2015-06-19 16:50:26 -07:00
James Zern
0f8ee6eb4b test/android/Android.mk: fix build w/ENABLE_SHARED=0
add a dependency on *_rtcd.h to ensure they're generated before
attempting to build the test files

Change-Id: Ibbbd1f6ea77912bfd297129e7c83b9a80923ea12
2015-06-09 19:27:20 -07:00
James Zern
5908e0b664 vs/armv7: use -oldit armasm flag
this quiets warnings from armv6 code [1].
from msdn [2]:
-oldit
Generate ARMv7-style IT blocks. By default, ARMv8-compatible IT blocks
are generated.

a new configuration would be needed for armv8 in any case as the neon
assembly is being built, so removing this should be harmless

[1] A4509: This form of conditional instruction is deprecated
[2] https://msdn.microsoft.com/en-us/library/hh873189.aspx

Change-Id: I4c3b838b52a87401c6daecd83d22ab148ed7c5d9
2015-06-05 15:21:10 -07:00
KO Myung-Hun
6d52fe2e71 Support building shared libraries on OS/2
Change-Id: I5750db0504cb69ead52f9f44bf583e693bffbb7e
2015-06-03 13:48:34 +09:00
Tom Finegan
3007db0b45 Avoid failed include when Makefile is processed with no target.
Basically just a warning, but disconcerting nonetheless. Removes this
output from the build:
Makefile:59: -x86_64-darwin13-gcc.mk: No such file or directory

Change-Id: Ibb379506352b2f613ef4a7b1ac47e9c95d0d1580
2015-05-13 11:16:09 -07:00
Tom Finegan
3d7063d4b0 Remove claims of universal target support from the build system.
These targets no longer build (PPC support was removed from
libvpx). Remove the dead code and misleading help output.

BUG=https://code.google.com/p/webm/issues/detail?id=997

Change-Id: Ib35614806adeae970f3821da0d8dbcc54ab8d868
2015-05-12 19:16:49 -07:00
Frank Galligan
a4bcc8c318 Fix ndk build.
Android.mk should depend on vpx_dsp_rtcd.h

Change-Id: Ib614af195a9574fd849c28b695f9f4b3b2bd125c
2015-05-07 18:22:29 -07:00
Johann
802e1d84cc Remove only remaining uses of 'fast_unaligned'
Use memcpy instead of casting.

Change-Id: Ieca725cc628883985bde23c7d742af8781c5dbb5
2015-05-07 14:39:37 -07:00
James Zern
278593c9a9 Merge "Android.mk: remove unnecessary -llog reference" 2015-04-16 12:00:11 -07:00
Parag Salasakar
3701dcc5c1 Merge "mips msa configuration fix" 2015-04-15 21:17:13 -07:00
James Zern
e3bf76f9ec Android.mk: remove unnecessary -llog reference
nothing is using android/log.h currently; also quiets a warning when
building a static lib:
Android NDK: WARNING:libvpx/build/make/Android.mk:vpx: LOCAL_LDLIBS is
always ignored for static libraries

Change-Id: I1469a5d6fca4f7338a4a82e26a03e60fc91d92ca
2015-04-15 20:54:04 -07:00
Parag Salasakar
4009b63c42 mips msa configuration fix
for big endian disable msa
removed -flax-vector-conversion flag
disable runtime_cpu_detect feature if enabled

Change-Id: Icd5130b733f2ddcdb94ffb6e4d170e6ca0f9832b
2015-04-15 11:56:42 +05:30
James Zern
b815f3a977 Android.mk: add a flag to control shared/static lib
ndk-build ENABLE_SHARED=1 ...

Change-Id: Idd64804b165d0d4bbfb0b242d6c4eee5e828dab4
2015-04-08 21:03:36 -07:00
Johann
79bd071373 Merge branch 'indianrunnerduck'
* indianrunnerduck:
  Update CHANGELOG for v1.4.0 (Indian Runner Duck) release
  vp9: fix high-bitdepth NEON build
  Fix use of scaling in joint motion search
  Prepare Release Candidate for libvpx v1.4.0
  vp8cx.h: vpx/vpx_encoder.h -> ./vpx_encoder.h

Change-Id: Ib2eee50f02e12623aae478871cb9150604bb2ac2
2015-04-03 12:53:45 -07:00
Johann
bc98e93b53 Remove PPC build support
There are no functional optimizations for AltiVec/PPC

Change-Id: I6877a7a9739017fe36fc769be22679c65ea99976
2015-04-02 09:13:59 -07:00
Parag Salasakar
84ec68d21a mips msa configuration patch for MIPS SIMD Arch (MSA) P5600 and I6400
For P5600:
CROSS=$MTI/bin/mips-mti-linux-gnu- CFLAGS='-EL' CXXFLAGS='-EL' LDFLAGS='-EL'\
 ../configure --target=mips32-linux-gcc --cpu=p5600 --enable-msa

For I6400:
CROSS=$IMG/bin/mips-img-linux-gnu- CFLAGS='-EL' CXXFLAGS='-EL' LDFLAGS='-EL'\
 ../configure --target=mips64-linux-gcc --cpu=i6400 --enable-msa

Change-Id: Id25f721ea1f1991d5116e04dba713aebd7378f05
2015-03-24 15:18:38 -07:00
Johann
bb5a39c1a7 Prepare Release Candidate for libvpx v1.4.0
Change-Id: I9ffd30c88a5e40c555bde1f5efcf8a3c9ffcf5ff
2015-03-23 23:54:52 -07:00
Johann
08acc349b3 Remove last remnants of obj_int_extract
Change-Id: Icc7da6027763b5ed7cbfe70ffe271103ead59fe1
2015-03-18 11:06:53 -07:00
James Zern
aaccf6566d configure: add --(disable|enable)-dependency-tracking
defaults to enabled. when disabled skips dependency file (.d) generation
allowing for faster one-time builds.

Change-Id: I2d7d7f905f1663315b8eb2b2e81fffb6fcb15829
2015-02-09 16:38:49 -08:00
James Zern
769fe6e2b3 configure: enable x86inc for all intel platforms
there are no known issues since:
10d5e09 Fix issues in 32bit PIC enabled build

related issues: #808, #924

Change-Id: I80454f95fe6b4ce630fdd434d740ce8b0d42951b
2015-02-04 19:16:12 -08:00
Johann
852829c315 Fail when only an old nasm is found
Apple ships version 0.98 of nasm through at least XCode 6. It is
incompatible with the assembly in libvpx.

https://code.google.com/p/webm/issues/detail?id=772

Change-Id: I33245a76f50a8224fe6fafa3cce9991f953fdcc8
2015-02-03 08:55:00 -08:00
James Zern
d2493313ae Merge "configure: echo --(disable|enable)-* cmdline options" 2015-01-30 13:16:02 -08:00
Yunqing Wang
cc7fac39d5 Enable use_x86inc for 32bit pic enabled Darwin target
The previous patch "Fix issues in 32bit PIC enabled build" fixed
the x86inc.asm for macho32. Now we can enable use_x86inc while
building libvpx for 32bit pic enabled Darwin target, which makes
the encoder a lot faster(>2X) in this case by turning on the
existing optimizations.

Change-Id: I5f5c7add428d73f50c935c48d0a70aed2b1eb7af
2015-01-29 16:47:06 -08:00
James Zern
ef7f33b93b configure: echo --(disable|enable)-* cmdline options
gives a better summary of what is enabled / disabled outside of the
automatic toolchain options.

fixes issue #936

Change-Id: I1bf27593a5512713aab1473cb606c58cf3084d62
2015-01-28 20:30:51 -08:00
Lawrence Velázquez
ad314c1689 Fix discovery of Darwin SDKs
The current method doesn't work with Xcode 4 and up, since they no
longer have a $DEVELOPER_DIR/SDKs directory. Using xcrun and xcodebuild
works all the way back to Xcode 3 on OS X 10.6 Snow Leopard, if not
earlier.

Change-Id: I7126f2fb4a8f1d6e46f921e70bbd090f00ce3d36
2015-01-26 21:44:02 -05:00
Tom Finegan
e7ef8ecefd Merge "iosbuild.sh: Increase build speed." 2015-01-26 15:10:18 -08:00
James Zern
880ca0ecad Merge "workaround stack bashing by asm on 32-bit OpenBSD" 2015-01-22 20:04:07 -08:00
Lawrence Velázquez
4fe4c2834f Add libvpx build targets for OS X 10.10 Yosemite.
Change-Id: I5baa4405e0b52fd3b6f312bd2dc94b19e6ff3da7
2015-01-22 15:33:53 -08:00
Tom Finegan
1387f4dedf iosbuild.sh: Increase build speed.
Disable more stuff to speed up the build, and log default configure
args in verbose mode.

Change-Id: I40e55fc5e8d2bff0262e1d6bd4a40ee2c10d2b6d
2015-01-22 15:19:07 -08:00
James Zern
0373dbf5a5 workaround stack bashing by asm on 32-bit OpenBSD
like Darwin, disable x86inc with 32-bit PIC/shared library builds;
avoids stack smashing done by vp9_subpixel_*

workaround for issue #808

Change-Id: I3f2f16bd91822c8e8dad0242b5dcfb0e621aea97
2015-01-14 23:25:02 -08:00
James Zern
2a64ed9b70 Merge "rtcd: handle armv7s architecture" 2014-12-16 12:22:55 -08:00
James Zern
0e94f3cf06 iosbuild.sh: allow for out of tree builds
Change-Id: Id89ed4a4153dd6e02380c4b8ae8ad6c1f8d21944
2014-12-15 18:41:46 -08:00
James Zern
6ea881cc12 rtcd: handle armv7s architecture
quiets build warnings about implicit (armv6) function declarations

Change-Id: I896a5ef3e367e5bb92777a60d34003eb3a040997
2014-12-15 18:39:51 -08:00
James Zern
d356dce759 iosbuild: add success/failure output
Change-Id: I84492f68752321f0266141666e2672ed2da5f509
2014-12-12 19:45:15 -08:00
Tom Finegan
53a0ed84ac Merge "iosbuild.sh: Add targets argument." 2014-12-12 16:14:12 -08:00
Tom Finegan
bc74a2f33b iosbuild.sh: Add targets argument.
Allows override of default target list. Also added missing usage info
for --extra-configure-args, and removed last vestiges of armv6 support.

Change-Id: Ic0f14fffa0cbaea1bed371d38ff65e035bbe3273
2014-12-12 13:53:58 -08:00
James Zern
5fe9a5c649 don't set INLINE to 'always_inline'
INLINE is used quite widely in vp9, this change improves performance
1-2% on most modern platforms.

Change-Id: I8a9974aab89fa588ea4923cc7eaf6199e344a528
2014-12-12 11:18:00 -08:00
Johann
e577098079 Disable neon assembly when neon is disabled
Change-Id: Idde266cd7287bb6bee016c90efeafa67550f94c6
2014-12-09 10:46:32 -08:00
Dim Temp
134384dd80 Extend x32 check by also checking for __x86_64__.
Currently, the configure script checks for x32 by testing just the
__ILP32__ define.  However, on "plain" i386, __ILP32__ can also be
defined, for example by clang 3.5.0 and higher.  (That gcc does not
define it there, is another issue, but not for this tracker.)

Therefore, extend the check by also checking for __x86_64__, which will
also be defined for x32.

BUG=887

Change-Id: I90ac1d6843caff0416e1dd360c0be3dbaa85c2ae
2014-12-03 13:51:58 -08:00
Johann
661802b61d Remove default cortex-a8 tuning.
Probably not even the dominant platform the library is being built for.
Add --cpu= option description to help. The option already exists.

Don't allow passing just --cpu as a no-op.

BUG=826

Change-Id: Iaa3f4f693ec78b18927b159b480daafeba0549c0
2014-12-01 11:08:59 -08:00
Johann
7efb302af9 Indent build/make/configure.sh
Whitespace changes only.

Change-Id: I92eef49db1798bc69ec003fca69995fea560d6fa
2014-11-21 17:32:08 -08:00
Johann
eafa0d0ce7 Remove armv5te target
All the assembly code has been removed, the tests no longer check for
the target, and android and chrome do not use the targets.

Change-Id: I193993f7b2b0bd6478453402f573ce3606e04e8d
2014-11-20 17:08:11 -08:00
Johann
6eec73a747 Remove asm offset dependencies
The obj_int_extract code is no longer worth maintaining. It creates
significant issues when adapting for different build systems and no
longer offers as significant of a performance benefit due to
improvements in intrinsics.

Source files will remain until the various third-party builds are updated.

The neon fast quantizer has been moved to intrinsics. The armv6 version
has been removed because so few remaining targets require it.

Compilers and processors have improved significantly since the
pack_tokens code was written. The assembly is no longer faster than the
C code.

pack_tokens were the only optimizations for the armv5te targets so the targets
will be removed after the test infrastructure has been updated.

BUG=710

Change-Id: Ic785b167cd9f95eeff31c7c76b7b736c07fb30eb
2014-11-06 16:00:01 -08:00