- 15 Jan, 2009 3 commits
-
-
sgjesse@chromium.org authored
Added handles to the mirror objects. When a mirror for an object is created it is assigned a numeric handle. Handles are used to make a 1:1 correspondence between objects and mirrors. Currently the mirrors are cached in a JavaScript array and when creating a mirror this cache is checked to see if a mirror already exists for the object. This cache is cleared when leaving the debugger. Changed the serialization format to take advantage of these handles. When an object is serialized referenced objects are represented just by their handle id serialized as '{ref:<handle>}'. During serialization the referenced handles are collected and the serializer can provide a serialization of all the referenced objects. Removed the special handling of array properties. Indexed properties and the length property are now rendered as named properties in the serialization. Removed the special serialization handling of RegExp properties. The properties 'source', 'global', 'ignoreCase' and 'multiline' are serialized with the rest of the properties. Changed a lot of tests to handle the changed format. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1078 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
http://code.google.com/p/v8/issues/detail?id=191 Accessor setters should not be called for eval-introduced context extension objects. This change fixes the issue, but I think it is time to separate out the lookup routines for eval-introduced context extension objects. There is no reason to use the general lookup routines for this. I'll do that in a separate changelist. Review URL: http://codereview.chromium.org/18090 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1076 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
olehougaard authored
Review URL: http://codereview.chromium.org/18266 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1074 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Jan, 2009 4 commits
-
-
ager@chromium.org authored
http://code.google.com/p/v8/issues/detail?id=186 Create a new instance type for context extension objects. Use it to not use the __proto__ accessor for context extension objects. Review URL: http://codereview.chromium.org/18044 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1072 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
christian.plesner.hansen@gmail.com authored
length of expressions containing backreferences. Bad plesner for forgetting to run the tests before submitting! git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1071 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
christian.plesner.hansen@gmail.com authored
also revealed a bug or two that had to be fixed. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1070 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
http://code.google.com/p/v8/issues/detail?id=186 The issue is that the extension object is a normal javascript object on which assignments to __proto__ changes the prototype chain. Review URL: http://codereview.chromium.org/18221 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Jan, 2009 7 commits
-
-
sgjesse@chromium.org authored
Refactored the mirror representation of properties. Removed the AssessorMirror and InterceptorPropertyMirror and moved all reflection for properties to PropertyMirror. From a PropertyMirror it can be checked whether a property has getter/setter defined in JavaScript and information on the getter/setter functions are now available. If calling the getter resulted in an exception this is reflected as well. Properties from interceptors are also reflected through PropertyMirror as the distinction did not make sense seen from a JavaScript debugging perspective. The isNative function on a PropertyMirror can be used to check whether a property is defined natively by the host (or V8). Simplified the local property lookup in the debug runtime call to just call GetProperty as the property is known to be a local property. Review URL: http://codereview.chromium.org/17377 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1068 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
olehougaard authored
Avoiding the assumption that the pc pointer of RelocInfo points to the word containing the target address. It wasn't true for ARM. (One step closer to serialization on ARM). Review URL: http://codereview.chromium.org/17376 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1067 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1066 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Uploading for Kasper. Review URL: http://codereview.chromium.org/17641 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1061 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Fixed a few earlier review comments that had slipped through. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1060 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
olehougaard authored
Review URL: http://codereview.chromium.org/17639 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1057 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
olehougaard authored
Do not cache functions until we know they are fully constructed. This is needed in case of a stack overflow during construction. Review URL: http://codereview.chromium.org/17354 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1056 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Jan, 2009 3 commits
-
-
lrn@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1053 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1052 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
This can lead to large objects which wastes a lot of space if we normalize properties. We therfore clear the inobject properties when normalizing properties. This is done by adjusting the instance size in the new map and overwriting the inobject properties with a filler. Review URL: http://codereview.chromium.org/17308 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1051 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Jan, 2009 4 commits
-
-
christian.plesner.hansen@gmail.com authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
christian.plesner.hansen@gmail.com authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1046 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
christian.plesner.hansen@gmail.com authored
that could be const but aren't, but now at least all the obvious ones should be. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1045 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Review URL: http://codereview.chromium.org/17410 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Jan, 2009 5 commits
-
-
iposva@chromium.org authored
- Make sure to not destroy the instance type by slightly rearranging the code. - Added regression test. Review URL: http://codereview.chromium.org/16594 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
christian.plesner.hansen@gmail.com authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Review URL: http://codereview.chromium.org/16568 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
http://code.google.com/p/v8/issues/detail?id=91olehougaard authored
Review URL: http://codereview.chromium.org/17232 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Factored the generation of JSON serialization from beeing part of the mirror objects into a seperate class. The purpose of this is to make it easier to change the serialization to contain object identification and references. Added a test case for the script mirror and modified a number of the other mirror tests. Review URL: http://codereview.chromium.org/16539 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Jan, 2009 4 commits
-
-
christian.plesner.hansen@gmail.com authored
pushing to trunk. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
christian.plesner.hansen@gmail.com authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1030 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
christian.plesner.hansen@gmail.com authored
to the way regexps are being logged. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Detect the response to the continue command. Review URL: http://codereview.chromium.org/17071 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1025 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Jan, 2009 1 commit
-
-
lrn@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Dec, 2008 1 commit
-
-
ager@chromium.org authored
Fix typo where underscore is used instead of a dash. Review URL: http://codereview.chromium.org/16238 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Dec, 2008 2 commits
-
-
ager@chromium.org authored
calling a stub. The map to check against is unknown when generating the code, so we patch the map check in the IC initialization code. Loop nesting is currently not tracked on ARM. I'll file feature request bug reports for implementing this on ARM and add the number to the TODOs before I commit. Review URL: http://codereview.chromium.org/16409 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1015 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
register contains the next n characters. Review URL: http://codereview.chromium.org/16410 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1014 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Dec, 2008 6 commits
-
-
olehougaard authored
Review URL: http://codereview.chromium.org/14890 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
christian.plesner.hansen@gmail.com authored
of the generated code. These can be used by the profiler to categorize the ticks that occur within generated code and thereby show more detailed information about where time is spent in generated code. For instance, this is what the profiler displayed for a simple regexp benchmark with irregexp-native before: [JavaScript]: total nonlib name 87.2% 87.2% RegExp: (?:\w*\W+)* This is what we can display now: [JavaScript]: total nonlib name 87.2% 87.2% RegExp: (?:\w*\W+)* - 53.0% 56.7% BranchOrBacktrack - 14.9% 59.8% CheckCharacterLT - 13.7% 20.4% CheckStackLimit - 6.7% 6.7% SafeCall - 2.7% 7.0% CheckCharacterGT - 2.4% 2.4% SafeReturn - 2.1% 2.1% LoadCurrentCharacter - 1.8% 1.8% PushRegister - 0.9% 0.9% PopRegister - 0.9% 0.9% AdvanceRegister - 0.3% 0.3% PopCurrentPosition - 0.3% 0.3% CheckGreedyLoop - 0.0% 20.4% PushBacktrack - 0.0% 22.3% CheckCharacter - 0.0% 2.4% IfRegisterLT git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/14887 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1008 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1007 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
olehougaard authored
Review URL: http://codereview.chromium.org/15075 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
the alternatives in a choice node. The quick checks are conservative in the sense that they only detect failure with certainty. Checks can do 2 or 4 characters at a time. * Inline the quick checks to allow the alternatives to be checked without branching in the common case where they fail. Review URL: http://codereview.chromium.org/14194 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-