Add ScopeInfo constants to post-mortem metadata
mdb_v8, a post-mortem debugging tool for Node.js, allows users to inspect ScopeInfo structures in order to get more information about closures. Currently, it hardcodes the metadata it uses to find this information. This change allows it to get this metadata from the node binary itself, and thus to adapt to future changes made to the layout of the ScopeInfo data structure. BUG= R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1350843003 Cr-Commit-Position: refs/heads/master@{#30843}
This commit is contained in:
parent
e5ff10d767
commit
357e6b99ee
@ -4054,7 +4054,6 @@ class ScopeInfo : public FixedArray {
|
||||
FOR_EACH_SCOPE_INFO_NUMERIC_FIELD(FIELD_ACCESSORS)
|
||||
#undef FIELD_ACCESSORS
|
||||
|
||||
private:
|
||||
enum {
|
||||
#define DECL_INDEX(name) k##name,
|
||||
FOR_EACH_SCOPE_INFO_NUMERIC_FIELD(DECL_INDEX)
|
||||
@ -4062,6 +4061,7 @@ class ScopeInfo : public FixedArray {
|
||||
kVariablePartIndex
|
||||
};
|
||||
|
||||
private:
|
||||
// The layout of the variable part of a ScopeInfo is as follows:
|
||||
// 1. ParameterEntries:
|
||||
// This part stores the names of the parameters for function scopes. One
|
||||
|
@ -132,6 +132,15 @@ consts_misc = [
|
||||
'value': 'JavaScriptFrameConstants::kFunctionOffset' },
|
||||
{ 'name': 'off_fp_args',
|
||||
'value': 'JavaScriptFrameConstants::kLastParameterOffset' },
|
||||
|
||||
{ 'name': 'scopeinfo_idx_nparams',
|
||||
'value': 'ScopeInfo::kParameterCount' },
|
||||
{ 'name': 'scopeinfo_idx_nstacklocals',
|
||||
'value': 'ScopeInfo::kStackLocalCount' },
|
||||
{ 'name': 'scopeinfo_idx_ncontextlocals',
|
||||
'value': 'ScopeInfo::kContextLocalCount' },
|
||||
{ 'name': 'scopeinfo_idx_first_vars',
|
||||
'value': 'ScopeInfo::kVariablePartIndex' },
|
||||
];
|
||||
|
||||
#
|
||||
|
Loading…
Reference in New Issue
Block a user