- 28 Aug, 2012 1 commit
-
-
Ronald S. Bultje authored
Signed-off-by:
Michael Niedermayer <michaelni@gmx.at>
-
- 26 Aug, 2012 1 commit
-
-
Loren Merritt authored
13% faster on penryn, 16% on sandybridge, 15% on bulldozer Not simd; a compiler should have generated this, but gcc didn't.
-
- 24 Aug, 2012 2 commits
-
-
Anton Khirnov authored
Double does not have enough precision to represent all int64 numbers exactly.
-
Justin Ruggles authored
-
- 22 Aug, 2012 1 commit
-
-
Mans Rullgard authored
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>
-
- 21 Aug, 2012 1 commit
-
-
Diego Biurrun authored
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.
-
- 16 Aug, 2012 3 commits
-
-
Michael Niedermayer authored
This function is problematic in several ways, its also quite unpredictable which flags it ends up turning on Signed-off-by:
Michael Niedermayer <michaelni@gmx.at>
-
Michael Niedermayer authored
Signed-off-by:
Michael Niedermayer <michaelni@gmx.at>
-
Martin Storsjö authored
Signed-off-by:
Martin Storsjö <martin@martin.st>
-
- 15 Aug, 2012 2 commits
-
-
Martin Storsjö authored
Signed-off-by:
Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
Signed-off-by:
Martin Storsjö <martin@martin.st>
-
- 13 Aug, 2012 2 commits
-
-
Mans Rullgard authored
This avoids having the compiler redundantly mask the values to the smaller size. Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
Mans Rullgard authored
Fixed-point audio codecs often use saturating arithmetic, and special instructions for these operations are common. Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
- 12 Aug, 2012 1 commit
-
-
Stefano Sabatini authored
-
- 10 Aug, 2012 4 commits
-
-
Stefano Sabatini authored
-
Mans Rullgard authored
This makes struct AVDictionary fully opaque now that nothing needs to access it directly any more. Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
Mans Rullgard authored
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>
-
Mans Rullgard authored
Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
- 09 Aug, 2012 4 commits
-
-
Mans Rullgard authored
Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
Mans Rullgard authored
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>
-
Mans Rullgard authored
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>
-
Diego Biurrun authored
-
- 08 Aug, 2012 6 commits
-
-
Mans Rullgard authored
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>
-
Mans Rullgard authored
These x86-specific macros do not belong in generic code. Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
Mans Rullgard authored
This puts x86-specific things in the x86/ subdirectory where they belong. Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
Michael Niedermayer authored
Signed-off-by:
Michael Niedermayer <michaelni@gmx.at>
-
Michael Niedermayer authored
Signed-off-by:
Michael Niedermayer <michaelni@gmx.at>
-
Clément Bœsch authored
-
- 07 Aug, 2012 6 commits
-
-
Michael Niedermayer authored
Signed-off-by:
Michael Niedermayer <michaelni@gmx.at>
-
Mans Rullgard authored
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>
-
Mans Rullgard authored
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.
-
Mans Rullgard authored
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>
-
Mans Rullgard authored
For some reason, nasm requires this. No harm done to yasm. Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
Mans Rullgard authored
nasm prints a warning if the colon is missing. Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
- 05 Aug, 2012 1 commit
-
-
Mans Rullgard authored
This allows simplifying a few expressions. Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
- 03 Aug, 2012 2 commits
-
-
Diego Biurrun authored
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.
-
Diego Biurrun authored
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.
-
- 01 Aug, 2012 1 commit
-
-
Clément Bœsch authored
-
- 31 Jul, 2012 1 commit
-
-
Stefano Sabatini authored
The documentation was erroneously removed in 7cf9aadd.
-
- 30 Jul, 2012 1 commit
-
-
Nicolas George authored
Also bump minor version and add APIchanges entry.
-