Skip to content

Commit 40879f3

Browse files
committed
Upgrade V8 to 3.8.8
1 parent b1b16d1 commit 40879f3

File tree

141 files changed

+2208
-3930
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

141 files changed

+2208
-3930
lines changed

deps/v8/ChangeLog

+38
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,41 @@
1+
2012-01-23: Version 3.8.8
2+
3+
Limited number of loop iterations in Heap::ReserveSpace
4+
(Chromium issue 99027).
5+
6+
Fixed solaris build (VirtualMemory) (issue 1761).
7+
8+
Fixed strict vs. non-strict handling of function proxies in
9+
higher-order array and string methods.
10+
11+
Enabled asynchronous remote debugging with d8 (issue 1691).
12+
13+
Stability and performance improvements on all platforms.
14+
15+
16+
2012-01-19: Version 3.8.7
17+
18+
Ensure that LRandom restores rsi after call to the C function on x64.
19+
(Chromium issue http://crbug.com/110509)
20+
21+
Fixing include issues on *bsd when building with scons.
22+
(issue 1897)
23+
24+
Provide a switch to specify -fno-strict-aliasing
25+
(issue 1887)
26+
27+
Move WIN32 define from standalone.gypi to common.gypi
28+
(issue 1760)
29+
30+
Fix corner-case in heap size estimation.
31+
(issue 1893)
32+
33+
Fix and enable NEW_NON_STRICT_FAST ArgumentsAccess stub on x64.
34+
(issue 1903)
35+
36+
Performance improvements and bug fixes.
37+
38+
139
2012-01-16: Version 3.8.6
240

341
Add primitive WebGL array support to d8.

deps/v8/Makefile

+39-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2011 the V8 project authors. All rights reserved.
1+
# Copyright 2012 the V8 project authors. All rights reserved.
22
# Redistribution and use in source and binary forms, with or without
33
# modification, are permitted provided that the following conditions are
44
# met:
@@ -33,6 +33,8 @@ OUTDIR ?= out
3333
TESTJOBS ?= -j16
3434
GYPFLAGS ?=
3535
TESTFLAGS ?=
36+
ANDROID_NDK_ROOT ?=
37+
ANDROID_TOOL_PREFIX = $(ANDROID_NDK_ROOT)/toolchain/bin/arm-linux-androideabi
3638

3739
# Special build flags. Use them like this: "make library=shared"
3840

@@ -85,6 +87,10 @@ endif
8587
ifeq ($(presubmit), no)
8688
TESTFLAGS += --no-presubmit
8789
endif
90+
# strictaliasing=off (workaround for GCC-4.5)
91+
ifeq ($(strictaliasing), off)
92+
GYPFLAGS += -Dv8_no_strict_aliasing=1
93+
endif
8894

8995
# ----------------- available targets: --------------------
9096
# - "dependencies": pulls in external dependencies (currently: GYP)
@@ -93,6 +99,7 @@ endif
9399
# - every combination <arch>.<mode>, e.g. "ia32.release"
94100
# - "native": current host's architecture, release mode
95101
# - any of the above with .check appended, e.g. "ia32.release.check"
102+
# - "android": cross-compile for Android/ARM (release mode)
96103
# - default (no target specified): build all DEFAULT_ARCHES and MODES
97104
# - "check": build all targets and run all tests
98105
# - "<arch>.clean" for any <arch> in ARCHES
@@ -120,7 +127,8 @@ ENVFILE = $(OUTDIR)/environment
120127

121128
.PHONY: all check clean dependencies $(ENVFILE).new native \
122129
$(ARCHES) $(MODES) $(BUILDS) $(CHECKS) $(addsuffix .clean,$(ARCHES)) \
123-
$(addsuffix .check,$(MODES)) $(addsuffix .check,$(ARCHES))
130+
$(addsuffix .check,$(MODES)) $(addsuffix .check,$(ARCHES)) \
131+
must-set-ANDROID_NDK_ROOT
124132

125133
# Target definitions. "all" is the default.
126134
all: $(MODES)
@@ -144,6 +152,18 @@ native: $(OUTDIR)/Makefile-native
144152
CXX="$(CXX)" LINK="$(LINK)" BUILDTYPE=Release \
145153
builddir="$(shell pwd)/$(OUTDIR)/$@"
146154

155+
# TODO(jkummerow): add "android.debug" when we need it.
156+
android android.release: $(OUTDIR)/Makefile-android
157+
@$(MAKE) -C "$(OUTDIR)" -f Makefile-android \
158+
CXX="$(ANDROID_TOOL_PREFIX)-g++" \
159+
AR="$(ANDROID_TOOL_PREFIX)-ar" \
160+
RANLIB="$(ANDROID_TOOL_PREFIX)-ranlib" \
161+
CC="$(ANDROID_TOOL_PREFIX)-gcc" \
162+
LD="$(ANDROID_TOOL_PREFIX)-ld" \
163+
LINK="$(ANDROID_TOOL_PREFIX)-g++" \
164+
BUILDTYPE=Release \
165+
builddir="$(shell pwd)/$(OUTDIR)/android.release"
166+
147167
# Test targets.
148168
check: all
149169
@tools/test-wrapper-gypbuild.py $(TESTJOBS) --outdir=$(OUTDIR) \
@@ -178,6 +198,11 @@ native.clean:
178198
rm -rf $(OUTDIR)/native
179199
find $(OUTDIR) -regex '.*\(host\|target\)-native\.mk' -delete
180200

201+
android.clean:
202+
rm -f $(OUTDIR)/Makefile-android
203+
rm -rf $(OUTDIR)/android.release
204+
find $(OUTDIR) -regex '.*\(host\|target\)-android\.mk' -delete
205+
181206
clean: $(addsuffix .clean,$(ARCHES)) native.clean
182207

183208
# GYP file generation targets.
@@ -205,6 +230,18 @@ $(OUTDIR)/Makefile-native: $(GYPFILES) $(ENVFILE)
205230
build/gyp/gyp --generator-output="$(OUTDIR)" build/all.gyp \
206231
-Ibuild/standalone.gypi --depth=. -S-native $(GYPFLAGS)
207232

233+
$(OUTDIR)/Makefile-android: $(GYPFILES) $(ENVFILE) build/android.gypi \
234+
must-set-ANDROID_NDK_ROOT
235+
CC="${ANDROID_TOOL_PREFIX}-gcc" \
236+
build/gyp/gyp --generator-output="$(OUTDIR)" build/all.gyp \
237+
-Ibuild/standalone.gypi --depth=. -Ibuild/android.gypi \
238+
-S-android $(GYPFLAGS)
239+
240+
must-set-ANDROID_NDK_ROOT:
241+
ifndef ANDROID_NDK_ROOT
242+
$(error ANDROID_NDK_ROOT is not set)
243+
endif
244+
208245
# Replaces the old with the new environment file if they're different, which
209246
# will trigger GYP to regenerate Makefiles.
210247
$(ENVFILE): $(ENVFILE).new

deps/v8/SConstruct

+9-8
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import os
3333
from os.path import join, dirname, abspath
3434
from types import DictType, StringTypes
3535
root_dir = dirname(File('SConstruct').rfile().abspath)
36+
src_dir = join(root_dir, 'src')
3637
sys.path.insert(0, join(root_dir, 'tools'))
3738
import js2c, utils
3839

@@ -53,7 +54,7 @@ GCC_DTOA_EXTRA_CCFLAGS = []
5354

5455
LIBRARY_FLAGS = {
5556
'all': {
56-
'CPPPATH': [join(root_dir, 'src')],
57+
'CPPPATH': [src_dir],
5758
'regexp:interpreted': {
5859
'CPPDEFINES': ['V8_INTERPRETED_REGEXP']
5960
},
@@ -111,26 +112,26 @@ LIBRARY_FLAGS = {
111112
}
112113
},
113114
'os:freebsd': {
114-
'CPPPATH' : ['/usr/local/include'],
115+
'CPPPATH' : [src_dir, '/usr/local/include'],
115116
'LIBPATH' : ['/usr/local/lib'],
116117
'CCFLAGS': ['-ansi'],
117118
'LIBS': ['execinfo']
118119
},
119120
'os:openbsd': {
120-
'CPPPATH' : ['/usr/local/include'],
121+
'CPPPATH' : [src_dir, '/usr/local/include'],
121122
'LIBPATH' : ['/usr/local/lib'],
122123
'CCFLAGS': ['-ansi'],
123124
},
124125
'os:solaris': {
125126
# On Solaris, to get isinf, INFINITY, fpclassify and other macros one
126127
# needs to define __C99FEATURES__.
127128
'CPPDEFINES': ['__C99FEATURES__'],
128-
'CPPPATH' : ['/usr/local/include'],
129+
'CPPPATH' : [src_dir, '/usr/local/include'],
129130
'LIBPATH' : ['/usr/local/lib'],
130131
'CCFLAGS': ['-ansi'],
131132
},
132133
'os:netbsd': {
133-
'CPPPATH' : ['/usr/pkg/include'],
134+
'CPPPATH' : [src_dir, '/usr/pkg/include'],
134135
'LIBPATH' : ['/usr/pkg/lib'],
135136
},
136137
'os:win32': {
@@ -403,7 +404,7 @@ DTOA_EXTRA_FLAGS = {
403404

404405
CCTEST_EXTRA_FLAGS = {
405406
'all': {
406-
'CPPPATH': [join(root_dir, 'src')],
407+
'CPPPATH': [src_dir],
407408
'library:shared': {
408409
'CPPDEFINES': ['USING_V8_SHARED']
409410
},
@@ -460,7 +461,7 @@ CCTEST_EXTRA_FLAGS = {
460461

461462
SAMPLE_FLAGS = {
462463
'all': {
463-
'CPPPATH': [join(abspath('.'), 'include')],
464+
'CPPPATH': [join(root_dir, 'include')],
464465
'library:shared': {
465466
'CPPDEFINES': ['USING_V8_SHARED']
466467
},
@@ -643,7 +644,7 @@ SAMPLE_FLAGS = {
643644

644645
PREPARSER_FLAGS = {
645646
'all': {
646-
'CPPPATH': [join(abspath('.'), 'include'), join(abspath('.'), 'src')],
647+
'CPPPATH': [join(root_dir, 'include'), src_dir],
647648
'library:shared': {
648649
'CPPDEFINES': ['USING_V8_SHARED']
649650
},

0 commit comments

Comments
 (0)