Brad Smith
2bf588f273
libavutil/ppc: Make use of getauxval() and elf_aux_info() on ppc
...
Modern Linux has getauxval() and FreeBSD/OpenBSD ppc have elf_aux_info().
Signed-off-by: Brad Smith <brad@comstyle.com>
2 months ago
Brad Smith
115c96b9bd
avutil/ppc/cpu: Also use the machdep.altivec sysctl on NetBSD
...
Use the machdep.altivec sysctl on NetBSD for AltiVec detection
as is done with OpenBSD.
Signed-off-by: Brad Smith <brad@comstyle.com>
6 months ago
Sean McGovern
d799ad2404
libavutil/ppc/cpu.c: check that AT_HWCAP2 is defined
...
It was not introduced until glibc 2.18.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
1 year ago
Brad Smith
beaf172d75
avutil/ppc/cpu: Use proper header for OpenBSD PPC CPU detection
...
Use the proper header for PPC CPU detection code. sys/param.h includes
sys/types, but sys/types.h is the more appropriate header to be used
here.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years ago
Lauri Kasanen
fc6022e108
avutil/ppc/cpu: Fix power8 linux detection
...
The existing code was in no released kernel that I can see. The corrected code
was added in 3.9.
6 years ago
Diego Biurrun
4cf84e254a
Drop some unnecessary config.h #includes
7 years ago
James Almer
3d828c9fd5
cpu: split flag checks per arch in av_cpu_max_align()
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
7 years ago
James Almer
3b345d389b
avutil/cpu: split flag checks per arch in av_cpu_max_align()
...
Signed-off-by: James Almer <jamrial@gmail.com>
7 years ago
Diego Biurrun
d76479c502
ppc: Drop support for Apple GCC
...
Apple GCC has not been a thing anymore on PowerPC since many years.
8 years ago
Diego Biurrun
05a603a94e
ppc: Merge types_altivec.h into util_altivec.h
...
There is no point in keeping the two separate.
8 years ago
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