Michael Niedermayer
06b49375a2
avutil/ppc/cpu: add include avassert.h
...
fix build failure on ppc64
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
cdc0087969
avutil/ppc/cpu: Our code assumes vsx implies altivec, thus assert this
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
9806cca1eb
avutil/ppc/cpu: Remove !ARCH_PPC64 check for mfspr, the code should now support ppc64
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
1046b6b093
avutil/ppc/float_dsp_init: Disable duplicate functions
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
47cc1a2bf1
avutil/ppc/cpu: Check if unistd.h is available before including it
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Luca Barbato
d0bf20a4f2
ppc: vsx: Implement diff_pixels and get_pixels
...
Use a macro to abstract the endianness.
10 years ago
Luca Barbato
eecd29b3fd
ppc: vsx: Implement float_dsp
10 years ago
Luca Barbato
7d07ee5a9b
ppc: cpu: Add support for VSX and POWER8 extensions
10 years ago
Luca Barbato
da60b99a88
ppc: Restrict some Altivec implementations to Big Endian
...
In Little Endian the vec_ld/vec_st operations work as
expected only for byte-vectors.
10 years ago
Luca Barbato
3058872c29
ppc: Clarify and extend the cpuid check
...
Add POWER entries.
10 years ago
Luca Barbato
baa94563fe
ppc: linux: Check altivec using the auxv
...
Should prevent trying to use altivec when it is disabled by the kernel.
10 years ago
Luca Barbato
72cebae0d9
ppc: avutil: Use the abriged vector types
10 years ago
Luca Barbato
254eb5b6fa
ppc: avutil: Drop a potentially dangerous workaround
...
The compiler is free to optimize such expressions in any sort of way.
10 years ago
Michael Niedermayer
9564375dee
avutil/ppc/intreadwrite: remove AV_??64 overriding code
...
The code has undefined behavior and makes no difference when optimizations
are enabled.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
5bf4cd8e5b
avutil/ppc/util_altivec: add () to VEC_SPLAT16 macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Rong Yan
22e557917d
libavutil/ppc/util_altivec.h : fix load_with_perm_vec() add marcos vcswapi2s() vcswapc() VEC_SPLAT16() VEC_SLD16() for POWER LE
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
ddac3053cd
avutil/ppc/util_altivec: add () to VEC_LD macro arguments
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
1a1a98f644
avutil/ppc/util_altivec: make src pointers const, fix warnings
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Rong Yan
6a6c16cbcc
libavutil/ppc/util_altivec.h : fix unaligned_load() vec_unaligned_load() add macros VEC_LD() VEC_MERGEH() VEC_MERGEL() VEC_ST() for POWER LE
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Rong Yan
8e8db16a2c
avutil/ppc/float_dsp_altivec: ppc: Fix bug in ff_vector_fmul_add_altivec() affecting little endian environments on POWER8
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Luca Barbato
c19a49e565
ppc: Support little endian intreadwrite
10 years ago
Michael Niedermayer
d37c620c84
avutil/ppc/intreadwrite: try to fix intreadwrite for ppc64le
...
Untested due to lack of hardware
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Diego Biurrun
b5aa485513
ppc: Move vec_unaligned_load macro to util_altivec
...
This allows reusing it from multiple files.
11 years ago
Diego Biurrun
593886b5dd
ppc: util_altivec: Drop unused macros
11 years ago
Diego Biurrun
f61bece684
ppc: Add and use convenience macro to check for AltiVec availability
11 years ago
Diego Biurrun
b78b10c4b7
avutil: Move internal CPU detection function declarations to private header
11 years ago
Diego Biurrun
3ac7fa81b2
Consistently use "cpu_flags" as variable/parameter name for CPU flags
11 years ago
Martin Storsjö
ef5b70affc
configure: Check for support for labels in the inline assembly
...
Use this for enabling the ppc timer.h implementation only on
assemblers that support labels in the inline assembly.
Signed-off-by: Martin Storsjö <martin@martin.st>
12 years ago
Carl Eugen Hoyos
6258e86d4b
Drop local lable from ppc asm timer.
...
The aix assembler does not support local lables.
12 years ago
Diego Biurrun
1fda184a85
avutil: Add av_cold attributes to init functions missing them
12 years ago
Diego Biurrun
f5eecee865
ppc: util_altivec: Surround AltiVec-related code by appropriate ifdefs
...
This prevents non-AltiVec-enabled compilers from choking.
12 years ago
Diego Biurrun
b6649ab503
cosmetics: Remove unnecessary extern keywords from function declarations
12 years ago
Ronald S. Bultje
42d3246948
floatdsp: move vector_fmul_reverse from dsputil to avfloatdsp.
...
Now, nellymoserenc and aacenc no longer depends on dsputil. Independent
of this patch, wmaprodec also does not depend on dsputil, so I removed
it from there also.
12 years ago
Ronald S. Bultje
55aa03b9f8
floatdsp: move vector_fmul_add from dsputil to avfloatdsp.
12 years ago
Justin Ruggles
e034cc6c60
lavc: Move vector_fmul_window to AVFloatDSPContext
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
12 years ago
Michael Niedermayer
874b9dcc4b
ppc/cpu: make linux 32bit specific altivec detection depend on __linux__
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Justin Ruggles
3b81a18ba3
float_dsp: ppc: add a separate header for Altivec function prototypes
...
Also include config.h so that HAVE_ALTIVEC will be defined.
Fixes compilation on PPC with Altivec enabled.
13 years ago
Justin Ruggles
d5a7229ba4
Add a float DSP framework to libavutil
...
Move vector_fmul() from DSPContext to AVFloatDSPContext.
13 years ago
Justin Ruggles
98db4e2a4e
PPC: Move types_altivec.h and util_altivec.h from libavcodec to libavutil
...
This will allow for easier implementation of Altivec functions in libraries
other than libavcodec.
13 years ago
Diego Biurrun
baaab6069a
build: Move all arch OBJS declarations into arch subdirectory Makefiles.
13 years ago
Diego Biurrun
046f081b46
configure: Do not unconditionally add -D_POSIX_C_SOURCE to CPPFLAGS.
...
Adding _POSIX_C_SOURCE to CPPFLAGS globally produces all sorts of problems
since it causes certain system functions to be hidden on some (BSD) systems.
The solution is to only add the flag on systems that really require it, i.e.
glibc-based ones.
This change makes BSD systems compile out-of-the-box without the need for
adding specific flags manually. It also allows dropping a number of flags
set manually on a file-per-file basis, but were only present to work around
breakage introduced by the presence of _POSIX_C_SOURCE.
Also add _XOPEN_SOURCE to CPPFLAGS for glibc systems. We use XSI extensions
in several places already, so it is preferable to define it globally instead
of littering source files with individual #defines only needed for glibc.
14 years ago
Brad
3028b6ede6
os: fix OpenBSD/PowerPC compilation
...
When attempting to re-enable the AltiVec support it was noticed
that we need to undefine _POSIX_C_SOURCE to appease the headers
for ff_get_cpu_flags_ppc() to be able to compile.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
14 years ago
Mans Rullgard
2912e87a6c
Replace FFmpeg with Libav in licence headers
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Janne Grunau
2c3589bfda
consolidate .gitignore patters into a single file
...
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
14 years ago
Janne Grunau
348b8218f7
convert svn:ignore properties to .gitignore files
...
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
14 years ago
Måns Rullgård
9275438a19
Clean up av_get_cpu_flag()
...
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
14 years ago
Stefano Sabatini
c6c98d0897
Move mm_support() from libavcodec to libavutil, make it a public
...
function and rename it to av_get_cpu_flags().
Originally committed as revision 25076 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Måns Rullgård
bdd19e29df
Mark all intreadwrite functions av_always_inline
...
Originally committed as revision 21278 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Måns Rullgård
b6ec1f47c7
PPC: fix asm operand constraints in AV_RL64
...
The target register of first word loaded must be marked early-clobber.
Originally committed as revision 19536 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
Måns Rullgård
cc078b5d8f
PPC: check for x-form asm constraint support
...
Originally committed as revision 18606 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago