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

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

Issue 2464953002: Add support for OSR in kernel-based FlowGraphBuilder (Closed)
Patch Set: Created 4 years, 1 month 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 #include "vm/growable_array.h" 8 #include "vm/growable_array.h"
9 #include "vm/hash_map.h" 9 #include "vm/hash_map.h"
10 10
(...skipping 725 matching lines...) Expand 10 before | Expand all | Expand 10 after
736 void Push(Definition* definition); 736 void Push(Definition* definition);
737 Value* Pop(); 737 Value* Pop();
738 Fragment Drop(); 738 Fragment Drop();
739 739
740 bool IsInlining() { return exit_collector_ != NULL; } 740 bool IsInlining() { return exit_collector_ != NULL; }
741 741
742 Token::Kind MethodKind(const dart::String& name); 742 Token::Kind MethodKind(const dart::String& name);
743 743
744 void InlineBailout(const char* reason); 744 void InlineBailout(const char* reason);
745 745
746 // When compiling for OSR, remove blocks that are not reachable from the
747 // OSR entry point.
748 void PruneUnreachableIfOSR();
749
746 Zone* zone_; 750 Zone* zone_;
747 TranslationHelper translation_helper_; 751 TranslationHelper translation_helper_;
748 752
749 // The node we are currently compiling (e.g. FunctionNode, Constructor, 753 // The node we are currently compiling (e.g. FunctionNode, Constructor,
750 // Field) 754 // Field)
751 TreeNode* node_; 755 TreeNode* node_;
752 756
753 ParsedFunction* parsed_function_; 757 ParsedFunction* parsed_function_;
754 intptr_t osr_id_; 758 intptr_t osr_id_;
755 const ZoneGrowableArray<const ICData*>& ic_data_array_; 759 const ZoneGrowableArray<const ICData*>& ic_data_array_;
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
830 friend class SwitchBlock; 834 friend class SwitchBlock;
831 friend class TryCatchBlock; 835 friend class TryCatchBlock;
832 friend class TryFinallyBlock; 836 friend class TryFinallyBlock;
833 }; 837 };
834 838
835 } // namespace kernel 839 } // namespace kernel
836 } // namespace dart 840 } // namespace dart
837 841
838 842
839 #endif // RUNTIME_VM_KERNEL_TO_IL_H_ 843 #endif // RUNTIME_VM_KERNEL_TO_IL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698