diff options
| author | Steve Block <steveblock@google.com> | 2009-11-05 08:53:23 +0000 |
|---|---|---|
| committer | Steve Block <steveblock@google.com> | 2009-11-05 08:53:23 +0000 |
| commit | 3ce2e2076e8e3e60cf1810eec160ea2d8557e9e7 (patch) | |
| tree | 5f5d61c95b42f8e38a8a0c22cb7ad0506984d725 /tools | |
| parent | a7e24c173cf37484693b9abb38e494fa7bd7baeb (diff) | |
| download | android_external_v8-3ce2e2076e8e3e60cf1810eec160ea2d8557e9e7.tar.gz android_external_v8-3ce2e2076e8e3e60cf1810eec160ea2d8557e9e7.tar.bz2 android_external_v8-3ce2e2076e8e3e60cf1810eec160ea2d8557e9e7.zip | |
Update V8 to r3121 as required for WebKit update.
Change-Id: Ic53e0aef9a9eb9b71ee7d25a8aef61520bba899c
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/gyp/v8.gyp | 14 | ||||
| -rwxr-xr-x | tools/test.py | 8 | ||||
| -rw-r--r-- | tools/tickprocessor.js | 49 | ||||
| -rw-r--r-- | tools/v8.xcodeproj/project.pbxproj | 37 | ||||
| -rw-r--r-- | tools/visual_studio/v8_base.vcproj | 18 | ||||
| -rw-r--r-- | tools/visual_studio/v8_base_arm.vcproj | 18 | ||||
| -rw-r--r-- | tools/visual_studio/v8_base_x64.vcproj | 2 |
7 files changed, 135 insertions, 11 deletions
diff --git a/tools/gyp/v8.gyp b/tools/gyp/v8.gyp index 46a00f4c..5e2bb88e 100644 --- a/tools/gyp/v8.gyp +++ b/tools/gyp/v8.gyp @@ -256,14 +256,16 @@ '../../src/execution.h', '../../src/factory.cc', '../../src/factory.h', + '../../src/fast-codegen.cc', + '../../src/fast-codegen.h', '../../src/flag-definitions.h', '../../src/flags.cc', '../../src/flags.h', + '../../src/frame-element.cc', + '../../src/frame-element.h', '../../src/frames-inl.h', '../../src/frames.cc', '../../src/frames.h', - '../../src/frame-element.cc', - '../../src/frame-element.h', '../../src/func-name-inferrer.cc', '../../src/func-name-inferrer.h', '../../src/global-handles.cc', @@ -291,11 +293,12 @@ '../../src/jsregexp.h', '../../src/list-inl.h', '../../src/list.h', - '../../src/log.cc', + '../../src/location.h', '../../src/log-inl.h', - '../../src/log.h', '../../src/log-utils.cc', '../../src/log-utils.h', + '../../src/log.cc', + '../../src/log.h', '../../src/macro-assembler.h', '../../src/mark-compact.cc', '../../src/mark-compact.h', @@ -394,6 +397,7 @@ '../../src/arm/cpu-arm.cc', '../../src/arm/debug-arm.cc', '../../src/arm/disasm-arm.cc', + '../../src/arm/fast-codegen-arm.cc', '../../src/arm/frames-arm.cc', '../../src/arm/frames-arm.h', '../../src/arm/ic-arm.cc', @@ -423,6 +427,7 @@ '../../src/ia32/cpu-ia32.cc', '../../src/ia32/debug-ia32.cc', '../../src/ia32/disasm-ia32.cc', + '../../src/ia32/fast-codegen-ia32.cc', '../../src/ia32/frames-ia32.cc', '../../src/ia32/frames-ia32.h', '../../src/ia32/ic-ia32.cc', @@ -451,6 +456,7 @@ '../../src/x64/cpu-x64.cc', '../../src/x64/debug-x64.cc', '../../src/x64/disasm-x64.cc', + '../../src/x64/fast-codegen-x64.cc', '../../src/x64/frames-x64.cc', '../../src/x64/frames-x64.h', '../../src/x64/ic-x64.cc', diff --git a/tools/test.py b/tools/test.py index 3a60c591..586925ae 100755 --- a/tools/test.py +++ b/tools/test.py @@ -326,6 +326,7 @@ class CommandOutput(object): self.timed_out = timed_out self.stdout = stdout self.stderr = stderr + self.failed = None class TestCase(object): @@ -333,7 +334,6 @@ class TestCase(object): def __init__(self, context, path): self.path = path self.context = context - self.failed = None self.duration = None def IsNegative(self): @@ -343,9 +343,9 @@ class TestCase(object): return cmp(other.duration, self.duration) def DidFail(self, output): - if self.failed is None: - self.failed = self.IsFailureOutput(output) - return self.failed + if output.failed is None: + output.failed = self.IsFailureOutput(output) + return output.failed def IsFailureOutput(self, output): return output.exit_code != 0 diff --git a/tools/tickprocessor.js b/tools/tickprocessor.js index 84f0eea5..fd23987d 100644 --- a/tools/tickprocessor.js +++ b/tools/tickprocessor.js @@ -75,7 +75,18 @@ function TickProcessor( 'tick': { parsers: [this.createAddressParser('code'), this.createAddressParser('stack'), parseInt, 'var-args'], processor: this.processTick, backrefs: true }, + 'heap-sample-begin': { parsers: [null, null, parseInt], + processor: this.processHeapSampleBegin }, + 'heap-sample-end': { parsers: [null, null], + processor: this.processHeapSampleEnd }, + 'heap-js-prod-item': { parsers: [null, 'var-args'], + processor: this.processJSProducer, backrefs: true }, + // Ignored events. 'profiler': null, + 'heap-sample-stats': null, + 'heap-sample-item': null, + 'heap-js-cons-item': null, + 'heap-js-ret-item': null, // Obsolete row types. 'code-allocate': null, 'begin-code-region': null, @@ -113,6 +124,9 @@ function TickProcessor( // Count each tick as a time unit. this.viewBuilder_ = new devtools.profiler.ViewBuilder(1); this.lastLogFileName_ = null; + + this.generation_ = 1; + this.currentProducerProfile_ = null; }; inherits(TickProcessor, devtools.profiler.LogReader); @@ -220,6 +234,41 @@ TickProcessor.prototype.processTick = function(pc, sp, vmState, stack) { }; +TickProcessor.prototype.processHeapSampleBegin = function(space, state, ticks) { + if (space != 'Heap') return; + this.currentProducerProfile_ = new devtools.profiler.CallTree(); +}; + + +TickProcessor.prototype.processHeapSampleEnd = function(space, state) { + if (space != 'Heap' || !this.currentProducerProfile_) return; + + print('Generation ' + this.generation_ + ':'); + var tree = this.currentProducerProfile_; + tree.computeTotalWeights(); + var producersView = this.viewBuilder_.buildView(tree); + // Sort by total time, desc, then by name, desc. + producersView.sort(function(rec1, rec2) { + return rec2.totalTime - rec1.totalTime || + (rec2.internalFuncName < rec1.internalFuncName ? -1 : 1); }); + this.printHeavyProfile(producersView.head.children); + + this.currentProducerProfile_ = null; + this.generation_++; +}; + + +TickProcessor.prototype.processJSProducer = function(constructor, stack) { + if (!this.currentProducerProfile_) return; + if (stack.length == 0) return; + var first = stack.shift(); + var processedStack = + this.profile_.resolveAndFilterFuncs_(this.processStack(first, stack)); + processedStack.unshift(constructor); + this.currentProducerProfile_.addPath(processedStack); +}; + + TickProcessor.prototype.printStatistics = function() { print('Statistical profiling result from ' + this.lastLogFileName_ + ', (' + this.ticks_.total + diff --git a/tools/v8.xcodeproj/project.pbxproj b/tools/v8.xcodeproj/project.pbxproj index 2d386811..d2af6262 100644 --- a/tools/v8.xcodeproj/project.pbxproj +++ b/tools/v8.xcodeproj/project.pbxproj @@ -56,6 +56,7 @@ 89495E480E79FC23001F68C3 /* compilation-cache.cc in Sources */ = {isa = PBXBuildFile; fileRef = 89495E460E79FC23001F68C3 /* compilation-cache.cc */; }; 89495E490E79FC23001F68C3 /* compilation-cache.cc in Sources */ = {isa = PBXBuildFile; fileRef = 89495E460E79FC23001F68C3 /* compilation-cache.cc */; }; 8956B6CF0F5D86730033B5A2 /* debug-agent.cc in Sources */ = {isa = PBXBuildFile; fileRef = 8956B6CD0F5D86570033B5A2 /* debug-agent.cc */; }; + 895FA753107FFED3006F39D4 /* constants-arm.cc in Sources */ = {isa = PBXBuildFile; fileRef = 895FA748107FFE73006F39D4 /* constants-arm.cc */; }; 896FD03A0E78D717003DFB6A /* libv8-arm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 89F23C870E78D5B2006B2466 /* libv8-arm.a */; }; 897F767F0E71B690007ACF34 /* shell.cc in Sources */ = {isa = PBXBuildFile; fileRef = 897FF1B50E719C0900D62E90 /* shell.cc */; }; 897F76850E71B6B1007ACF34 /* libv8.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 8970F2F00E719FB2006AE7B5 /* libv8.a */; }; @@ -309,6 +310,14 @@ 89495E470E79FC23001F68C3 /* compilation-cache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "compilation-cache.h"; sourceTree = "<group>"; }; 8956B6CD0F5D86570033B5A2 /* debug-agent.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = "debug-agent.cc"; sourceTree = "<group>"; }; 8956B6CE0F5D86570033B5A2 /* debug-agent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "debug-agent.h"; sourceTree = "<group>"; }; + 895FA720107FFB15006F39D4 /* jump-target-inl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "jump-target-inl.h"; sourceTree = "<group>"; }; + 895FA725107FFB57006F39D4 /* codegen-ia32-inl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "codegen-ia32-inl.h"; path = "ia32/codegen-ia32-inl.h"; sourceTree = "<group>"; }; + 895FA72A107FFB85006F39D4 /* register-allocator-ia32-inl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "register-allocator-ia32-inl.h"; path = "ia32/register-allocator-ia32-inl.h"; sourceTree = "<group>"; }; + 895FA72B107FFB85006F39D4 /* register-allocator-ia32.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "register-allocator-ia32.h"; path = "ia32/register-allocator-ia32.h"; sourceTree = "<group>"; }; + 895FA748107FFE73006F39D4 /* constants-arm.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "constants-arm.cc"; path = "arm/constants-arm.cc"; sourceTree = "<group>"; }; + 895FA74B107FFE82006F39D4 /* codegen-arm-inl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "codegen-arm-inl.h"; path = "arm/codegen-arm-inl.h"; sourceTree = "<group>"; }; + 895FA750107FFEAE006F39D4 /* register-allocator-arm-inl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "register-allocator-arm-inl.h"; path = "arm/register-allocator-arm-inl.h"; sourceTree = "<group>"; }; + 895FA751107FFEAE006F39D4 /* register-allocator-arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "register-allocator-arm.h"; path = "arm/register-allocator-arm.h"; sourceTree = "<group>"; }; 8964482B0E9C00F700E7C516 /* codegen-ia32.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "codegen-ia32.h"; path = "ia32/codegen-ia32.h"; sourceTree = "<group>"; }; 896448BC0E9D530500E7C516 /* codegen-arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "codegen-arm.h"; path = "arm/codegen-arm.h"; sourceTree = "<group>"; }; 8970F2F00E719FB2006AE7B5 /* libv8.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libv8.a; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -662,8 +671,10 @@ 897FF1110E719B8F00D62E90 /* code-stubs.cc */, 897FF1120E719B8F00D62E90 /* code-stubs.h */, 897FF1130E719B8F00D62E90 /* code.h */, + 895FA74B107FFE82006F39D4 /* codegen-arm-inl.h */, 897FF1140E719B8F00D62E90 /* codegen-arm.cc */, 896448BC0E9D530500E7C516 /* codegen-arm.h */, + 895FA725107FFB57006F39D4 /* codegen-ia32-inl.h */, 897FF1150E719B8F00D62E90 /* codegen-ia32.cc */, 8964482B0E9C00F700E7C516 /* codegen-ia32.h */, 897FF1160E719B8F00D62E90 /* codegen-inl.h */, @@ -673,6 +684,7 @@ 89495E470E79FC23001F68C3 /* compilation-cache.h */, 897FF1190E719B8F00D62E90 /* compiler.cc */, 897FF11A0E719B8F00D62E90 /* compiler.h */, + 895FA748107FFE73006F39D4 /* constants-arm.cc */, 897FF11B0E719B8F00D62E90 /* constants-arm.h */, 897FF11C0E719B8F00D62E90 /* contexts.cc */, 897FF11D0E719B8F00D62E90 /* contexts.h */, @@ -739,6 +751,7 @@ 89A15C670EE4665300B48DEB /* interpreter-irregexp.h */, 897FF14E0E719B8F00D62E90 /* jsregexp.cc */, 897FF14F0E719B8F00D62E90 /* jsregexp.h */, + 895FA720107FFB15006F39D4 /* jump-target-inl.h */, 58950D4E0F55514900F3E8BA /* jump-target-arm.cc */, 58950D4F0F55514900F3E8BA /* jump-target-ia32.cc */, 58950D500F55514900F3E8BA /* jump-target.cc */, @@ -794,8 +807,12 @@ 89A15C7A0EE466D000B48DEB /* regexp-macro-assembler.h */, 8944AD0E0F1D4D3A0028D560 /* regexp-stack.cc */, 8944AD0F0F1D4D3A0028D560 /* regexp-stack.h */, + 895FA750107FFEAE006F39D4 /* register-allocator-arm-inl.h */, 58950D520F55514900F3E8BA /* register-allocator-arm.cc */, + 895FA751107FFEAE006F39D4 /* register-allocator-arm.h */, + 895FA72A107FFB85006F39D4 /* register-allocator-ia32-inl.h */, 58950D530F55514900F3E8BA /* register-allocator-ia32.cc */, + 895FA72B107FFB85006F39D4 /* register-allocator-ia32.h */, 893A722D0F7B4A7100303DD2 /* register-allocator-inl.h */, 58950D540F55514900F3E8BA /* register-allocator.cc */, 58950D550F55514900F3E8BA /* register-allocator.h */, @@ -1238,6 +1255,7 @@ 89F23C4B0E78D5B2006B2466 /* codegen.cc in Sources */, 89495E490E79FC23001F68C3 /* compilation-cache.cc in Sources */, 89F23C4C0E78D5B2006B2466 /* compiler.cc in Sources */, + 895FA753107FFED3006F39D4 /* constants-arm.cc in Sources */, 89F23C4D0E78D5B2006B2466 /* contexts.cc in Sources */, 89F23C4E0E78D5B2006B2466 /* conversions.cc in Sources */, 89F23C4F0E78D5B2006B2466 /* counters.cc in Sources */, @@ -1467,6 +1485,7 @@ V8_NATIVE_REGEXP, DEBUG, V8_ENABLE_CHECKS, + ENABLE_DEBUGGER_SUPPORT, ); HEADER_SEARCH_PATHS = ../src; PRODUCT_NAME = v8_shell; @@ -1481,6 +1500,7 @@ V8_TARGET_ARCH_IA32, V8_NATIVE_REGEXP, NDEBUG, + ENABLE_DEBUGGER_SUPPORT, ); HEADER_SEARCH_PATHS = ../src; PRODUCT_NAME = v8_shell; @@ -1514,6 +1534,7 @@ V8_TARGET_ARCH_IA32, V8_NATIVE_REGEXP, NDEBUG, + ENABLE_DEBUGGER_SUPPORT, ); HEADER_SEARCH_PATHS = ../src; PRODUCT_NAME = v8; @@ -1524,6 +1545,10 @@ 897F767C0E71B4CC007ACF34 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + V8_TARGET_ARCH_IA32, + ); HEADER_SEARCH_PATHS = ../src; PRODUCT_NAME = v8_shell; }; @@ -1532,6 +1557,10 @@ 897F767D0E71B4CC007ACF34 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + V8_TARGET_ARCH_IA32, + ); HEADER_SEARCH_PATHS = ../src; PRODUCT_NAME = v8_shell; }; @@ -1571,6 +1600,10 @@ 89F23C930E78D5B6006B2466 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + V8_TARGET_ARCH_ARM, + ); HEADER_SEARCH_PATHS = ../src; PRODUCT_NAME = "v8_shell-arm"; }; @@ -1579,6 +1612,10 @@ 89F23C940E78D5B6006B2466 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + V8_TARGET_ARCH_ARM, + ); HEADER_SEARCH_PATHS = ../src; PRODUCT_NAME = "v8_shell-arm"; }; diff --git a/tools/visual_studio/v8_base.vcproj b/tools/visual_studio/v8_base.vcproj index 7a013c0c..fc7402ae 100644 --- a/tools/visual_studio/v8_base.vcproj +++ b/tools/visual_studio/v8_base.vcproj @@ -388,6 +388,18 @@ RelativePath="..\..\src\factory.h" > </File> + <File + RelativePath="..\..\src\ia32\fast-codegen-ia32.cc" + > + </File> + <File + RelativePath="..\..\src\fast-codegen.cc" + > + </File> + <File + RelativePath="..\..\src\fast-codegen.h" + > + </File> <File RelativePath="..\..\src\flags.cc" > @@ -545,6 +557,10 @@ > </File> <File + RelativePath="..\..\src\location.h" + > + </File> + <File RelativePath="..\..\src\log.cc" > </File> @@ -945,7 +961,7 @@ Name="include" > <File - RelativePath="..\..\include\debug.h" + RelativePath="..\..\include\v8-debug.h" > </File> <File diff --git a/tools/visual_studio/v8_base_arm.vcproj b/tools/visual_studio/v8_base_arm.vcproj index abdb4181..fca4a960 100644 --- a/tools/visual_studio/v8_base_arm.vcproj +++ b/tools/visual_studio/v8_base_arm.vcproj @@ -396,6 +396,18 @@ RelativePath="..\..\src\factory.h" > </File> + <File + RelativePath="..\..\src\arm\fast-codegen-arm.cc" + > + </File> + <File + RelativePath="..\..\src\fast-codegen.cc" + > + </File> + <File + RelativePath="..\..\src\fast-codegen.h" + > + </File> <File RelativePath="..\..\src\flags.cc" > @@ -549,6 +561,10 @@ > </File> <File + RelativePath="..\..\src\location.h" + > + </File> + <File RelativePath="..\..\src\log.cc" > </File> @@ -957,7 +973,7 @@ Name="include" > <File - RelativePath="..\..\include\debug.h" + RelativePath="..\..\include\v8-debug.h" > </File> <File diff --git a/tools/visual_studio/v8_base_x64.vcproj b/tools/visual_studio/v8_base_x64.vcproj index 7b8b4d35..a8c8b55f 100644 --- a/tools/visual_studio/v8_base_x64.vcproj +++ b/tools/visual_studio/v8_base_x64.vcproj @@ -945,7 +945,7 @@ Name="include" > <File - RelativePath="..\..\include\debug.h" + RelativePath="..\..\include\v8-debug.h" > </File> <File |
