VapourSynth-llvmexpr
Loading...
Searching...
No Matches
ExpressionAnalyzer.cpp
Go to the documentation of this file.
1
19
20
#include "
ExpressionAnalyzer.hpp
"
21
#include "
framework/AnalysisError.hpp
"
22
#include "
llvmexpr/analysis/passes/StackSafetyPass.hpp
"
23
#include "
llvmexpr/analysis/passes/ValidationPass.hpp
"
24
#include "
passes/CoordinateUsagePass.hpp
"
25
#include "
passes/PropWriteTypeSafetyPass.hpp
"
26
#include "
passes/RelAccessAnalysisPass.hpp
"
27
#include "
passes/StructurizeCFGPass.hpp
"
28
#include "
passes/VariableUsagePass.hpp
"
29
30
namespace
analysis
{
31
32
void
ExpressionAnalyzer::analyze
() {
33
if
(manager.getTokens().empty()) {
34
if
(manager.getExpectedFinalDepth() != 0) {
35
throw
AnalysisError
(
"Expression cannot be empty."
);
36
}
37
}
38
39
manager.getResult<
ValidationPass
>();
40
manager.getResult<
StackSafetyPass
>();
41
manager.getResult<
RelAccessAnalysisPass
>();
42
manager.getResult<
CoordinateUsagePass
>();
43
manager.getResult<
VariableUsagePass
>();
44
manager.getResult<
StructurizeCFGPass
>();
// TODO: Only run for VkExpr.
45
manager.getResult<
PropWriteTypeSafetyPass
>();
46
}
47
48
}
// namespace analysis
AnalysisError.hpp
CoordinateUsagePass.hpp
ExpressionAnalyzer.hpp
PropWriteTypeSafetyPass.hpp
RelAccessAnalysisPass.hpp
StackSafetyPass.hpp
StructurizeCFGPass.hpp
ValidationPass.hpp
VariableUsagePass.hpp
analysis::AnalysisError
Definition
AnalysisError.hpp:30
analysis::CoordinateUsagePass
Definition
CoordinateUsagePass.hpp:42
analysis::ExpressionAnalyzer::analyze
void analyze()
Definition
ExpressionAnalyzer.cpp:32
analysis::PropWriteTypeSafetyPass
Definition
PropWriteTypeSafetyPass.hpp:38
analysis::RelAccessAnalysisPass
Definition
RelAccessAnalysisPass.hpp:44
analysis::StackSafetyPass
Definition
StackSafetyPass.hpp:42
analysis::StructurizeCFGPass
Definition
StructurizeCFGPass.hpp:85
analysis::ValidationPass
Definition
ValidationPass.hpp:38
analysis::VariableUsagePass
Definition
VariableUsagePass.hpp:43
analysis
Definition
AnalysisResults.hpp:36
llvmexpr
analysis
ExpressionAnalyzer.cpp
Generated by
1.16.0