Author: [email protected]
Date: Tue Jun 16 11:57:26 2009
New Revision: 2194
Modified:
branches/bleeding_edge/tools/tickprocessor.js
Log:
Fix the problem with JS entries in tickprocessor.
The main problem was due to the following: after Erik had fixed the logger
to report library addresses, tickprocessor started to add to the code map
entries that covered almost entire memory. This happened because
tickprocessor contains a heuristic to bias addresses of functions from
dynamic libraries:
if (funcInfo.start < libStart && funcInfo.start < libEnd - libStart) {
funcInfo.start += libStart;
}
And, as tickprocessor tried to process all symbols from the library,
including data entries, which can be outside reported library addresses
range, the second condition failed, and funcInfo.start remained unbiased.
Review URL: http://codereview.chromium.org/125192
Modified: branches/bleeding_edge/tools/tickprocessor.js
==============================================================================
--- branches/bleeding_edge/tools/tickprocessor.js (original)
+++ branches/bleeding_edge/tools/tickprocessor.js Tue Jun 16 11:57:26 2009
@@ -433,7 +433,7 @@
function addPrevEntry(end) {
// Several functions can be mapped onto the same address. To avoid
// creating zero-sized entries, skip such duplicates.
- if (prevEntry && prevEntry.start != end) {
+ if (prevEntry && prevEntry.start < end) {
processorFunc(prevEntry.name, prevEntry.start, end);
}
}
@@ -478,7 +478,7 @@
inherits(UnixCppEntriesProvider, CppEntriesProvider);
-UnixCppEntriesProvider.FUNC_RE = /^([0-9a-fA-F]{8}) . (.*)$/;
+UnixCppEntriesProvider.FUNC_RE = /^([0-9a-fA-F]{8}) [tT] (.*)$/;
UnixCppEntriesProvider.prototype.loadSymbols = function(libName) {
--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---