Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-23 Thread Tobias B. Besemer
"[...] The earlier 'SIMD' instruction sets on the x86 platform, from oldest to newest, are 'MMX', '3DNow!' (developed by AMD), 'SSE' and 'SSE2'. [...]" Source: https://en.wikipedia.org/wiki/SSE3 (At the top.) Is support for 'MMX' & '3DNow!' already dropped? -BesTo

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-19 Thread Henri Sivonen
On Thu, May 19, 2016 at 12:30 PM, Kurt Roeckx wrote: > On 2016-05-18 10:10, Henri Sivonen wrote: >> >> What do we need to do to reach a decision that it's indeed OK to treat >> *run-time* selection of SSE2 vs. non-SSE2 especially in Rust code as a >> "patches not even welcome"

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-19 Thread Kurt Roeckx
On 2016-05-18 10:10, Henri Sivonen wrote: What do we need to do to reach a decision that it's indeed OK to treat *run-time* selection of SSE2 vs. non-SSE2 especially in Rust code as a "patches not even welcome" kind of thing, considering that this may lead to Linux distros shipping an 32-bit x86

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-19 Thread Jan de Mooij
On Thu, May 19, 2016 at 2:59 AM, Emanuel Hoogeveen < emanuel.hoogev...@gmail.com> wrote: > They do get the baseline compiler, which can still be significantly faster > than the interpreter, but Ion requires SSE2. Since the runtime detection > does just turn Ion off altogether, I don't know if we

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Jan de Mooij
On Thu, May 19, 2016 at 2:59 AM, Emanuel Hoogeveen wrote: > > They do get the baseline compiler, which can still be significantly faster > than the interpreter, but Ion requires SSE2. Since the runtime detection does > just turn Ion off altogether, I don't know if

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Emanuel Hoogeveen
On Wednesday, May 18, 2016 at 7:32:38 PM UTC+2, Benjamin Smedberg wrote: > - Our own JITs and their support for non-SSE2 paths > - Our primary JIT doesn't support non-SSE2, right? So these users > already fall back to the slow interpretation path? They do get the baseline

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Tobias B. Besemer
Am Mittwoch, 18. Mai 2016 20:28:01 UTC+2 schrieb Tobias B. Besemer: > > If we're going to accidentally keep introducing bugs where non-SSE2 CPUs > > crash, it would be far better to add a runtime check at the beginning of > > main() and error out, than to have a steady trickle of bug reports about

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Jim Blandy
On Wed, May 18, 2016 at 9:51 AM, Ralph Giles wrote: > On Wed, May 18, 2016 at 3:54 AM, Mike Hommey wrote: > > > Now, with my Debian hat on, I can tell you with 100% certainty that > > angry Debian users *will* come with patches and will return even > >

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Tobias B. Besemer
> If we're going to accidentally keep introducing bugs where non-SSE2 CPUs > crash, it would be far better to add a runtime check at the beginning of > main() and error out, than to have a steady trickle of bug reports about > crashes on illegal instructions which end up being marked INVALID.

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Ralph Giles
On Wed, May 18, 2016 at 11:10:30AM +0300, Henri Sivonen wrote: >> So we now require SSE2 on [...] >> * 32-bit x86 Mac, which means just the plugin-container now that we >> no longer support 10.6, which was the last OS X version that ran on >> 32-bit hardware. Actually, all of Apple's intel

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Benjamin Smedberg
On Wed, May 18, 2016 at 6:54 AM, Mike Hommey wrote: > Henri Sivonen wrote: > > > It seems that we are almost ready to require SSE2 for Mozilla-built > > Firefox for 32-bit x86 Linux. > There are a couple of interrelated issues here. Can we require SSE2 for Mozilla builds of

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Jim Blandy
I think we need to admit that there isn't any rational, analytical way to compare most of the costs here. The one number we *do* have, the number of users who can't upgrade, is kind of tantalizing us, but we can't quantify how many users we'll gain by requiring SSE2, how many other bugs we'll fix

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Tobias B. Besemer
Am Mittwoch, 18. Mai 2016 16:52:25 UTC+2 schrieb Boris Zbarsky: > On 5/18/16 7:38 AM, Tobias B. Besemer wrote: > > Is this really a discussion if Firefox should support CPUs older then 13-15 > > years ??? > > More or less, yes. > > > I can't imagine any scenario were a user needs to run a

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Boris Zbarsky
On 5/18/16 7:38 AM, Tobias B. Besemer wrote: Is this really a discussion if Firefox should support CPUs older then 13-15 years ??? More or less, yes. I can't imagine any scenario were a user needs to run a Pentium III with GUI and a browser on it... There were AMD CPUs newer than that

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Tobias B. Besemer
Am Mittwoch, 18. Mai 2016 13:56:14 UTC+2 schrieb Tobias B. Besemer: > Am Mittwoch, 18. Mai 2016 13:38:58 UTC+2 schrieb Tobias B. Besemer: > > N00b question: > > Is this really a discussion if Firefox should support CPUs older then 13-15 > > years ??? > > > > https://en.wikipedia.org/wiki/SSE2 >

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Tobias B. Besemer
Am Mittwoch, 18. Mai 2016 13:38:58 UTC+2 schrieb Tobias B. Besemer: > N00b question: > Is this really a discussion if Firefox should support CPUs older then 13-15 > years ??? > > https://en.wikipedia.org/wiki/SSE2 > > I can't imagine any scenario were a user needs to run a Pentium III with GUI

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Tobias B. Besemer
N00b question: Is this really a discussion if Firefox should support CPUs older then 13-15 years ??? https://en.wikipedia.org/wiki/SSE2 I can't imagine any scenario were a user needs to run a Pentium III with GUI and a browser on it... ...would mean that the system not only runs not e.g. as a

