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

Side by Side Diff: src/compiler.cc

Issue 2237423002: [debugger] PrepareFunctionForBreakPoints handles both fcg code and bytecode. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 4 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
« no previous file with comments | « no previous file | src/debug/debug.cc » ('j') | src/objects-inl.h » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 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 #include "src/compiler.h" 5 #include "src/compiler.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <memory> 8 #include <memory>
9 9
10 #include "src/asmjs/asm-js.h" 10 #include "src/asmjs/asm-js.h"
(...skipping 508 matching lines...) Expand 10 before | Expand all | Expand 10 after
519 } 519 }
520 520
521 void InstallSharedCompilationResult(CompilationInfo* info, 521 void InstallSharedCompilationResult(CompilationInfo* info,
522 Handle<SharedFunctionInfo> shared) { 522 Handle<SharedFunctionInfo> shared) {
523 // TODO(mstarzinger): Compiling for debug code might be used to reveal inner 523 // TODO(mstarzinger): Compiling for debug code might be used to reveal inner
524 // functions via {FindSharedFunctionInfoInScript}, in which case we end up 524 // functions via {FindSharedFunctionInfoInScript}, in which case we end up
525 // regenerating existing bytecode. Fix this! 525 // regenerating existing bytecode. Fix this!
526 if (info->is_debug() && info->has_bytecode_array()) { 526 if (info->is_debug() && info->has_bytecode_array()) {
527 shared->ClearBytecodeArray(); 527 shared->ClearBytecodeArray();
528 } 528 }
529 // Assert that we are not overwriting (possibly patched) debug code.
530 DCHECK(!shared->HasDebugInfo());
531 DCHECK(!info->code().is_null()); 529 DCHECK(!info->code().is_null());
532 shared->ReplaceCode(*info->code()); 530 shared->ReplaceCode(*info->code());
533 if (info->has_bytecode_array()) { 531 if (info->has_bytecode_array()) {
534 DCHECK(!shared->HasBytecodeArray()); // Only compiled once. 532 DCHECK(!shared->HasBytecodeArray()); // Only compiled once.
535 shared->set_bytecode_array(*info->bytecode_array()); 533 shared->set_bytecode_array(*info->bytecode_array());
536 } 534 }
537 } 535 }
538 536
539 MUST_USE_RESULT MaybeHandle<Code> GetUnoptimizedCode(CompilationInfo* info) { 537 MUST_USE_RESULT MaybeHandle<Code> GetUnoptimizedCode(CompilationInfo* info) {
540 VMState<COMPILER> state(info->isolate()); 538 VMState<COMPILER> state(info->isolate());
(...skipping 1414 matching lines...) Expand 10 before | Expand all | Expand 10 after
1955 DCHECK(shared->is_compiled()); 1953 DCHECK(shared->is_compiled());
1956 function->set_literals(cached.literals); 1954 function->set_literals(cached.literals);
1957 } else if (shared->is_compiled()) { 1955 } else if (shared->is_compiled()) {
1958 // TODO(mvstanton): pass pretenure flag to EnsureLiterals. 1956 // TODO(mvstanton): pass pretenure flag to EnsureLiterals.
1959 JSFunction::EnsureLiterals(function); 1957 JSFunction::EnsureLiterals(function);
1960 } 1958 }
1961 } 1959 }
1962 1960
1963 } // namespace internal 1961 } // namespace internal
1964 } // namespace v8 1962 } // namespace v8
OLDNEW
« no previous file with comments | « no previous file | src/debug/debug.cc » ('j') | src/objects-inl.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698