summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Martin Storsjö [Mon, 20 Sep 2021 10:00:40 +0000 (13:00 +0300)]
configure: arm: Don't add -march= to the compiler if no preference was passed
If no --cpu= option was passed to configure, we detect what the
compiler defaults to. This detected value was then fed back to the
rest of the configure logic, as if it was an explicit choice.
This breaks on Ubuntu 21.10 with GCC 11.1.
Since GCC 8, it's possible to add configure extra features via the
-march option, like e.g. -march=armv7-a+neon. If the -mfpu= option
is configured to default to 'auto', the fpu setting gets taken
from the -march option.
GCC 11.1 in Ubuntu seems to be configured to use -mfpu=auto. This
has the effect of breaking any compilation command that specifies
-march=armv7-a, because the driver implicitly also adds -mfloat-abi=hard,
and that combination results in this error:
cc1: error: ‘-mfloat-abi=hard’: selected processor lacks an FPU
Therefore, restructure configure. If no specific preference was set
(and the 'cpu' configure variable was set as the output of
probe_arm_arch), the value we tried to set via -march= was the same
value that we just tried to detect as the compiler default.
So instead, just try to detect what the compiler defaults to, with
to allow setting other configure settings (such as 'fast_unaligned'),
but don't try to spell out the compiler's default via the -march flag.
Signed-off-by: Martin Storsjö <martin@martin.st>
Gbp-Pq: Name 0002-configure-arm-Don-t-add-march-to-the-compiler-if-no-.patch
James Cowgill [Sun, 11 Aug 2019 15:50:56 +0000 (16:50 +0100)]
avcodec/arm/sbcenc: avoid callee preserved vfp registers
When compiling FFmpeg with GCC-9, some very random segfaults were
observed in code which had previously called down into the SBC encoder
NEON assembly routines. This was caused by these functions clobbering
some of the vfp callee saved registers (d8 - d15 aka q4 - q7). GCC was
using these registers to save local variables, but after these
functions returned, they would contain garbage.
Fix by reallocating the registers in the two affected functions in
the following way:
ff_sbc_analyze_4_neon: q2-q5 => q8-q11, then q1-q4 => q8-q11
ff_sbc_analyze_8_neon: q2-q9 => q8-q15
The reason for using these replacements is to keep closely related
sets of registers consecutively numbered which hopefully makes the
code more easy to follow. Since this commit only reallocates
registers, it should have no performance impact.
Signed-off-by: James Cowgill <jcowgill@debian.org>
Gbp-Pq: Name 0001-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch
Sebastian Ramacher [Sun, 21 Nov 2021 17:48:57 +0000 (17:48 +0000)]
ffmpeg (7:4.4.1-2) unstable; urgency=medium
* debian/control: Add Build-Depends on libffmpeg-nvenc-dev on amd64, arm64
and i386 (Closes: #925941)
[dgit import unpatched ffmpeg 7:4.4.1-2]
Sebastian Ramacher [Sun, 21 Nov 2021 17:48:57 +0000 (17:48 +0000)]
Import ffmpeg_4.4.1-2.debian.tar.xz
[dgit import tarball ffmpeg 7:4.4.1-2 ffmpeg_4.4.1-2.debian.tar.xz]
Sebastian Ramacher [Thu, 28 Oct 2021 19:43:55 +0000 (20:43 +0100)]
Import ffmpeg_4.4.1.orig.tar.xz
[dgit import orig ffmpeg_4.4.1.orig.tar.xz]