Land patch from Craig Schlenter to make V8 build and run when compiled
with -O3 on gcc 4.4. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
d6742c7fae
commit
0582ee5da5
1
AUTHORS
1
AUTHORS
@ -13,3 +13,4 @@ Paolo Giarrusso <p.giarrusso@gmail.com>
|
||||
Daniel Andersson <kodandersson@gmail.com>
|
||||
Alexander Botero-Lowry <alexbl@FreeBSD.org>
|
||||
Matt Hanselman <mjhanselman@gmail.com>
|
||||
Craig Schlenter <craig.schlenter@gmail.com>
|
||||
|
15
SConstruct
15
SConstruct
@ -43,6 +43,16 @@ ANDROID_TOP = os.environ.get('TOP')
|
||||
if ANDROID_TOP is None:
|
||||
ANDROID_TOP=""
|
||||
|
||||
# TODO: Sort these issues out properly but as a temporary solution for gcc 4.4
|
||||
# on linux we need these compiler flags to avoid a mksnapshot segfault, avoid
|
||||
# crashes in the v8 test suite and avoid dtoa.c strict aliasing issues
|
||||
if os.environ.get('GCC_VERSION') == "44":
|
||||
GCC_EXTRA_CCFLAGS = ['-fno-tree-vectorize', '-fno-tree-vrp']
|
||||
GCC_DTOA_EXTRA_CCFLAGS = ['-fno-strict-aliasing']
|
||||
else:
|
||||
GCC_EXTRA_CCFLAGS = []
|
||||
GCC_DTOA_EXTRA_CCFLAGS = []
|
||||
|
||||
ANDROID_FLAGS = ['-march=armv5te',
|
||||
'-mtune=xscale',
|
||||
'-msoft-float',
|
||||
@ -109,7 +119,7 @@ LIBRARY_FLAGS = {
|
||||
}
|
||||
},
|
||||
'os:linux': {
|
||||
'CCFLAGS': ['-ansi'],
|
||||
'CCFLAGS': ['-ansi'] + GCC_EXTRA_CCFLAGS,
|
||||
'library:shared': {
|
||||
'LIBS': ['pthread']
|
||||
}
|
||||
@ -278,7 +288,8 @@ MKSNAPSHOT_EXTRA_FLAGS = {
|
||||
DTOA_EXTRA_FLAGS = {
|
||||
'gcc': {
|
||||
'all': {
|
||||
'WARNINGFLAGS': ['-Werror', '-Wno-uninitialized']
|
||||
'WARNINGFLAGS': ['-Werror', '-Wno-uninitialized'],
|
||||
'CCFLAGS': GCC_DTOA_EXTRA_CCFLAGS
|
||||
}
|
||||
},
|
||||
'msvc': {
|
||||
|
@ -29,6 +29,7 @@
|
||||
'variables': {
|
||||
'chromium_code': 1,
|
||||
'msvs_use_common_release': 0,
|
||||
'gcc_version%': 'unknown',
|
||||
'base_source_files': [
|
||||
'../../src/arm/assembler-arm-inl.h',
|
||||
'../../src/arm/assembler-arm.cc',
|
||||
@ -299,6 +300,18 @@
|
||||
'-fomit-frame-pointer',
|
||||
'-O3',
|
||||
],
|
||||
'conditions': [
|
||||
[ 'gcc_version=="44"', {
|
||||
'cflags': [
|
||||
# Avoid gcc 4.4 strict aliasing issues in dtoa.c
|
||||
'-fno-strict-aliasing',
|
||||
# Avoid gcc 4.4 mksnapshot segfault.
|
||||
'-fno-tree-vectorize',
|
||||
# Avoid crashes with gcc 4.4 in the v8 test suite.
|
||||
'-fno-tree-vrp',
|
||||
],
|
||||
}],
|
||||
],
|
||||
'cflags_cc': [
|
||||
'-fno-rtti',
|
||||
],
|
||||
|
Loading…
Reference in New Issue
Block a user