Re: Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Mike Hommey
On Wed, May 18, 2016 at 11:10:30AM +0300, Henri Sivonen wrote: > On Mon, May 16, 2016 at 8:53 PM, Benjamin Smedberg > wrote: > > On Mon, May 16, 2016 at 8:47 AM, Henri Sivonen wrote: > >> For clarification: Does this decision apply to 32-bit x86 Linux

Requiring SSE2 on all 32-bit x86 OSs (was: Re: Reverting to VS2013 on central and aurora)

2016-05-18 Thread Henri Sivonen
On Mon, May 16, 2016 at 8:53 PM, Benjamin Smedberg wrote: > On Mon, May 16, 2016 at 8:47 AM, Henri Sivonen wrote: >> For clarification: Does this decision apply to 32-bit x86 Linux as >> well? (It would be sad to have to supply and maintain non-SSE2

Re: Reverting to VS2013 on central and aurora

2016-05-16 Thread Mike Hommey
On Mon, May 16, 2016 at 01:53:51PM -0400, Benjamin Smedberg wrote: > On Mon, May 16, 2016 at 8:47 AM, Henri Sivonen > wrote: > > > > > > > For clarification: Does this decision apply to 32-bit x86 Linux as > > well? (It would be sad to have to supply and maintain non-SSE2

Re: Reverting to VS2013 on central and aurora

2016-05-16 Thread Ralph Giles
On Mon, May 16, 2016 at 10:53 AM, Benjamin Smedberg wrote: > IIRC the Mozilla builds of Firefox for Linux already require SSE2 by virtue > of their -i686 build targeting, so the real question here is whether we > want to support distros that don't require SSE2? I'm ok with

Re: Reverting to VS2013 on central and aurora

2016-05-16 Thread Benjamin Smedberg
On Mon, May 16, 2016 at 8:47 AM, Henri Sivonen wrote: > > > For clarification: Does this decision apply to 32-bit x86 Linux as > well? (It would be sad to have to supply and maintain non-SSE2 x86 > code paths just for Linux.) > Nobody asked about that, so it's wasn't

Re: Reverting to VS2013 on central and aurora

2016-05-13 Thread Jim Blandy
Since we didn't require SSE2 in 32-bit builds until this point, were floating-point results rounded unpredictably in those builds until now? On Fri, May 13, 2016 at 1:42 PM, Benjamin Smedberg wrote: > I am talking about requiring SSE2. That is a larger (but still quite

Re: Reverting to VS2013 on central and aurora

2016-05-13 Thread Benjamin Smedberg
I am talking about requiring SSE2. That is a larger (but still quite small) population, but the upside of being able to turn on SSE2 optimizations by default is an important benefit. I've discussed and confirmed this with Firefox product management. So yes, the plan of record is to require SSE2

Re: Reverting to VS2013 on central and aurora

2016-05-11 Thread Jeff Muizelaar
Or mozglue/build/SSE.cpp -Jeff On Wed, May 11, 2016 at 9:35 AM, Ehsan Akhgari wrote: > On 2016-05-10 10:01 PM, Robert Strong wrote: > > On Tue, May 10, 2016 at 6:55 PM, Lawrence Mandel > > wrote: > > > >> On Fri, May 6, 2016 at 12:39 PM, Benjamin

Re: Reverting to VS2013 on central and aurora

2016-05-11 Thread Ehsan Akhgari
On 2016-05-10 9:43 PM, Lawrence Mandel wrote: > On Tue, May 10, 2016 at 7:05 PM, Ehsan Akhgari > wrote: > > On 2016-05-10 4:45 PM, Gregory Szorc wrote: > > On Thu, May 5, 2016 at 9:26 PM, Gregory Szorc

Re: Reverting to VS2013 on central and aurora

2016-05-11 Thread Ehsan Akhgari
On 2016-05-10 10:01 PM, Robert Strong wrote: > On Tue, May 10, 2016 at 6:55 PM, Lawrence Mandel > wrote: > >> On Fri, May 6, 2016 at 12:39 PM, Benjamin Smedberg >> wrote: >> >>> I agree that we should drop support for non-SSE2. It mattered 7 years ago

Re: Reverting to VS2013 on central and aurora

2016-05-10 Thread Robert Strong
On Tue, May 10, 2016 at 6:55 PM, Lawrence Mandel wrote: > On Fri, May 6, 2016 at 12:39 PM, Benjamin Smedberg > wrote: > > > I agree that we should drop support for non-SSE2. It mattered 7 years ago > > (see

Re: Reverting to VS2013 on central and aurora

2016-05-10 Thread Xidorn Quan
On Wed, May 11, 2016 at 11:51 AM, Lawrence Mandel wrote: > > On Tue, May 10, 2016 at 7:29 PM, Xidorn Quan > wrote: > >> On Wed, May 11, 2016 at 6:45 AM, Gregory Szorc wrote: >> >> > On Thu, May 5, 2016 at 9:26 PM, Gregory Szorc

Re: Reverting to VS2013 on central and aurora

2016-05-10 Thread Lawrence Mandel
On Fri, May 6, 2016 at 12:39 PM, Benjamin Smedberg wrote: > I agree that we should drop support for non-SSE2. It mattered 7 years ago > (see https://bugzilla.mozilla.org/show_bug.cgi?id=500277) but it really > doesn't matter now. > > We do need to avoid updating these

Re: Reverting to VS2013 on central and aurora

2016-05-10 Thread Lawrence Mandel
On Tue, May 10, 2016 at 7:29 PM, Xidorn Quan wrote: > On Wed, May 11, 2016 at 6:45 AM, Gregory Szorc wrote: > > > On Thu, May 5, 2016 at 9:26 PM, Gregory Szorc wrote: > > > > > There is a compiler bug in VS2015 that results in SSE

Re: Reverting to VS2013 on central and aurora

2016-05-10 Thread Lawrence Mandel
On Tue, May 10, 2016 at 7:05 PM, Ehsan Akhgari wrote: > On 2016-05-10 4:45 PM, Gregory Szorc wrote: > > On Thu, May 5, 2016 at 9:26 PM, Gregory Szorc wrote: > > > >> There is a compiler bug in VS2015 that results in SSE instructions being > >> emitted

Re: Reverting to VS2013 on central and aurora

2016-05-10 Thread Gregory Szorc
On Thu, May 5, 2016 at 9:26 PM, Gregory Szorc wrote: > There is a compiler bug in VS2015 that results in SSE instructions being > emitted when they shouldn't be. Since Firefox still needs to remain > compatible with ancient hardware that doesn't support SSE, this is causing >

Re: Reverting to VS2013 on central and aurora

2016-05-07 Thread Emanuel Hoogeveen
Well, I think that's debatable ;) The Athlon XP had clock speeds of up to 2333MHz, though I'm sure the per-clock performance doesn't measure up to current offerings. But Ion can easily be 5x as fast as Baseline. Of course, whether that makes a difference depends on what JS you're running. But

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Mike Hommey
On Fri, May 06, 2016 at 07:38:31PM -0700, Emanuel Hoogeveen wrote: > SSE2 is also required for IonMonkey, our optimizing JIT. The baseline > compiler does work without SSE2, but isn't nearly as fast. So users > running Firefox on hardware without SSE2 support are already getting > severely

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Emanuel Hoogeveen
SSE2 is also required for IonMonkey, our optimizing JIT. The baseline compiler does work without SSE2, but isn't nearly as fast. So users running Firefox on hardware without SSE2 support are already getting severely degraded performance. On Friday, May 6, 2016 at 10:59:01 PM UTC+2, Milan

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Milan Sreckovic
For graphics, it’s performance if we start requiring SSE2. Lately, canvasmark benchmark, and increasingly more trouble when updating Skia library. — - Milan > On May 6, 2016, at 14:39 , Henri Sivonen wrote: > > On Fri, May 6, 2016 at 8:17 PM, Gregory Szorc

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Henri Sivonen
On Fri, May 6, 2016 at 8:17 PM, Gregory Szorc wrote: > On Fri, May 6, 2016 at 9:39 AM, Benjamin Smedberg > wrote: > >> I agree that we should drop support for non-SSE2. It mattered 7 years ago >> (see https://bugzilla.mozilla.org/show_bug.cgi?id=500277)

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Milan Sreckovic
While I agree we should drop non-SSE (and have started a conversation to drop non-SSE2 as well :), the comparison to dropping 10.6-10.8 users is somewhat unfair. Those users can upgrade 10.9 easier than the non-SSE users can buy a new computer. — - Milan > On May 6, 2016, at 12:22 , Gregory

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Milan Sreckovic
If it matters for this discussion, I’m pretty sure central doesn’t build with VS2013 today. At least it doesn’t for me. — - Milan > On May 6, 2016, at 13:17 , Gregory Szorc wrote: > > On Fri, May 6, 2016 at 9:39 AM, Benjamin Smedberg > wrote: > >>

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Gregory Szorc
On Fri, May 6, 2016 at 9:39 AM, Benjamin Smedberg wrote: > I agree that we should drop support for non-SSE2. It mattered 7 years ago > (see https://bugzilla.mozilla.org/show_bug.cgi?id=500277) but it really > doesn't matter now. > Wait - are we talking about requiring SSE

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Benjamin Smedberg
I agree that we should drop support for non-SSE2. It mattered 7 years ago (see https://bugzilla.mozilla.org/show_bug.cgi?id=500277) but it really doesn't matter now. We do need to avoid updating these users to a build that will crash, and do the same "unsupported" messaging we're doing for old

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Gregory Szorc
On Fri, May 6, 2016 at 7:10 AM, Mike Hoye wrote: > On 2016-05-06 12:26 AM, Gregory Szorc wrote: > >> FWIW, the crashes we've seen so far are from incorrectly emitted movss >> instructions. This instruction is part of the original SSE instruction >> set, >> which was initially

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Kyle Huey
I think we should strongly consider just requiring SSE at this point. - Kyle On Fri, May 6, 2016 at 7:10 AM, Mike Hoye wrote: > On 2016-05-06 12:26 AM, Gregory Szorc wrote: > >> FWIW, the crashes we've seen so far are from incorrectly emitted movss >> instructions. This

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Mike Hoye
On 2016-05-06 12:26 AM, Gregory Szorc wrote: FWIW, the crashes we've seen so far are from incorrectly emitted movss instructions. This instruction is part of the original SSE instruction set, which was initially unveiled by Intel on the Pentium 3 in 1999 and later by AMD on the Duron and Athlon

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Mike Hommey
On Fri, May 06, 2016 at 12:25:54AM -0700, Chris Peterson wrote: > On 5/5/16 9:26 PM, Gregory Szorc wrote: > > I'll try to stand up automation to ensure central remains buildable with > > VS2015. This will add extra work and strain on automation and likely make > > writing C++ that remains

Re: Reverting to VS2013 on central and aurora

2016-05-06 Thread Chris Peterson
On 5/5/16 9:26 PM, Gregory Szorc wrote: I'll try to stand up automation to ensure central remains buildable with VS2015. This will add extra work and strain on automation and likely make writing C++ that remains compatible with multiple Visual Studio versions slightly harder. This is