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

Side by Side Diff: runtime/vm/kernel_to_il.h

Issue 2900963008: Reapply "Shuffle around deopt id allocation... (Closed)
Patch Set: . Created 3 years, 7 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) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, 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 #ifndef RUNTIME_VM_KERNEL_TO_IL_H_ 5 #ifndef RUNTIME_VM_KERNEL_TO_IL_H_
6 #define RUNTIME_VM_KERNEL_TO_IL_H_ 6 #define RUNTIME_VM_KERNEL_TO_IL_H_
7 7
8 #if !defined(DART_PRECOMPILED_RUNTIME) 8 #if !defined(DART_PRECOMPILED_RUNTIME)
9 9
10 #include "vm/growable_array.h" 10 #include "vm/growable_array.h"
(...skipping 1024 matching lines...) Expand 10 before | Expand all | Expand 10 after
1035 Value* Pop(); 1035 Value* Pop();
1036 Fragment Drop(); 1036 Fragment Drop();
1037 1037
1038 bool IsInlining() { return exit_collector_ != NULL; } 1038 bool IsInlining() { return exit_collector_ != NULL; }
1039 1039
1040 Token::Kind MethodKind(const dart::String& name); 1040 Token::Kind MethodKind(const dart::String& name);
1041 1041
1042 void InlineBailout(const char* reason); 1042 void InlineBailout(const char* reason);
1043 1043
1044 TranslationHelper translation_helper_; 1044 TranslationHelper translation_helper_;
1045 Thread* thread_;
1045 Zone* zone_; 1046 Zone* zone_;
1046 1047
1047 // The node we are currently compiling (e.g. FunctionNode, Constructor, 1048 // The node we are currently compiling (e.g. FunctionNode, Constructor,
1048 // Field) 1049 // Field)
1049 TreeNode* node_; 1050 TreeNode* node_;
1050 1051
1051 ParsedFunction* parsed_function_; 1052 ParsedFunction* parsed_function_;
1052 intptr_t osr_id_; 1053 intptr_t osr_id_;
1053 const ZoneGrowableArray<const ICData*>& ic_data_array_; 1054 const ZoneGrowableArray<const ICData*>& ic_data_array_;
1054 InlineExitCollector* exit_collector_; 1055 InlineExitCollector* exit_collector_;
1055 1056
1056 intptr_t next_block_id_; 1057 intptr_t next_block_id_;
1057 intptr_t AllocateBlockId() { return next_block_id_++; } 1058 intptr_t AllocateBlockId() { return next_block_id_++; }
1058 1059
1060 intptr_t GetNextDeoptId() {
1061 // TODO(rmacnak): Record current scope / context level.
1062 return thread_->GetNextDeoptId();
1063 }
1064
1059 intptr_t next_function_id_; 1065 intptr_t next_function_id_;
1060 intptr_t AllocateFunctionId() { return next_function_id_++; } 1066 intptr_t AllocateFunctionId() { return next_function_id_++; }
1061 1067
1062 intptr_t context_depth_; 1068 intptr_t context_depth_;
1063 intptr_t loop_depth_; 1069 intptr_t loop_depth_;
1064 intptr_t try_depth_; 1070 intptr_t try_depth_;
1065 intptr_t catch_depth_; 1071 intptr_t catch_depth_;
1066 intptr_t for_in_depth_; 1072 intptr_t for_in_depth_;
1067 Fragment fragment_; 1073 Fragment fragment_;
1068 Value* stack_; 1074 Value* stack_;
(...skipping 292 matching lines...) Expand 10 before | Expand all | Expand 10 after
1361 namespace kernel { 1367 namespace kernel {
1362 1368
1363 RawObject* EvaluateMetadata(const dart::Field& metadata_field); 1369 RawObject* EvaluateMetadata(const dart::Field& metadata_field);
1364 RawObject* BuildParameterDescriptor(const Function& function); 1370 RawObject* BuildParameterDescriptor(const Function& function);
1365 1371
1366 } // namespace kernel 1372 } // namespace kernel
1367 } // namespace dart 1373 } // namespace dart
1368 1374
1369 #endif // !defined(DART_PRECOMPILED_RUNTIME) 1375 #endif // !defined(DART_PRECOMPILED_RUNTIME)
1370 #endif // RUNTIME_VM_KERNEL_TO_IL_H_ 1376 #endif // RUNTIME_VM_KERNEL_TO_IL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698