Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 10 Dec 2016 04:53:37 -0700 (MST)
From:      Robert_Burmeister <robert.burmeister@utoledo.edu>
To:        freebsd-ports@freebsd.org
Subject:   Re: [SOLVED] Re: HTML5 videos crashes Firefox
Message-ID:  <1481370817042-6150807.post@n6.nabble.com>
In-Reply-To: <c26f441a-01a4-7ad3-24d5-29fdc4ebb5a5@netfence.it>
References:  <56F804E9.8050506@netfence.it> <56FAAB3D.10906@netfence.it> <34cb33f2-69b0-aa43-1d98-6613713c8877@netfence.it> <b2ba6bbf-c313-aaf9-b83b-ec9c6848ceb9@netfence.it> <1474623338662-6132220.post@n6.nabble.com> <c26f441a-01a4-7ad3-24d5-29fdc4ebb5a5@netfence.it>

next in thread | previous in thread | raw e-mail | index | archive | help
Andrea Venturoli wrote
> On 09/23/16 11:35, Robert_Burmeister wrote:
>> I was able to resolve HTML5 videos crashes in Firefox 49 on FreeBSD 10.3
>> i386
>> by changing the FFMPEG compile option to "SSE=off" and recompiling
>> FFMPEG.
> Thanks. 
> I'm fine now, but still curious about details: if you have any link, could
> you share them?

Current versions of LLVM-FFMPEG-FireFox now handle SIMD correctly on i386.

For reference.
These were hiccups from transitioning from a 4-byte aligned stack to a
16-byte aligned stack.
As most people are using AMD64 which assumes 16-byte alignment
these issues were only showing up on 4-byte aligned i386 systems when
calling SIMD 
which required 16-byte alignment.

Newer compiler versions and processor targets handled alignment mismatches
better,
which is why the crashes were primarily occuring on processors without newer
instruction sets
and where legacy code from different compiler versions got linked.
(For port builds, "portupgrade -fa" with the updated compiler may shake some
of that out.)

Relevant links on the issue:

About the x64 stack Alignment
https://software.intel.com/en-us/forums/intel-isa-extensions/topic/291241

http://stackoverflow.com/questions/612443/why-does-the-mac-abi-require-16-byte-stack-alignment-for-x86-32

LLVM
Bug 2823 - llvm-gcc does not respect ABI alignment for structs-with-vectors 
Bug 8969 - linux x86-32 stack not kept 16-byte aligned 
Bug 12250 - unaligned SSE memory access 
Bug 20602 - Clang unconditionally defines macros for SSE and SSE2 
Bug 21414 - clang shouldn't use aligned SSE instructions on 32bit x86 linux 

GCC
Bug 40838 - gcc shouldn't assume that the stack is aligned 

64-ia-32-architectures-optimization-manual 
http://www.intel.com/Assets/PDF/manual/248966.pdf



--
View this message in context: http://freebsd.1045724.x6.nabble.com/HTML5-videos-crashes-Firefox-tp6087674p6150807.html
Sent from the freebsd-ports mailing list archive at Nabble.com.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1481370817042-6150807.post>