Jlm
Loading...
Searching...
No Matches
ControlFlowRestructuring.hpp
Go to the documentation of this file.
1/*
2 * Copyright 2015 Nico Reißmann <nico.reissmann@gmail.com>
3 * See COPYING for terms of redistribution.
4 */
5
6#ifndef JLM_LLVM_FRONTEND_CONTROLFLOWRESTRUCTURING_HPP
7#define JLM_LLVM_FRONTEND_CONTROLFLOWRESTRUCTURING_HPP
8
9namespace jlm::llvm
10{
11
12class ControlFlowGraph;
13
14void
15RestructureLoops(ControlFlowGraph & cfg);
16
17void
18RestructureBranches(ControlFlowGraph & cfg);
19
20void
21RestructureControlFlow(ControlFlowGraph & cfg);
22
23}
24
25#endif
Global memory state passed between functions.
static void RestructureBranches(ControlFlowGraphNode &entry, ControlFlowGraphNode &exit)
static void RestructureControlFlow(ControlFlowGraphNode &, ControlFlowGraphNode &, std::vector< TailControlledLoop > &)
static void RestructureLoops(ControlFlowGraphNode &regionEntry, ControlFlowGraphNode &regionExit, std::vector< TailControlledLoop > &loops)