VapourSynth-llvmexpr
Loading...
Searching...
No Matches
BlockAnalysisPass.hpp
Go to the documentation of this file.
1
19
20
#ifndef LLVMEXPR_ANALYSIS_BLOCK_ANALYSIS_PASS_HPP
21
#define LLVMEXPR_ANALYSIS_BLOCK_ANALYSIS_PASS_HPP
22
23
#include "
../framework/DataStructures.hpp
"
24
#include "
../framework/Pass.hpp
"
25
26
#include <vector>
27
28
namespace
analysis
{
29
30
struct
BlockAnalysisResult
{
31
std::vector<CFGBlock>
cfg_blocks
;
32
};
33
41
class
BlockAnalysisPass
42
:
public
AnalysisPass
<BlockAnalysisPass, BlockAnalysisResult> {
43
public
:
44
using
Result
=
BlockAnalysisResult
;
45
46
[[nodiscard]]
const
char
*
getName
()
const override
{
47
return
"Block Analysis Pass"
;
48
}
49
50
Result
run
(
const
std::vector<Token>& tokens,
AnalysisManager
& am)
override
;
51
};
52
53
}
// namespace analysis
54
55
#endif
// LLVMEXPR_ANALYSIS_BLOCK_ANALYSIS_PASS_HPP
DataStructures.hpp
Pass.hpp
analysis::AnalysisManager
Definition
AnalysisManager.hpp:32
analysis::AnalysisPass
Definition
Pass.hpp:45
analysis::BlockAnalysisPass
Definition
BlockAnalysisPass.hpp:42
analysis::BlockAnalysisPass::run
Result run(const std::vector< Token > &tokens, AnalysisManager &am) override
Definition
BlockAnalysisPass.cpp:30
analysis::BlockAnalysisPass::getName
const char * getName() const override
Definition
BlockAnalysisPass.hpp:46
analysis::BlockAnalysisPass::Result
BlockAnalysisResult Result
Definition
BlockAnalysisPass.hpp:44
analysis
Definition
AnalysisResults.hpp:36
analysis::BlockAnalysisResult
Definition
BlockAnalysisPass.hpp:30
analysis::BlockAnalysisResult::cfg_blocks
std::vector< CFGBlock > cfg_blocks
Definition
BlockAnalysisPass.hpp:31
llvmexpr
analysis
passes
BlockAnalysisPass.hpp
Generated by
1.16.0