Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(300)

Side by Side Diff: src/mirror-debugger.js

Issue 544143003: Store frame pointers (Closed) Base URL: https://v8.googlecode.com/svn/branches/3.27
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | src/runtime.cc » ('j') | src/runtime.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2006-2012 the V8 project authors. All rights reserved. 1 // Copyright 2006-2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Handle id counters. 5 // Handle id counters.
6 var next_handle_ = 0; 6 var next_handle_ = 0;
7 var next_transient_handle_ = -1; 7 var next_transient_handle_ = -1;
8 8
9 // Mirror cache. 9 // Mirror cache.
10 var mirror_cache_ = []; 10 var mirror_cache_ = [];
(...skipping 1411 matching lines...) Expand 10 before | Expand all | Expand 10 after
1422 1422
1423 1423
1424 var kFrameDetailsFrameIdIndex = 0; 1424 var kFrameDetailsFrameIdIndex = 0;
1425 var kFrameDetailsReceiverIndex = 1; 1425 var kFrameDetailsReceiverIndex = 1;
1426 var kFrameDetailsFunctionIndex = 2; 1426 var kFrameDetailsFunctionIndex = 2;
1427 var kFrameDetailsArgumentCountIndex = 3; 1427 var kFrameDetailsArgumentCountIndex = 3;
1428 var kFrameDetailsLocalCountIndex = 4; 1428 var kFrameDetailsLocalCountIndex = 4;
1429 var kFrameDetailsSourcePositionIndex = 5; 1429 var kFrameDetailsSourcePositionIndex = 5;
1430 var kFrameDetailsConstructCallIndex = 6; 1430 var kFrameDetailsConstructCallIndex = 6;
1431 var kFrameDetailsAtReturnIndex = 7; 1431 var kFrameDetailsAtReturnIndex = 7;
1432 var kFrameDetailsFlagsIndex = 8; 1432 var kFrameDetailsFramePointerIndex = 8;
1433 var kFrameDetailsFirstDynamicIndex = 9; 1433 var kFrameDetailsFlagsIndex = 9;
1434 var kFrameDetailsFirstDynamicIndex = 10;
1434 1435
1435 var kFrameDetailsNameIndex = 0; 1436 var kFrameDetailsNameIndex = 0;
1436 var kFrameDetailsValueIndex = 1; 1437 var kFrameDetailsValueIndex = 1;
1437 var kFrameDetailsNameValueSize = 2; 1438 var kFrameDetailsNameValueSize = 2;
1438 1439
1439 var kFrameDetailsFlagDebuggerFrameMask = 1 << 0; 1440 var kFrameDetailsFlagDebuggerFrameMask = 1 << 0;
1440 var kFrameDetailsFlagOptimizedFrameMask = 1 << 1; 1441 var kFrameDetailsFlagOptimizedFrameMask = 1 << 1;
1441 var kFrameDetailsFlagInlinedFrameIndexMask = 7 << 2; 1442 var kFrameDetailsFlagInlinedFrameIndexMask = 7 << 2;
1442 1443
1443 /** 1444 /**
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
1488 %CheckExecutionState(this.break_id_); 1489 %CheckExecutionState(this.break_id_);
1489 return this.details_[kFrameDetailsConstructCallIndex]; 1490 return this.details_[kFrameDetailsConstructCallIndex];
1490 }; 1491 };
1491 1492
1492 1493
1493 FrameDetails.prototype.isAtReturn = function() { 1494 FrameDetails.prototype.isAtReturn = function() {
1494 %CheckExecutionState(this.break_id_); 1495 %CheckExecutionState(this.break_id_);
1495 return this.details_[kFrameDetailsAtReturnIndex]; 1496 return this.details_[kFrameDetailsAtReturnIndex];
1496 }; 1497 };
1497 1498
1499 FrameDetails.prototype.framePointer = function() {
1500 %CheckExecutionState(this.break_id_);
1501 return this.details_[kFrameDetailsFramePointerIndex];
1502 };
1498 1503
1499 FrameDetails.prototype.isDebuggerFrame = function() { 1504 FrameDetails.prototype.isDebuggerFrame = function() {
1500 %CheckExecutionState(this.break_id_); 1505 %CheckExecutionState(this.break_id_);
1501 var f = kFrameDetailsFlagDebuggerFrameMask; 1506 var f = kFrameDetailsFlagDebuggerFrameMask;
1502 return (this.details_[kFrameDetailsFlagsIndex] & f) == f; 1507 return (this.details_[kFrameDetailsFlagsIndex] & f) == f;
1503 }; 1508 };
1504 1509
1505 1510
1506 FrameDetails.prototype.isOptimizedFrame = function() { 1511 FrameDetails.prototype.isOptimizedFrame = function() {
1507 %CheckExecutionState(this.break_id_); 1512 %CheckExecutionState(this.break_id_);
(...skipping 1270 matching lines...) Expand 10 before | Expand all | Expand 10 after
2778 } 2783 }
2779 if (!NUMBER_IS_FINITE(value)) { 2784 if (!NUMBER_IS_FINITE(value)) {
2780 if (value > 0) { 2785 if (value > 0) {
2781 return 'Infinity'; 2786 return 'Infinity';
2782 } else { 2787 } else {
2783 return '-Infinity'; 2788 return '-Infinity';
2784 } 2789 }
2785 } 2790 }
2786 return value; 2791 return value;
2787 } 2792 }
OLDNEW
« no previous file with comments | « no previous file | src/runtime.cc » ('j') | src/runtime.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698