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

Side by Side Diff: runtime/vm/code_generator.cc

Issue 1759913002: Make precompiler work with product mode. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 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 (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/code_generator.h" 5 #include "vm/code_generator.h"
6 6
7 #include "vm/assembler.h" 7 #include "vm/assembler.h"
8 #include "vm/ast.h" 8 #include "vm/ast.h"
9 #include "vm/code_patcher.h" 9 #include "vm/code_patcher.h"
10 #include "vm/compiler.h" 10 #include "vm/compiler.h"
(...skipping 1335 matching lines...) Expand 10 before | Expand all | Expand 10 after
1346 } 1346 }
1347 if (FLAG_support_debugger && do_stacktrace) { 1347 if (FLAG_support_debugger && do_stacktrace) {
1348 String& var_name = String::Handle(); 1348 String& var_name = String::Handle();
1349 Instance& var_value = Instance::Handle(); 1349 Instance& var_value = Instance::Handle();
1350 DebuggerStackTrace* stack = isolate->debugger()->StackTrace(); 1350 DebuggerStackTrace* stack = isolate->debugger()->StackTrace();
1351 intptr_t num_frames = stack->Length(); 1351 intptr_t num_frames = stack->Length();
1352 for (intptr_t i = 0; i < num_frames; i++) { 1352 for (intptr_t i = 0; i < num_frames; i++) {
1353 ActivationFrame* frame = stack->FrameAt(i); 1353 ActivationFrame* frame = stack->FrameAt(i);
1354 // Variable locations and number are unknown when precompiling. 1354 // Variable locations and number are unknown when precompiling.
1355 const int num_vars = 1355 const int num_vars =
1356 FLAG_precompiled_mode ? 0 : frame->NumLocalVariables(); 1356 FLAG_precompiled_runtime ? 0 : frame->NumLocalVariables();
1357 TokenPosition unused = TokenPosition::kNoSource; 1357 TokenPosition unused = TokenPosition::kNoSource;
1358 for (intptr_t v = 0; v < num_vars; v++) { 1358 for (intptr_t v = 0; v < num_vars; v++) {
1359 frame->VariableAt(v, &var_name, &unused, &unused, &var_value); 1359 frame->VariableAt(v, &var_name, &unused, &unused, &var_value);
1360 } 1360 }
1361 } 1361 }
1362 } 1362 }
1363 1363
1364 const Error& error = Error::Handle(isolate->HandleInterrupts()); 1364 const Error& error = Error::Handle(isolate->HandleInterrupts());
1365 if (!error.IsNull()) { 1365 if (!error.IsNull()) {
1366 Exceptions::PropagateError(error); 1366 Exceptions::PropagateError(error);
(...skipping 525 matching lines...) Expand 10 before | Expand all | Expand 10 after
1892 const intptr_t elm_size = old_data.ElementSizeInBytes(); 1892 const intptr_t elm_size = old_data.ElementSizeInBytes();
1893 const TypedData& new_data = 1893 const TypedData& new_data =
1894 TypedData::Handle(TypedData::New(cid, new_size, Heap::kOld)); 1894 TypedData::Handle(TypedData::New(cid, new_size, Heap::kOld));
1895 TypedData::Copy(new_data, 0, old_data, 0, old_size * elm_size); 1895 TypedData::Copy(new_data, 0, old_data, 0, old_size * elm_size);
1896 typed_data_cell.SetAt(0, new_data); 1896 typed_data_cell.SetAt(0, new_data);
1897 arguments.SetReturn(new_data); 1897 arguments.SetReturn(new_data);
1898 } 1898 }
1899 1899
1900 1900
1901 } // namespace dart 1901 } // namespace dart
OLDNEW
« no previous file with comments | « runtime/bin/main.cc ('k') | runtime/vm/compiler.cc » ('j') | runtime/vm/flag_list.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698