verwaest@chromium.org
8754a25197
Fix string and descriptor array decoding in grokdump.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23465027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16818 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 09:37:31 +00:00
jkummerow@chromium.org
cab5e052f3
grokdump: fix Oddball printing
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/22852021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16283 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-23 08:17:54 +00:00
mstarzinger@chromium.org
fde19b3f39
Add frame pointer markup to grokdump.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/22556002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16090 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-07 08:57:25 +00:00
mstarzinger@chromium.org
12c8d36331
Generate grokdump constants with 'make grokdump' now.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/21771002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-02 09:02:02 +00:00
mstarzinger@chromium.org
ce81b0d3a8
ES6: Implement WeakSet
...
WeakSets work similar to ordinary Sets but the value (which must be an
object) is held weakly.
This is available under --harmony-collections
BUG=v8:2785
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/19678023
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15792 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-22 08:32:24 +00:00
mvstanton@chromium.org
d594fd5de3
Grokdump: new shell command, "lm"
...
lm - list matching modules and details such as product version number
found in the minidump. Also, enabled a mode to execute one command and
exit.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/18310003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15410 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-01 11:37:40 +00:00
mstarzinger@chromium.org
d898bded39
Prevent grokdump from crying about invalid input.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/14660012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14572 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-05-07 13:24:04 +00:00
verwaest@chromium.org
a23caf9f71
Explicitly pass the isolate to create handles in ic.cc
...
Review URL: https://chromiumcodereview.appspot.com/12704015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14007 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-03-20 13:12:33 +00:00
verwaest@chromium.org
91d8d9dbab
Update instance types in grokdump.
...
Review URL: https://chromiumcodereview.appspot.com/12720008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-03-20 10:22:49 +00:00
mstarzinger@chromium.org
cc38e56fdf
Disable grokdumps module decoding temporarily.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/12755031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13989 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-03-19 14:57:42 +00:00
verwaest@chromium.org
294af3a563
Fix linebreak in grokdump
...
Review URL: https://chromiumcodereview.appspot.com/12433006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-03-06 17:13:48 +00:00
verwaest@chromium.org
a090ea6a15
Extend grokdump with support for maps, transition and descriptor arrays.
...
Review URL: https://chromiumcodereview.appspot.com/12389077
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13845 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-03-06 17:06:48 +00:00
mstarzinger@chromium.org
f31a50dc10
Update grokdump to reflect current heap layout.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/12303009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13687 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-02-19 09:01:25 +00:00
dcarney@chromium.org
0da6e525b7
Split AccessorInfo into DeclaredAccessorInfo and ExecutableAccessorInfo
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/12213012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13649 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-02-12 14:33:08 +00:00
mstarzinger@chromium.org
a6c4edaf8b
Update grokdump to reflect current heap layout.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/12094038
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13549 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-30 10:07:47 +00:00
ulan@chromium.org
c4bed03342
Add ARM support to tools/grokdump.py
...
R=svenpanne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11565014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13319 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-07 09:48:04 +00:00
svenpanne@chromium.org
673924413f
Re-land rev. 12849 and 12868 (Heavy cleanup of the external pointer API + related fix).
...
Review URL: https://codereview.chromium.org/11365224
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12945 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-11-13 12:27:03 +00:00
svenpanne@chromium.org
09666b60b8
Rollback of r12868, r12849 on bleeding_edge.
...
Fixed visibility attribute for GetPointerFromInternalField
Heavy cleanup of the external pointer API.
Review URL: https://codereview.chromium.org/11359125
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12911 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-11-09 10:07:54 +00:00
svenpanne@chromium.org
f3807ca17b
Heavy cleanup of the external pointer API.
...
Added highly efficient Object::SetAlignedPointerInInternalField and
Object::GetAlignedPointerFromInternalField functions for 2-byte-aligned
pointers. Their non-aligned counterparts Object::GetPointerFromInternalField and
Object::SetPointerInInternalField are now deprecated utility functions.
External is now a true Value again, with New/Value/Cast using a JSObject with an
internal field containing a Foreign. External::Wrap, and External::Unwrap are now
deprecated utility functions.
Added Context::GetEmbedderData and Context::SetEmbedderData. Deprecated
Context::GetData and Context::SetData, these are now only wrappers to access
internal field 0.
Added highly efficient Context::SetAlignedPointerInEmbedderData and
Context::GetAlignedPointerFromEmbedderData functions for 2-byte-aligned
pointers.
Review URL: https://codereview.chromium.org/11190050
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-11-05 10:25:32 +00:00
vegorov@chromium.org
d6853c3697
Extend grokdump.py with simple BreakPad symbol files support.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/10923003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12620 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-26 12:51:46 +00:00
vegorov@chromium.org
caef39a3fd
Extend grokdump.py with [u]nassemble command
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/10910091
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12447 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-05 16:23:01 +00:00
ulan@chromium.org
6095c38fa3
Fix typo in grokdump.
...
R=verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10883004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12372 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-08-23 16:11:37 +00:00
svenpanne@chromium.org
0adda1c82e
Print more x64 registers in grokdump.
...
Review URL: https://chromiumcodereview.appspot.com/10873006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12363 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-08-22 07:02:19 +00:00
verwaest@chromium.org
d7a5b7d5e2
Separating transitions from descriptors.
...
In this design maps contain descriptor arrays, which in turn can contain transition arrays. If transitions are needed when no descriptor array is present, a descriptor array without real descriptors is inserted just so it can point at the transition array.
The transition array does not contain details about the field it transitions to. In order to weed out transitions to FIELDs from CONSTANT_FUNCTION (what used to be MAP_TRANSITION vs CONSTANT_TRANSITION), the transition needs to be followed and the details need to be looked up in the target map. CALLBACKS transitions are still easy to recognize since the transition targets are stored as an AccessorPair containing the maps, rather than the maps directly.
Currently AccessorPairs containing a transition and an accessor are shared between the descriptor array and the transition array. This simplifies lookup since we only have to look in one of both arrays. This will change in subsequent revisions, when descriptor arrays will become shared between multiple maps, since transitions cannot be shared.
Review URL: https://chromiumcodereview.appspot.com/10697015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-05 13:54:20 +00:00
yangguo@chromium.org
ec4ab693c2
Add function to grokdump shell to print ASCII string.
...
R=mstarzinger@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/10697067
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11981 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-03 11:56:30 +00:00
vegorov@chromium.org
22b3bf5867
Teach grokdump to print oddball kind when ToString content is not available
...
R=danno@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/10559063
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11856 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-06-19 11:41:50 +00:00
mstarzinger@chromium.org
c5160606f0
Fix grokdump inspector search for invalid addresses.
...
R=ulan@chromium.org
TEST=tools/grokdump.py
Review URL: https://chromiumcodereview.appspot.com/10467003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11701 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-06-01 12:41:31 +00:00
mstarzinger@chromium.org
dd81e9e29a
Implement grokdump annotations for well-known objects.
...
R=ulan@chromium.org
TEST=tools/grokdump.py
Review URL: https://chromiumcodereview.appspot.com/10441088
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11684 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-31 08:01:54 +00:00
erik.corry@gmail.com
5cd40f740d
Grokdump -f: Automatically detect memory that is x86/x64 instructions or text and dump appropriately.
...
Review URL: https://chromiumcodereview.appspot.com/10356150
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11621 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-22 11:08:05 +00:00
erik.corry@gmail.com
4269fc84f1
Add -f or --full flag to grokdump to dump all available memory areas from the minidump.
...
Review URL: https://chromiumcodereview.appspot.com/10332137
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11554 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-14 07:57:56 +00:00
vegorov@chromium.org
818aba70b2
Extend grokdump with basic interactive shell capabilities.
...
Supported commands:
- dd: to print memory region
- s: to search for a word in available memory regions
- list: to list available memory regions
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10378087
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11537 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-10 12:44:15 +00:00
svenpanne@chromium.org
6997dbe13e
Fixed AccessorPair handling
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10372 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-01-10 16:12:16 +00:00
mstarzinger@chromium.org
dfb18ce094
Fix several minor issues with grokdump.py tool.
...
This includes the following changes:
* Bring instance type mapping up to date.
* Enable loading of maps without available meta-map.
* Add missing IntSize() method.
* Fix reference to Code.CODE_ALIGNMENT_MASK.
* Add alignment checks for objects and maps.
R=vegorov@chromium.org
Review URL: http://codereview.chromium.org/9075003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10344 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-01-05 14:28:45 +00:00
vegorov@chromium.org
49acd1843b
Fix typo in tools/grokdump.py. Stack pointer on x86 is esp not rbp.
...
R=fschneider@chromium.org
Review URL: http://codereview.chromium.org/9069001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10316 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-01-02 09:46:47 +00:00
vegorov@chromium.org
7a93464ca0
Add X64 minidumps support to tools/grokdump.py
...
R=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/8957005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-12-15 12:13:34 +00:00
vitalyr@chromium.org
d63014d62e
grokdump: Tiny bugfix and type list update.
...
R=vegorov@chromium.org
Review URL: http://codereview.chromium.org/7566033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8827 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-08-04 12:07:43 +00:00
vitalyr@chromium.org
f9845f851d
grokdump: Add simple support for non-full minudumps.
...
At least we can show the disassembly around the exception now.
R=antonm@chromium.org
Review URL: http://codereview.chromium.org/7439006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8685 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-19 18:29:18 +00:00
vegorov@chromium.org
d96735233f
Sync grokdump.py INSTANCE_TYPES with V8.
...
R=vitalyr@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/7278017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8510 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-01 11:05:04 +00:00
rossberg@chromium.org
670f947a5c
Implement set trap for proxies, and revamp class hierarchy in preparation:
...
- Introduce a class JSReceiver, that is a common superclass of JSObject and
JSProxy. Use JSReceiver where appropriate (probably lots of places that we
still have to migrate, but we will find those later with proxy test suite).
- Move appropriate methods to JSReceiver class (SetProperty,
GetPropertyAttribute, Get/SetPrototype, Lookup, and so on).
- Introduce new JSFunctionProxy subclass of JSProxy. Currently only a stub.
- Overhaul enum InstanceType:
* Introduce FIRST/LAST_SPEC_OBJECT_TYPE that ranges over all types that
represent JS objects, and use that consistently to check language types.
* Rename FIRST/LAST_JS_OBJECT_TYPE and FIRST/LAST_FUNCTION_CLASS_TYPE
to FIRST/LAST_[NON]CALLABLE_SPEC_OBJECT_TYPE for clarity.
* Eliminate the overlap over JS_REGEXP_TYPE.
* Also replace FIRST_JS_OBJECT with FIRST_JS_RECEIVER, but only use it where
we exclusively talk about the internal representation type.
* Insert JS_PROXY and JS_FUNCTION_PROXY in the appropriate places.
- Fix all checks concerning classification, especially for functions, to
use the CALLABLE_SPEC_OBJECT range (that includes funciton proxies).
- Handle proxies in SetProperty (that was the easiest part :) ).
- A few simple test cases.
R=kmillikin@chromium.org
Review URL: http://codereview.chromium.org/6992072
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8126 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-05-31 16:38:40 +00:00
vitalyr@chromium.org
ca7200da20
grokdump: Update the list of instance types.
...
Review URL: http://codereview.chromium.org/7058008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7990 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-05-23 11:41:28 +00:00
rossberg@chromium.org
abd77ad439
Rename Proxy class to Foreign, to avoid confusion with Harmony proxies.
...
Also fix grokdump, which was off by one after intro of JSProxy type.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7959 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-05-19 11:47:34 +00:00
vitalyr@chromium.org
25f2f21f50
grokdump: Simple windows minidump analysis on linux.
...
Analyses full minidump (.dmp) files.
Shows the processor state at the point of exception including the
stack of the active thread and the referenced objects in the V8
heap. Code objects are disassembled and the addresses linked from the
stack (pushed return addresses) are marked with "=>".
Review URL: http://codereview.chromium.org/6312058
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6896 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-02-22 14:25:26 +00:00