summaryrefslogtreecommitdiff
path: root/libavutil/arm/cpu.c
Commit message (Collapse)AuthorAge
* avutil/cpu: split flag checks per arch in av_cpu_max_align()James Almer2017-09-27
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* Merge commit 'e2710e790c09e49e86baa58c6063af0097cc8cb0'Hendrik Leppkes2016-01-02
|\ | | | | | | | | | | | | * commit 'e2710e790c09e49e86baa58c6063af0097cc8cb0': arm: add a cpu flag for the VFPv2 vector mode Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * arm: add a cpu flag for the VFPv2 vector modeJanne Grunau2015-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The vector mode was deprecated in ARMv7-A/VFPv3 and various cpu implementations do not support it in hardware. Vector mode code will depending the OS either be emulated in software or result in an illegal instruction on cpus which does not support it. This was not really problem in practice since NEON implementations of the same functions are preferred. It will however become a problem for checkasm which tests every cpu flag separately. Since this is a cpu feature newer cpu do not support anymore the behaviour of this flag differs from the other flags. It can be only activated by runtime cpu feature selection.
* | arm: only enable setend on ARMv6Andreas Cadhalpun2015-06-05
| | | | | | | | | | | | | | Without this check it causes SIGILL crashes on ARMv5. Reviewed-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
* | avutil: turn arm setend into a cpuflagMichael Niedermayer2014-08-13
| | | | | | | | | | | | | | | | | | | | | | this allows disabling and enabling it it also prevents crashes if vfpv3 and neon are disabled which previously would have enabled the flag And last but not least one can enable setend on cpus like cortex-a8 where its fast but disabled by default Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '7b0c7c9163fe3dd0081696befde28617119d2590'Michael Niedermayer2014-06-28
|\| | | | | | | | | | | | | * commit '7b0c7c9163fe3dd0081696befde28617119d2590': arm: Detect 32 bit cpu features on ARMv8 when running on a 64 bit kernel Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * arm: Detect 32 bit cpu features on ARMv8 when running on a 64 bit kernelMartin Storsjö2014-06-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When running on a 64 bit kernel, /proc/cpuinfo lists different optional features than on 32 bit kernels (because some of them are mandatory in the 64 bit implemenations). The kernel does list the old features properly if they are queried via /proc/self/auxv though - however this file is not always readable (e.g. on most android systems). The getauxval function could also provide the same info as /proc/self/auxv even if this file isn't readable, but this function is not always available (and thus would need to be loaded with dlsym for compatibility with older android versions). The android cpufeatures library does this slightly differently, by assuming that these are available if the "CPU architecture" line is >= 8, see [1] for details. It has been suggested to include the old, non-optional features in /proc/cpuinfo as well, but that suggested patch never was merged. See [2] for the discussion around this suggestion. [1] https://android-review.googlesource.com/91380 [2] http://marc.info/?l=linux-arm-kernel&m=139087240101974 Signed-off-by: Martin Storsjö <martin@martin.st>
* | Reinstate proper FFmpeg license for all files.Thilo Borgmann2013-08-30
|/
* avutil: Move internal CPU detection function declarations to private headerDiego Biurrun2013-08-28
|
* arm: Fall back to runtime cpu feature detection via /proc/cpuinfoMartin Storsjö2013-02-11
| | | | | | | | | | | | | | | | On recent android versions, /proc/self/auxw is unreadable (unless the process is running running under the shell uid or in debuggable mode, which makes it hard to notice). See http://b.android.com/43055 and https://android-review.googlesource.com/51271 for more information about the issue. This makes sure e.g. neon optimizations are enabled at runtime in android apps even when built in release mode, if configured to use the runtime detection. CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* arm: detect cpu features at runtime on LinuxMans Rullgard2012-12-07
| | | | | | | | This allows compiling optimised functions for features not enabled in the core build and selecting these at runtime if the system has the necessary support. Signed-off-by: Mans Rullgard <mans@mansr.com>
* arm: rename ARMVFP config symbol to VFPMans Rullgard2012-12-07
| | | | | | | This is consistent with usual ARM nomenclature as well as with the VFPV3 and NEON symbols which both lack the ARM prefix. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ARM: allow runtime masking of CPU featuresMans Rullgard2012-04-22
| | | | | | | This allows masking CPU features with the -cpuflags avconv option which is useful for testing different optimisations without rebuilding. Signed-off-by: Mans Rullgard <mans@mansr.com>
* remove iwmmxt optimizationsJanne Grunau2012-03-12
| | | | | | The were broken since August of 2010 without anyone noticing until three weeks ago. Nobody cares about it anymore and hopefully Marvell will support NEON like in the PXA978 from now on.
* Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* Clean up av_get_cpu_flag()Måns Rullgård2010-09-09
Instead of defining functions in per-arch header files included by the main cpu.c, define them normally and call them from the generic one. Originally committed as revision 25084 to svn://svn.ffmpeg.org/ffmpeg/trunk