Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
block_scheduler.h
Go to the documentation of this 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
3// BSD-style license that can be found in the LICENSE file.
4
5#ifndef RUNTIME_VM_COMPILER_BACKEND_BLOCK_SCHEDULER_H_
6#define RUNTIME_VM_COMPILER_BACKEND_BLOCK_SCHEDULER_H_
7
8#if defined(DART_PRECOMPILED_RUNTIME)
9#error "AOT runtime should not use compiler sources (including header files)"
10#endif // defined(DART_PRECOMPILED_RUNTIME)
11
12#include "vm/allocation.h"
13
14namespace dart {
15
16class FlowGraph;
17
18class BlockScheduler : public AllStatic {
19 public:
20 static void AssignEdgeWeights(FlowGraph* flow_graph);
21 static void ReorderBlocks(FlowGraph* flow_graph);
22
23 private:
24 static void ReorderBlocksAOT(FlowGraph* flow_graph);
25 static void ReorderBlocksJIT(FlowGraph* flow_graph);
26};
27
28} // namespace dart
29
30#endif // RUNTIME_VM_COMPILER_BACKEND_BLOCK_SCHEDULER_H_
static void AssignEdgeWeights(FlowGraph *flow_graph)
static void ReorderBlocks(FlowGraph *flow_graph)