- 12 Jun, 2009 5 commits
-
-
kmillikin@chromium.org authored
branches, and bind with more than two arguments). Remove unneeded variable (the "watermark" on virtual frames). Review URL: http://codereview.chromium.org/125045 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2153 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Make sure that the IC is always hit when debugging and make sure to restore the fast case when leaving the debugger. Review URL: http://codereview.chromium.org/125044 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2152 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bak@chromium.org authored
This replaces the fixed expansion policy based on number of scavenges. Increased the max new space size to 8MB (only reserved space). Increased the defalt new space size to 512KB. Review URL: http://codereview.chromium.org/125046 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2151 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
TBR=ager@chromium.org Review URL: http://codereview.chromium.org/125043 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2150 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
For each frame it is now possible to request information on the scope chain. Each scope in the chain can have one of the types local, global, with and closure. For scopes of type global and with the mirror for the actual global or with object is available. For scopes of type local and closure a plain JavaScript object with the materialized content of the scope is created and its mirror is returned. Depending on the level of possible optimization the content of the materialized local and closure scopes might only contain the names which are actually used. To iterate the scope chain an iterator ScopeIterator have been added which can provide the type of each scope for each part of the chain. This iterator creates an artificial local scope whenever that is present as the context chain does not include the local scope. To avoid caching the mirror objects for the materialized the local and closure scopes transient mirrors have been added. They have negative handles and cannot be retrieved by subsequent lookup calls. Their content is part of a single response. For debugging purposes an additional runtime function DebugPrintScopes is been added. Added commands 'scopes' and 'scope' to the developer shell and fixed the dir command. BUG=none TEST=test/mjsunit/debug-scopes.js Review URL: http://codereview.chromium.org/123021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2149 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Jun, 2009 8 commits
-
-
antonm@chromium.org authored
speedup for some DOM operations. Review URL: http://codereview.chromium.org/122038 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
Two techniques are involved: - compress repeated line ends (common stack beginnings) by using back references; - do RLE compression of repeated tick events. This gives only 5% size reduction on benchmarks run, but this is because tick events are only comprise 10% of file size. Under Chromium winnings are bigger because long repeated samples of idleness are now compressed into a single line. Tickprocessor will be updated in the next patch. Review URL: http://codereview.chromium.org/123012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2147 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/123018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2146 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/123017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2145 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
be a smi. The inlined version works for stores to JSArrays where the key is a smi that is within bounds of the array and the value is either constant or a smi so we can skip the write-barrier. Review URL: http://codereview.chromium.org/122035 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2144 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/122033 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2143 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/122030 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2142 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/123014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2141 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Jun, 2009 12 commits
-
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/119420 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2140 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Remove unimplemented instructions from x64 assembler. Add operand-size suffixes to add, sub, inc, dec, and cmp. Review URL: http://codereview.chromium.org/118380 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2139 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/118499 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2138 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
the implementation but still lives on in comments and identifier names. Where it was used, it has been changed to "caller's stack pointer". Review URL: http://codereview.chromium.org/118500 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2137 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
TBR=antonm@chromium.org Review URL: http://codereview.chromium.org/118501 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2136 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
writable (non-aliased) so it can be used for the result in the slow case. Review URL: http://codereview.chromium.org/118496 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2134 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Make Array.sort safely generic on JSObject types. Fix bug 346 http://code.google.com/p/v8/issues/detail?id=346 Review URL: http://codereview.chromium.org/119357 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2133 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/119353 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2132 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
* Identify heap numbers that contain non-Smi int32s and do bit ops on them without calling the fp hardware or emulation. * Identify results that are non-Smi int32s and write them into heap numbers without calling the fp hardware or emulation. * Do unary minus on heap numbers without going into the runtime system. * On add, sub and mul if we have both Smi and heapnumber inputs to the same operation then convert the Smi to a double and do the op without going into runtime system. This also applies if we have two Smi inputs but the result is not Smi. Review URL: http://codereview.chromium.org/119241 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2131 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Still some supporting functions missing. Review URL: http://codereview.chromium.org/114085 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2130 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
parameter pointer slots. Change it so that the handler address no longer points into the middle of the handler. Review URL: http://codereview.chromium.org/119414 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2129 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
not point into the middle of the handler. Also remove top-of-stack caching from MacroAssembler::PushTryHandler. Review URL: http://codereview.chromium.org/119358 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2128 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Jun, 2009 4 commits
-
-
erik.corry@gmail.com authored
instructions. The intention is that the snapshots generated by the simulator should be usable on the hardware. Instead of swi instructions we generate a branch to a swi instruction that is not part of the snapshot. The call/jump is patched up in the same way as other external references when the snapshot is deserialized. This only works for EABI targets: on old ABI targets we still emit some instructions not supported by the simulator (fp coprocessor instructions). Review URL: http://codereview.chromium.org/119036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2127 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
allocate and spill registers, so that the register reference counts and virtual frame are unchanged in the main body. This eliminates a few sites of magic branching or binding of JumpTarget with arguments. Review URL: http://codereview.chromium.org/119302 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2126 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Change locationFromPosition() and locationFromLine() to use a binary search to locate line numbers from position numbers. Modify test debug-sourceinfo.js to include more tests, including error conditions. Patch by Matt Hanselman, see http://codereview.chromium.org/118371. BUG=213 TEST=test/mjsunit/debug-sourceinfo.js Review URL: http://codereview.chromium.org/118425 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2125 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
This will support breaking in debugger statements in JavaScript files read from the command line. Review URL: http://codereview.chromium.org/113998 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2124 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Jun, 2009 8 commits
-
-
kmillikin@chromium.org authored
pointer and parameter pointer slots. Review URL: http://codereview.chromium.org/118383 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2123 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
This is a trivial per-row compression: - short aliases are introduced for events and code creation tags; - in tick events, offsets are used instead of absolute addresses; - removed 'code-allocation' event, as it seems not used. The first two options are depend on the new flag: 'compress-log', which is off by default. On benchmarks run w/o snapshot, this gives 45% log size reduction. Review URL: http://codereview.chromium.org/119304 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2122 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Review URL: http://codereview.chromium.org/118378 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2120 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Scripts now have a compilation type which can be host, eval or JSON. Host scripts are compiled through the API, eval scripts are compiled through call to evan and JSON scripts are compiled as a result of calling JSON.parse. For scripts scripts compiled through eval the JavaScript function in top of the stack and the pc offset into the code is stored in the script object. This makes it possible to calculate the source position of the eval call later when requested. This information can be obtained through the script mirror object and is part of the script mirror JSON serialization for the debugger protocol. Moved the enumeration ScripType into class Script and remamed to Type. The new compilation type enumeration is also inside the class Script. This information is now shown when using the scripts command in he developer shell debugger. Review URL: http://codereview.chromium.org/119108 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2119 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
interceptors and dont-delete attributes. Minor change to the behavior of eval: throw exception when calling eval in a context for which the global has been detached. This matches the behavior of both Firefox and Safari post navigation in the browser. Review URL: http://codereview.chromium.org/118374 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2118 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
http://codereview.chromium.org/113897 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2117 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
cache to 5 (down from 8). Generations 5, 6, and 7 are rarely hit in real browsing sessions (~2% in the best case) so it seems better to lower the size to avoid carrying around too many compiled scripts in the cache. Review URL: http://codereview.chromium.org/119301 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2116 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/119177 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2115 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Jun, 2009 3 commits
-
-
kmillikin@chromium.org authored
TBR=whesse@chromium.org,lrn@chromium.org Review URL: http://codereview.chromium.org/118310 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2114 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
Review URL: http://codereview.chromium.org/118306 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2113 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
deferred code snippets are highly stylized. They always make a call to a stub or the runtime and then return. This change takes advantage of that. Creating a deferred code object now captures a snapshot of the registers in the virtual frame. The registers are automatically saved on entry to the deferred code and restored on exit. The clients of deferred code must ensure that there is no change to the registers in the virtual frame (eg, by allocating which can cause spilling) or to the stack pointer. That is currently the case. As a separate change, I will add either code to verify this constraint or else code to forbid any frame effect. The deferred code itself does not use the virtual frame or register allocator (or even the code generator). It is raw macro assembler code. Review URL: http://codereview.chromium.org/118226 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2112 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-