What about SSE3/SSE4 support?

Frequently Asked Questions about the Pale Moon browser and their answers.

Moderator: satrow

User avatar
Pale Moon guru
Pale Moon guru
Posts: 23640
Joined: 2011-08-28, 17:27
Location: 58°2'16"N 14°58'31"E

What about SSE3/SSE4 support?

Unread post by Moonchild » 2011-10-14, 10:00

What about SSE3/SSE4 support?

This will not be specifically used in Pale Moon, for a few reasons:
  • The most important one: the compiler used doesn't include support for compiling with these SIMD extensions (in fact, SSE2 support is already half-broken; go Microsoft! :roll:). This would mean that if it were desired, it would have to be manually programmed in assembly for every single function where it would be desired.
  • The specific advantages of using SSE3 and SSE4 would be mostly interesting for video and sound processing, not for a browser. The areas where these kinds of calculations are used (graphics libraries) are already manually optimized.
  • Every higher SSE level further limits the amount of computers the browser will run on. Pale Moon aims to be a middle road, to cut away support for archaic architectures, but still allow a fairly broad user base.
  • Using a different compiler that supports more advanced SIMD instruction sets (Like Intel's) would potentially be an option, but compiling with a different compiler on Windows is not properly supported in the Firefox code base, and has shown to lead to either build errors or totally unstable binaries.
Improving Mozilla code: You know you're on the right track with code changes when you spend the majority of your time deleting code.

"If you want to build a better world for yourself, you have to be willing to build one for everybody." -- Coyote Osborne
"I'm afraid you have me mistaken for someone who can be shamed by a child." -- Quillspawn