diff options
author | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-24 20:19:06 +0000 |
---|---|---|
committer | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-24 20:19:06 +0000 |
commit | 2fd534af918f83ac8982bc4db304a08a75cfae39 (patch) | |
tree | 0da2b97a161538822015ad4d4ccdbe5f99b24569 /build | |
parent | 1480c1f9c25ce91f827e28602d5de83e7e88b800 (diff) | |
download | chromium_src-2fd534af918f83ac8982bc4db304a08a75cfae39.zip chromium_src-2fd534af918f83ac8982bc4db304a08a75cfae39.tar.gz chromium_src-2fd534af918f83ac8982bc4db304a08a75cfae39.tar.bz2 |
Linux: back off build to only require P3
The current linux version of chromium will instantly crash with SIGILL
on an Athlon/AthlonXP/AthlonMP class processor. It will presumably do
the same thing on the pentium3. This is because it's built to use
SSE2 instructions to implement floating point.
We cannot build for i686 normally because we can't have the floating
point results be different between debug/opt builds. Without forcing
it to use SSE that happens (and it has a lot of noticeable effects on
our tests).
For builds which users actually use, I expect the distros will back
off the compiler flags because people won't be using those builds for
development.
However, I'm landing this patch because there's little point in
causing problems for SSE1 only chips because it will only make 3rd
party contributions harder. Thanks.
The only downside is minutely slower double precision floating point.
(Patch from Elladan)
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12389 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'build')
-rw-r--r-- | build/SConscript.main | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/build/SConscript.main b/build/SConscript.main index 10623c7..f7ab786 100644 --- a/build/SConscript.main +++ b/build/SConscript.main @@ -482,7 +482,7 @@ if not root_env.get('_GYP'): ) linux_env.Append( ASFLAGS = ['-32'], - CCFLAGS = ['-m32', '-pthread', '-march=pentium4', '-fno-exceptions', + CCFLAGS = ['-m32', '-pthread', '-march=pentium3', '-fno-exceptions', # All floating-point computations on x87 happens in 80-bit precision. # Because the C and C++ language standards allow the compiler to keep the # floating-point values in higher precision than what's specified in the @@ -504,7 +504,7 @@ linux_env.Append( # the floating-point value used during computation does not change # depending on how the compiler optimized the code, since the value is # always kept in its specified precision. - '-msse2', '-mfpmath=sse'], + '-msse', '-mfpmath=sse'], # GCC will generate ident directives with the GCC version. Accumulate # these all up and you end up with ~80K repeated in a .comment section. CCFLAGS_OPTIMIZED = ['-fno-ident'], |