VapourSynth-llvmexpr
Loading...
Searching...
No Matches
DataStructures.hpp
Go to the documentation of this file.
1
19
20
#ifndef LLVMEXPR_ANALYSIS_FRAMEWORK_DATA_STRUCTURES_HPP
21
#define LLVMEXPR_ANALYSIS_FRAMEWORK_DATA_STRUCTURES_HPP
22
23
#include <tuple>
24
#include <vector>
25
26
namespace
analysis
{
27
28
struct
CFGBlock
{
29
int
start_token_idx
;
30
int
end_token_idx
;
// exclusive
31
std::vector<int>
successors
;
32
std::vector<int>
predecessors
;
33
34
int
stack_effect
= 0;
35
int
min_stack_needed
=
36
0;
// min stack depth during the block, relative to start
37
};
38
39
struct
RelYAccess
{
40
int
clip_idx
;
41
int
rel_y
;
42
bool
use_mirror
;
43
44
bool
operator<
(
const
RelYAccess
& other)
const
{
45
return
std::tie(
clip_idx
,
rel_y
,
use_mirror
) <
46
std::tie(other.
clip_idx
, other.
rel_y
, other.
use_mirror
);
47
}
48
};
49
50
}
// namespace analysis
51
52
#endif
// LLVMEXPR_ANALYSIS_FRAMEWORK_DATA_STRUCTURES_HPP
analysis
Definition
AnalysisResults.hpp:36
analysis::CFGBlock
Definition
DataStructures.hpp:28
analysis::CFGBlock::predecessors
std::vector< int > predecessors
Definition
DataStructures.hpp:32
analysis::CFGBlock::end_token_idx
int end_token_idx
Definition
DataStructures.hpp:30
analysis::CFGBlock::start_token_idx
int start_token_idx
Definition
DataStructures.hpp:29
analysis::CFGBlock::successors
std::vector< int > successors
Definition
DataStructures.hpp:31
analysis::CFGBlock::stack_effect
int stack_effect
Definition
DataStructures.hpp:34
analysis::CFGBlock::min_stack_needed
int min_stack_needed
Definition
DataStructures.hpp:35
analysis::RelYAccess
Definition
DataStructures.hpp:39
analysis::RelYAccess::use_mirror
bool use_mirror
Definition
DataStructures.hpp:42
analysis::RelYAccess::clip_idx
int clip_idx
Definition
DataStructures.hpp:40
analysis::RelYAccess::operator<
bool operator<(const RelYAccess &other) const
Definition
DataStructures.hpp:44
analysis::RelYAccess::rel_y
int rel_y
Definition
DataStructures.hpp:41
llvmexpr
analysis
framework
DataStructures.hpp
Generated by
1.16.0