summaryrefslogtreecommitdiff
path: root/libavutil
Commit message (Collapse)AuthorAge
* avopt: fix examples to match the same style about default values as the ↵Michael Niedermayer2012-09-05
| | | | | | actual code. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavu: add snprintf(), vsnprint() and strtod() replacements for MS runtime.Ronald S. Bultje2012-09-05
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avopt: Reorder the default_val struct, making i64 the first fieldMartin Storsjö2012-09-04
| | | | | | Also mention this change in APIchanges. Signed-off-by: Martin Storsjö <martin@martin.st>
* avopt: Explicitly store rational option defaults in .dblMartin Storsjö2012-09-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avopt: Store defaults for AV_OPT_TYPE_INT in the i64 union memberMartin Storsjö2012-09-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avopt: Store defaults for AV_OPT_TYPE_FLAGS in the i64 union memberMartin Storsjö2012-09-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avopt: Store defaults for AV_OPT_TYPE_CONST in the i64 union memberMartin Storsjö2012-09-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* pixdesc: cosmeticsLuca Barbato2012-09-04
|
* x86: Add convenience macros to check for CPU extensions and flagsDiego Biurrun2012-09-04
|
* x86: Split inline and external assembly #ifdefsDiego Biurrun2012-08-31
|
* x86: cosmetics: Comment some #endifs for better readabilityDiego Biurrun2012-08-30
|
* vf_hqdn3d: x86 asmLoren Merritt2012-08-26
| | | | | 13% faster on penryn, 16% on sandybridge, 15% on bulldozer Not simd; a compiler should have generated this, but gcc didn't.
* AVOptions: store defaults for INT64 options in int64 union member.Anton Khirnov2012-08-24
| | | | | Double does not have enough precision to represent all int64 numbers exactly.
* lavr: x86: optimized 6-channel s16 to fltp conversionJustin Ruggles2012-08-23
|
* x86: remove FASTDIV inline asmMans Rullgard2012-08-22
| | | | | | | | | | | | | | | | | | | GCC 4.3 and later do the right thing with the plain C code. Earlier versions in 32-bit mode generate one extra instruction, needlessly zeroing what would be the high half of the shifted value. At least two gcc configurations miscompile the inline asm in some situations. In 64-bit mode, all gcc versions generate imul r64, r64 followed by shr. On Intel i7 and later, this imul is faster 32-bit mul. On older Intel and all AMD, it is slightly slower. On Atom it is much slower. Considering where the FASTDIV macro is used, any overall negative performance impact of this change should be negligible. If anyone cares, they should file a bug against gcc and get the instruction selection fixed. Signed-off-by: Mans Rullgard <mans@mansr.com>
* configure: Drop fastdiv optionDiego Biurrun2012-08-22
| | | | | | There is no point in having the user disable any fastdiv macros. Besides the condition implementation was broken and only disabled the C implementation, but no platform specific assembly versions.
* Add more missing includes after removing the implicit common.hMartin Storsjö2012-08-16
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Add some more missing includes after removing the implicit common.hMartin Storsjö2012-08-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Don't include common.h from avutil.hMartin Storsjö2012-08-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* ARM: intmath: use native-size return types for clipping functionsMans Rullgard2012-08-13
| | | | | | | This avoids having the compiler redundantly mask the values to the smaller size. Signed-off-by: Mans Rullgard <mans@mansr.com>
* libavutil: add saturating addition functionsMans Rullgard2012-08-13
| | | | | | | Fixed-point audio codecs often use saturating arithmetic, and special instructions for these operations are common. Signed-off-by: Mans Rullgard <mans@mansr.com>
* dict: move struct AVDictionary definition to dict.cMans Rullgard2012-08-10
| | | | | | | This makes struct AVDictionary fully opaque now that nothing needs to access it directly any more. Signed-off-by: Mans Rullgard <mans@mansr.com>
* dict: add av_dict_count()Mans Rullgard2012-08-10
| | | | | | | | This adds a function to retrieve the number of entries in a dictionary and updates the places directly accessing what should be an opaque struct to use this new function instead. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ARM: add missing "cc" clobber in av_clipl_int32_arm()Mans Rullgard2012-08-10
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* libavutil: remove unused av_abort() macroMans Rullgard2012-08-09
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* libavutil: drop offsetof() fallback definitionMans Rullgard2012-08-09
| | | | | | | | | The only compiler I have that does not define the standard offsetof() macro is "Bruce's C Compiler", a simple compiler for producing 8/16-bit 8086 code, usually for use in early stages of PC booting. Signed-off-by: Mans Rullgard <mans@mansr.com>
* libavutil: drop fallback definitions of INTxx_MIN/MAXMans Rullgard2012-08-09
| | | | | | | This list is incomplete (we also use UINT16_MAX), so there does not appear to be any system we care about that needs these. Signed-off-by: Mans Rullgard <mans@mansr.com>
* doxygen: Fix function parameter names to match the codeDiego Biurrun2012-08-09
|
* Move MASK_ABS macro to libavcodec/mathops.hMans Rullgard2012-08-09
| | | | | | | | | | | | This macro is only used in two places, both in libavcodec, so this is a more sensible place for it. Two small tweaks to the macro are made: - removing the trailing semicolon - dropping unnecessary 'volatile' from the x86 asm Signed-off-by: Mans Rullgard <mans@mansr.com>
* x86: move MANGLE() and related macros to libavutil/x86/asm.hMans Rullgard2012-08-09
| | | | | | These x86-specific macros do not belong in generic code. Signed-off-by: Mans Rullgard <mans@mansr.com>
* x86: rename libavutil/x86_cpu.h to libavutil/x86/asm.hMans Rullgard2012-08-09
| | | | | | | This puts x86-specific things in the x86/ subdirectory where they belong. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ARM: use Q/R inline asm operand modifiers only if supportedMans Rullgard2012-08-07
| | | | | | | | | | Some compilers do not support the Q/R modifiers used to access the low/high parts of a 64-bit register pair. Check for this and disable all uses of it when not supported. Fixes bug #337. Signed-off-by: Mans Rullgard <mans@mansr.com>
* x86: fix build with nasm 2.08Mans Rullgard2012-08-07
| | | | | | | | It appears that something goes wrong in old nasm versions when the %+ operator is used in the last argument of a macro invocation and this argument is tested with %ifdef within the macro. This patch rearranges the macro arguments such that the %+ operator is never used in the last argument.
* x86: use nop cpu directives only if supportedMans Rullgard2012-08-07
| | | | | | | nasm does not support 'CPU foonop' directives. This adds a configure test for the directive and uses it only if supported. Signed-off-by: Mans Rullgard <mans@mansr.com>
* x86: fix rNmp macros with nasmMans Rullgard2012-08-07
| | | | | | For some reason, nasm requires this. No harm done to yasm. Signed-off-by: Mans Rullgard <mans@mansr.com>
* x86: add colons after labelsMans Rullgard2012-08-07
| | | | | | nasm prints a warning if the colon is missing. Signed-off-by: Mans Rullgard <mans@mansr.com>
* rational: add av_inv_q() returning the inverse of an AVRationalMans Rullgard2012-08-05
| | | | | | This allows simplifying a few expressions. Signed-off-by: Mans Rullgard <mans@mansr.com>
* x86: build: replace mmx2 by mmxextDiego Biurrun2012-08-03
| | | | | | | Refactoring mmx2/mmxext YASM code with cpuflags will force renames. So switching to a consistent naming scheme beforehand is sensible. The name "mmxext" is more official and widespread and also the name of the CPU flag, as reported e.g. by the Linux kernel.
* x86: Use consistent 3dnowext function and macro name suffixesDiego Biurrun2012-08-03
| | | | | | Currently there is a wild mix of 3dn2/3dnow2/3dnowext. Switching to "3dnowext", which is a more common name of the CPU flag, as reported e.g. by the Linux kernel, unifies this.
* x86inc: clip num_args to 7 on x86-32.Loren Merritt2012-07-28
| | | | | | | | This allows us to unconditionally set the cglobal num_args parameter to a bigger value, thus making writing yasm code even easier than before. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* x86inc: sync to latest version from x264.Ronald S. Bultje2012-07-28
|
* x86: add support for fmaddps fma4 instruction with abstraction to avx/sseJustin Ruggles2012-07-27
|
* eval: fix printing of NaN in eval fate test.Ronald S. Bultje2012-07-26
| | | | | This fixes "make fate-eval" on MSVC builds. Without this, the test outputs "-1.#NaN" instead of "nan" on MSVS 2010.
* x86inc: automatically insert vzeroupper for YMM functions.Ronald S. Bultje2012-07-26
|
* dsputil: x86: add SHUFFLE_MASK_W macroJason Garrett-Glaser2012-07-22
| | | | Simplifies pshufb masks that operate on words.
* mem: introduce av_malloc_array and av_mallocz_arrayLuca Barbato2012-07-14
| | | | | Both function ease allocating large arrays implementing the overflow check inside it.
* eval: add gt(), gte(), lt() and lte() fate testsJanne Grunau2012-07-14
|
* eval: fix swapping of lt() and lte()Max Lazarov2012-07-14
| | | | CC: libav-stable@libav.org
* configure: Check for the math function rintRonald S. Bultje2012-07-11
| | | | | | Add a fallback implementation if it doesn't exist. Signed-off-by: Martin Storsjö <martin@martin.st>
* x86/cpu: implement get/set_eflags using intrinsicsRonald S. Bultje2012-07-10
| | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de> Signed-off-by: Martin Storsjö <martin@martin.st>