aboutsummaryrefslogtreecommitdiffstats
path: root/libavutil/x86/float_dsp_init.c
Commit message (Collapse)AuthorAgeFilesLines
* configure: Remove av_restrictAndreas Rheinhardt2024-03-151-4/+1
| | | | | | | | | All versions of MSVC that support C11 (namely >= v19.27) also support the restrict keyword, therefore av_restrict is no longer necessary since 75697836b1db3e0f0a3b7061be6be28d00c675a0. Reviewed-by: Martin Storsjö <martin@martin.st> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avutil/x86/float_dsp: add fma3 for scalarproductPaul B Mahol2022-09-131-0/+2
|
* avutil/x86/float_dsp: Remove obsolete 3dnowext functionAndreas Rheinhardt2022-06-221-5/+0
| | | | | | | | | | | x64 always has MMX, MMXEXT, SSE and SSE2 and this means that some functions for MMX, MMXEXT, SSE and 3dnow are always overridden by other functions (unless one e.g. explicitly disables SSE2). So given that the only systems which benefit from ff_vector_fmul_window_3dnowext are truely ancient 32bit AMD x86s it is removed. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* x86/float_dsp: add ff_vector_dmul_{sse2,avx}James Almer2018-09-141-0/+7
| | | | | | ~3x to 5x faster. Signed-off-by: James Almer <jamrial@gmail.com>
* x86/float_dsp: add ff_vector_fmul_reverse_avx2James Almer2017-04-111-0/+5
| | | | | | ~20% faster than AVX. Signed-off-by: James Almer <jamrial@gmail.com>
* x86/float_dsp: add ff_vector_dmac_scalar_{sse2,avx,fma3}James Almer2017-04-101-0/+10
|
* Merge commit '99434f4df81b6801b2b535d5b9143305595784f6'Clément Bœsch2017-03-301-1/+1
|\ | | | | | | | | | | | | * commit '99434f4df81b6801b2b535d5b9143305595784f6': float_dsp: Have implementation match function pointer prototype Merged-by: Clément Bœsch <cboesch@gopro.com>
| * float_dsp: Have implementation match function pointer prototypeDiego Biurrun2016-11-031-1/+1
| | | | | | | | | | libavutil/x86/float_dsp_init.c(144) : warning C4028: formal parameter 1 different from declaration libavutil/x86/float_dsp_init.c(144) : warning C4028: formal parameter 2 different from declaration
| * x86: check for AV_CPU_FLAG_AVXSLOW where usefulJames Almer2015-05-311-1/+1
| | | | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | x86: use the new helper macros where usefulJames Almer2016-02-141-1/+1
| | | | | | | | | | Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com>
* | x86: check for AV_CPU_FLAG_AVXSLOW where usefulJames Almer2015-06-011-2/+2
| | | | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | x86/float_dsp: port vector_fmul_window to yasmJames Almer2014-06-081-73/+8
| | | | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | x86/float_dsp: add ff_vector_{fmul_add, fmac_scalar}_fma3James Almer2014-03-131-0/+8
| | | | | | | | | | | | | | ~7% faster than AVX Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-07-181-6/+6
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Consistently use "cpu_flags" as variable/parameter name for CPU flags Conflicts: libavcodec/x86/dsputil_init.c libavcodec/x86/h264dsp_init.c libavcodec/x86/hpeldsp_init.c libavcodec/x86/motion_est.c libavcodec/x86/mpegvideo.c libavcodec/x86/proresdsp_init.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Consistently use "cpu_flags" as variable/parameter name for CPU flagsDiego Biurrun2013-07-181-6/+6
| |
* | Merge commit '1fda184a85178cfd7b98d9e308d18e1ded76a511'Michael Niedermayer2013-05-051-1/+2
|\| | | | | | | | | | | | | * commit '1fda184a85178cfd7b98d9e308d18e1ded76a511': avutil: Add av_cold attributes to init functions missing them Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avutil: Add av_cold attributes to init functions missing themDiego Biurrun2013-05-041-1/+2
| |
| * x86: float dsp: butterflies_float SSEChristophe Gisquet2013-05-031-0/+3
| | | | | | | | | | 97c -> 49c Some codecs could benefit from more unrolling, but AAC doesn't.
* | x86: float dsp: butterflies_float SSEChristophe Gisquet2013-04-171-0/+3
| | | | | | | | | | | | | | 97c -> 49c Some codecs could benefit from more unrolling, but AAC doesn't. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'b6649ab5037fb55f78c2606f3d23cea0867cdeaa'Michael Niedermayer2013-03-281-13/+13
|\| | | | | | | | | | | | | | | | | | | * commit 'b6649ab5037fb55f78c2606f3d23cea0867cdeaa': cosmetics: Remove unnecessary extern keywords from function declarations Conflicts: libswscale/x86/swscale.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cosmetics: Remove unnecessary extern keywords from function declarationsDiego Biurrun2013-03-271-13/+13
| |
* | Merge commit '73b704ac609d83e0be124589f24efd9b94947cf9'Michael Niedermayer2013-01-231-0/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '73b704ac609d83e0be124589f24efd9b94947cf9': arm: Add some missing header #includes floatdsp: move scalarproduct_float from dsputil to avfloatdsp. Conflicts: libavcodec/acelp_pitch_delay.c libavcodec/amrnbdec.c libavcodec/amrwbdec.c libavcodec/ra288.c libavcodec/x86/dsputil_mmx.c libavutil/x86/float_dsp.asm Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * floatdsp: move scalarproduct_float from dsputil to avfloatdsp.Ronald S. Bultje2013-01-221-0/+3
| | | | | | | | This makes the aac decoder and all voice codecs independent of dsputil.
* | Merge commit '42d324694883cdf1fff1612ac70fa403692a1ad4'Michael Niedermayer2013-01-231-0/+7
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '42d324694883cdf1fff1612ac70fa403692a1ad4': floatdsp: move vector_fmul_reverse from dsputil to avfloatdsp. Conflicts: libavcodec/arm/dsputil_init_vfp.c libavcodec/arm/dsputil_vfp.S libavcodec/dsputil.c libavcodec/ppc/float_altivec.c libavcodec/x86/dsputil.asm libavutil/x86/float_dsp.asm Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * floatdsp: move vector_fmul_reverse from dsputil to avfloatdsp.Ronald S. Bultje2013-01-221-0/+7
| | | | | | | | | | | | 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.
* | Merge commit '55aa03b9f8f11ebb7535424cc0e5635558590f49'Michael Niedermayer2013-01-231-0/+7
|\| | | | | | | | | | | | | | | | | | | | | * commit '55aa03b9f8f11ebb7535424cc0e5635558590f49': floatdsp: move vector_fmul_add from dsputil to avfloatdsp. Conflicts: libavcodec/dsputil.c libavcodec/x86/dsputil.asm Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * floatdsp: move vector_fmul_add from dsputil to avfloatdsp.Ronald S. Bultje2013-01-221-0/+7
| |
* | Merge commit '80ac87c13dc8c6c063e26a464c5c542357c0583f'Michael Niedermayer2013-01-181-3/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit '80ac87c13dc8c6c063e26a464c5c542357c0583f': lavc: support ZenoXVID custom tag libcdio: support recent cdio-paranoia float_dsp: Add #ifdef HAVE_INLINE_ASM around vector_fmul_window theora: Skip zero-sized headers Conflicts: configure Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * float_dsp: Add #ifdef HAVE_INLINE_ASM around vector_fmul_windowMartin Storsjö2013-01-171-3/+3
| | | | | | | | | | | | This fixes builds on 64bit MSVC. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-01-161-0/+75
|\| | | | | | | | | | | | | | | | | | | | | * qatar/master: lavc: Move vector_fmul_window to AVFloatDSPContext rtpdec_mpeg4: Check the remaining amount of data before reading Conflicts: libavcodec/dsputil.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: Move vector_fmul_window to AVFloatDSPContextJustin Ruggles2013-01-161-0/+75
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '9d5c62ba5b586c80af508b5914934b1c439f6652'Michael Niedermayer2012-12-061-0/+9
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit '9d5c62ba5b586c80af508b5914934b1c439f6652': lavu/opt: do not filter out the initial sign character except for flags eval: treat dB as decibels instead of decibytes float_dsp: add vector_dmul_scalar() to multiply a vector of doubles Conflicts: libavutil/eval.c tests/ref/fate/eval Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * float_dsp: add vector_dmul_scalar() to multiply a vector of doublesJustin Ruggles2012-12-051-0/+9
| | | | | | | | Include x86-optimized versions for SSE2 and AVX.
* | Merge commit '3c370f5abc55739a261534b9f9bdc739cedbbbb9'Michael Niedermayer2012-11-271-0/+4
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '3c370f5abc55739a261534b9f9bdc739cedbbbb9': riff: only warn on a bad INFO chunk code size instead of failing configure: Add separate list for libraries and use where appropriate x86: float_dsp: add SSE version of vector_fmul_scalar() Conflicts: configure libavformat/riff.c libavutil/x86/float_dsp.asm Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: float_dsp: add SSE version of vector_fmul_scalar()Justin Ruggles2012-11-261-0/+4
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-09-091-4/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: swscale: Provide the right alignment for external mmx asm x86: Replace checks for CPU extensions and flags by convenience macros configure: msvc: fix/simplify setting of flags for hostcc x86: mlpdsp: mlp_filter_channel_x86 requires inline asm Conflicts: libavcodec/x86/fft_init.c libavcodec/x86/h264_intrapred_init.c libavcodec/x86/h264dsp_init.c libavcodec/x86/mpegaudiodec.c libavcodec/x86/proresdsp_init.c libavutil/x86/float_dsp_init.c libswscale/utils.c libswscale/x86/swscale.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: Replace checks for CPU extensions and flags by convenience macrosDiego Biurrun2012-09-081-4/+3
| | | | | | | | | | This separates code relying on inline from that relying on external assembly and fixes instances where the coalesced check was incorrect.
* | Fix compilation with yasm-0.6.2.Carl Eugen Hoyos2012-09-011-1/+1
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-06-191-0/+7
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (24 commits) flvdec: remove incomplete, disabled seeking code mem: add support for _aligned_malloc() as found on Windows lavc: Extend the documentation for avcodec_init_packet flvdec: remove incomplete, disabled seeking code http: replace atoll() with strtoll() mpegts: remove unused/incomplete/broken seeking code af_amix: allow float planar sample format as input af_amix: use AVFloatDSPContext.vector_fmac_scalar() float_dsp: add x86-optimized functions for vector_fmac_scalar() float_dsp: Move vector_fmac_scalar() from libavcodec to libavutil lavr: Add x86-optimized function for flt to s32 conversion lavr: Add x86-optimized function for flt to s16 conversion lavr: Add x86-optimized functions for s32 to flt conversion lavr: Add x86-optimized functions for s32 to s16 conversion lavr: Add x86-optimized functions for s16 to flt conversion lavr: Add x86-optimized function for s16 to s32 conversion rtpenc: Support packetizing iLBC rtpdec: Add a depacketizer for iLBC Implement the iLBC storage file format mov: Support muxing/demuxing iLBC ... Conflicts: Changelog configure libavcodec/avcodec.h libavcodec/dsputil.c libavcodec/version.h libavformat/movenc.c libavformat/mpegts.c libavformat/version.h libavutil/mem.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * float_dsp: add x86-optimized functions for vector_fmac_scalar()Justin Ruggles2012-06-181-0/+7
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-06-081-4/+4
|/ | | | | | | | | | | | * qatar/master: float_dsp: ppc: add a separate header for Altivec function prototypes ARM: fix float_dsp breakage from d5a7229 Add a float DSP framework to libavutil PPC: Move types_altivec.h and util_altivec.h from libavcodec to libavutil ARM: Move asm.S from libavcodec to libavutil vc1dsp: mark put/avg_vc1_mspel_mc() always_inline Merged-by: Michael Niedermayer <michaelni@gmx.at>
* Add a float DSP framework to libavutilJustin Ruggles2012-06-081-0/+41
Move vector_fmul() from DSPContext to AVFloatDSPContext.