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

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

Issue 2974233002: VM: Re-format to use at most one newline between functions (Closed)
Patch Set: Rebase and merge Created 3 years, 5 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 | « runtime/vm/kernel_binary.cc ('k') | runtime/vm/kernel_binary_flowgraph.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2017, 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_BINARY_FLOWGRAPH_H_ 5 #ifndef RUNTIME_VM_KERNEL_BINARY_FLOWGRAPH_H_
6 #define RUNTIME_VM_KERNEL_BINARY_FLOWGRAPH_H_ 6 #define RUNTIME_VM_KERNEL_BINARY_FLOWGRAPH_H_
7 7
8 #if !defined(DART_PRECOMPILED_RUNTIME) 8 #if !defined(DART_PRECOMPILED_RUNTIME)
9 9
10 #include <map> 10 #include <map>
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 public: 52 public:
53 TypeParameterScope(StreamingDartTypeTranslator* translator, 53 TypeParameterScope(StreamingDartTypeTranslator* translator,
54 intptr_t parameters_offset, 54 intptr_t parameters_offset,
55 intptr_t parameters_count) 55 intptr_t parameters_count)
56 : parameters_offset_(parameters_offset), 56 : parameters_offset_(parameters_offset),
57 parameters_count_(parameters_count), 57 parameters_count_(parameters_count),
58 outer_(translator->type_parameter_scope_), 58 outer_(translator->type_parameter_scope_),
59 translator_(translator) { 59 translator_(translator) {
60 translator_->type_parameter_scope_ = this; 60 translator_->type_parameter_scope_ = this;
61 } 61 }
62 ~TypeParameterScope() { 62 ~TypeParameterScope() { translator_->type_parameter_scope_ = outer_; }
63 translator_->type_parameter_scope_ = outer_;
64 }
65 63
66 TypeParameterScope* outer() const { return outer_; } 64 TypeParameterScope* outer() const { return outer_; }
67 intptr_t parameters_offset() const { return parameters_offset_; } 65 intptr_t parameters_offset() const { return parameters_offset_; }
68 intptr_t parameters_count() const { return parameters_count_; } 66 intptr_t parameters_count() const { return parameters_count_; }
69 67
70 private: 68 private:
71 intptr_t parameters_offset_; 69 intptr_t parameters_offset_;
72 intptr_t parameters_count_; 70 intptr_t parameters_count_;
73 TypeParameterScope* outer_; 71 TypeParameterScope* outer_;
74 StreamingDartTypeTranslator* translator_; 72 StreamingDartTypeTranslator* translator_;
75 }; 73 };
76 74
77 intptr_t FindTypeParameterIndex(intptr_t parameters_offset, 75 intptr_t FindTypeParameterIndex(intptr_t parameters_offset,
78 intptr_t parameters_count, 76 intptr_t parameters_count,
79 intptr_t look_for); 77 intptr_t look_for);
80 78
81 StreamingFlowGraphBuilder* builder_; 79 StreamingFlowGraphBuilder* builder_;
82 TranslationHelper& translation_helper_; 80 TranslationHelper& translation_helper_;
83 ActiveClass* active_class_; 81 ActiveClass* active_class_;
84 TypeParameterScope* type_parameter_scope_; 82 TypeParameterScope* type_parameter_scope_;
85 Zone* zone_; 83 Zone* zone_;
86 AbstractType& result_; 84 AbstractType& result_;
87 bool finalize_; 85 bool finalize_;
88 86
89 friend class StreamingScopeBuilder; 87 friend class StreamingScopeBuilder;
90 friend class KernelReader; 88 friend class KernelReader;
91 }; 89 };
92 90
93
94 class StreamingScopeBuilder { 91 class StreamingScopeBuilder {
95 public: 92 public:
96 StreamingScopeBuilder(ParsedFunction* parsed_function, 93 StreamingScopeBuilder(ParsedFunction* parsed_function,
97 intptr_t kernel_offset, 94 intptr_t kernel_offset,
98 const uint8_t* buffer, 95 const uint8_t* buffer,
99 intptr_t buffer_length); 96 intptr_t buffer_length);
100 97
101 virtual ~StreamingScopeBuilder(); 98 virtual ~StreamingScopeBuilder();
102 99
103 ScopeBuildingResult* BuildScopes(); 100 ScopeBuildingResult* BuildScopes();
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
194 191
195 intptr_t name_index_; 192 intptr_t name_index_;
196 193
197 bool needs_expr_temp_; 194 bool needs_expr_temp_;
198 TokenPosition first_body_token_position_; 195 TokenPosition first_body_token_position_;
199 196
200 StreamingFlowGraphBuilder* builder_; 197 StreamingFlowGraphBuilder* builder_;
201 StreamingDartTypeTranslator type_translator_; 198 StreamingDartTypeTranslator type_translator_;
202 }; 199 };
203 200
204
205 // There are several cases when we are compiling constant expressions: 201 // There are several cases when we are compiling constant expressions:
206 // 202 //
207 // * constant field initializers: 203 // * constant field initializers:
208 // const FieldName = <expr>; 204 // const FieldName = <expr>;
209 // 205 //
210 // * constant expressions: 206 // * constant expressions:
211 // const [<expr>, ...] 207 // const [<expr>, ...]
212 // const {<expr> : <expr>, ...} 208 // const {<expr> : <expr>, ...}
213 // const Constructor(<expr>, ...) 209 // const Constructor(<expr>, ...)
214 // 210 //
(...skipping 724 matching lines...) Expand 10 before | Expand all | Expand 10 after
939 word flags_; 935 word flags_;
940 intptr_t parent_class_binary_offset_; 936 intptr_t parent_class_binary_offset_;
941 intptr_t source_uri_index_; 937 intptr_t source_uri_index_;
942 intptr_t annotation_count_; 938 intptr_t annotation_count_;
943 939
944 private: 940 private:
945 StreamingFlowGraphBuilder* builder_; 941 StreamingFlowGraphBuilder* builder_;
946 intptr_t next_read_; 942 intptr_t next_read_;
947 }; 943 };
948 944
949
950 // Helper class that reads a kernel Procedure from binary. 945 // Helper class that reads a kernel Procedure from binary.
951 // 946 //
952 // Use ReadUntilExcluding to read up to but not including a field. 947 // Use ReadUntilExcluding to read up to but not including a field.
953 // One can then for instance read the field from the call-site (and remember to 948 // One can then for instance read the field from the call-site (and remember to
954 // call SetAt to inform this helper class), and then use this to read more. 949 // call SetAt to inform this helper class), and then use this to read more.
955 // "Dumb" fields are stored (e.g. integers) and can be fetched from this class. 950 // "Dumb" fields are stored (e.g. integers) and can be fetched from this class.
956 // If asked to read a "non-dumb" field (e.g. an expression) it will be skipped. 951 // If asked to read a "non-dumb" field (e.g. an expression) it will be skipped.
957 class ProcedureHelper { 952 class ProcedureHelper {
958 public: 953 public:
959 enum Fields { 954 enum Fields {
(...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after
1483 private: 1478 private:
1484 Reader* reader_; 1479 Reader* reader_;
1485 intptr_t saved_offset_; 1480 intptr_t saved_offset_;
1486 }; 1481 };
1487 1482
1488 } // namespace kernel 1483 } // namespace kernel
1489 } // namespace dart 1484 } // namespace dart
1490 1485
1491 #endif // !defined(DART_PRECOMPILED_RUNTIME) 1486 #endif // !defined(DART_PRECOMPILED_RUNTIME)
1492 #endif // RUNTIME_VM_KERNEL_BINARY_FLOWGRAPH_H_ 1487 #endif // RUNTIME_VM_KERNEL_BINARY_FLOWGRAPH_H_
OLDNEW
« no previous file with comments | « runtime/vm/kernel_binary.cc ('k') | runtime/vm/kernel_binary_flowgraph.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698