Chromium Code Reviews| Index: runtime/vm/kernel_binary_flowgraph.h |
| diff --git a/runtime/vm/kernel_binary_flowgraph.h b/runtime/vm/kernel_binary_flowgraph.h |
| index 4667e5152d1be8c4b134e8e9b40f62340486f9a3..f07cc8d8a7dd26b5f13defae166642c679b249bd 100644 |
| --- a/runtime/vm/kernel_binary_flowgraph.h |
| +++ b/runtime/vm/kernel_binary_flowgraph.h |
| @@ -119,6 +119,7 @@ class StreamingScopeBuilder { |
| void VisitInterfaceType(bool simple); |
| void VisitFunctionType(bool simple); |
| void VisitTypeParameterType(); |
| + void VisitVectorType(); |
| void HandleLocalFunction(intptr_t parent_kernel_offset); |
| void EnterScope(intptr_t kernel_offset); |
| @@ -383,6 +384,7 @@ class StreamingFlowGraphBuilder { |
| Fragment BuildFieldInitializer(NameIndex canonical_name); |
| Fragment BuildInitializers(intptr_t constructor_class_parent_offset); |
| FlowGraph* BuildGraphOfImplicitClosureFunction(const Function& function); |
| + FlowGraph* BuildGraphOfConvertedClosureFunction(const Function& function); |
| FlowGraph* BuildGraphOfFunction( |
| bool is_in_builtin_library_toplevel, |
| intptr_t constructor_class_parent_offset = -1); |
| @@ -449,6 +451,7 @@ class StreamingFlowGraphBuilder { |
| BreakableBlock* breakable_block(); |
| GrowableArray<YieldContinuation>& yield_continuations(); |
| Value* stack(); |
| + void Push(Definition* definition); |
| Value* Pop(); |
| Tag PeekArgumentsFirstPositionalTag(); |
| @@ -501,8 +504,13 @@ class StreamingFlowGraphBuilder { |
| const TypeArguments& type_arguments); |
| Fragment StrictCompare(Token::Kind kind, bool number_check = false); |
| Fragment AllocateObject(const dart::Class& klass, intptr_t argument_count); |
| + Fragment AllocateObject(const dart::Class& klass, |
| + const Function& closure_function); |
| + Fragment LoadField(intptr_t offset); |
| + Fragment AllocateContext(int size); |
|
kustermann
2017/06/20 12:13:14
s/int/intptr_t/
Although it makes little differen
Dmitry Stefantsov
2017/06/22 14:12:52
I agree that using `intptr_t` here is more aligned
|
| Fragment StoreLocal(TokenPosition position, LocalVariable* variable); |
| Fragment StoreStaticField(TokenPosition position, const dart::Field& field); |
| + Fragment StoreInstanceField(TokenPosition position, intptr_t offset); |
| Fragment StringInterpolate(TokenPosition position); |
| Fragment StringInterpolateSingle(TokenPosition position); |
| Fragment ThrowTypeError(); |
| @@ -590,6 +598,11 @@ class StreamingFlowGraphBuilder { |
| Fragment BuildDoubleLiteral(TokenPosition* position); |
| Fragment BuildBoolLiteral(bool value, TokenPosition* position); |
| Fragment BuildNullLiteral(TokenPosition* position); |
| + Fragment BuildVectorCreation(TokenPosition* position); |
| + Fragment BuildVectorGet(TokenPosition* position); |
| + Fragment BuildVectorSet(TokenPosition* position); |
| + Fragment BuildVectorCopy(TokenPosition* position); |
| + Fragment BuildClosureCreation(TokenPosition* position); |
| Fragment BuildInvalidStatement(); |
| Fragment BuildExpressionStatement(); |