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

Side by Side Diff: src/runtime/runtime-debug.cc

Issue 2758483002: [debugger] tuned StepNext and StepOut at return position (Closed)
Patch Set: addressed comments Created 3 years, 9 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
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 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 #include "src/runtime/runtime-utils.h" 5 #include "src/runtime/runtime-utils.h"
6 6
7 #include "src/arguments.h" 7 #include "src/arguments.h"
8 #include "src/compiler.h" 8 #include "src/compiler.h"
9 #include "src/debug/debug-coverage.h" 9 #include "src/debug/debug-coverage.h"
10 #include "src/debug/debug-evaluate.h" 10 #include "src/debug/debug-evaluate.h"
(...skipping 1790 matching lines...) Expand 10 before | Expand all | Expand 10 after
1801 1801
1802 return *str; 1802 return *str;
1803 } 1803 }
1804 1804
1805 // On function call, depending on circumstances, prepare for stepping in, 1805 // On function call, depending on circumstances, prepare for stepping in,
1806 // or perform a side effect check. 1806 // or perform a side effect check.
1807 RUNTIME_FUNCTION(Runtime_DebugOnFunctionCall) { 1807 RUNTIME_FUNCTION(Runtime_DebugOnFunctionCall) {
1808 HandleScope scope(isolate); 1808 HandleScope scope(isolate);
1809 DCHECK_EQ(1, args.length()); 1809 DCHECK_EQ(1, args.length());
1810 CONVERT_ARG_HANDLE_CHECKED(JSFunction, fun, 0); 1810 CONVERT_ARG_HANDLE_CHECKED(JSFunction, fun, 0);
1811 if (isolate->debug()->last_step_action() >= StepIn) { 1811 if (isolate->debug()->step_into_function_call_requested()) {
1812 isolate->debug()->PrepareStepIn(fun); 1812 isolate->debug()->PrepareStepIn(fun);
1813 } 1813 }
1814 if (isolate->needs_side_effect_check() && 1814 if (isolate->needs_side_effect_check() &&
1815 !isolate->debug()->PerformSideEffectCheck(fun)) { 1815 !isolate->debug()->PerformSideEffectCheck(fun)) {
1816 return isolate->heap()->exception(); 1816 return isolate->heap()->exception();
1817 } 1817 }
1818 return isolate->heap()->undefined_value(); 1818 return isolate->heap()->undefined_value();
1819 } 1819 }
1820 1820
1821 // Set one shot breakpoints for the suspended generator object. 1821 // Set one shot breakpoints for the suspended generator object.
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
1944 1944
1945 RUNTIME_FUNCTION(Runtime_DebugTogglePreciseCoverage) { 1945 RUNTIME_FUNCTION(Runtime_DebugTogglePreciseCoverage) {
1946 SealHandleScope shs(isolate); 1946 SealHandleScope shs(isolate);
1947 CONVERT_BOOLEAN_ARG_CHECKED(enable, 0); 1947 CONVERT_BOOLEAN_ARG_CHECKED(enable, 0);
1948 Coverage::TogglePrecise(isolate, enable); 1948 Coverage::TogglePrecise(isolate, enable);
1949 return isolate->heap()->undefined_value(); 1949 return isolate->heap()->undefined_value();
1950 } 1950 }
1951 1951
1952 } // namespace internal 1952 } // namespace internal
1953 } // namespace v8 1953 } // namespace v8
OLDNEW
« src/debug/debug.cc ('K') | « src/debug/debug.cc ('k') | test/cctest/test-debug.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698