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
26namespace analysis {
27
28struct CFGBlock {
30 int end_token_idx; // exclusive
31 std::vector<int> successors;
32 std::vector<int> predecessors;
33
34 int stack_effect = 0;
36 0; // min stack depth during the block, relative to start
37};
38
39struct RelYAccess {
41 int rel_y;
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
std::vector< int > predecessors
std::vector< int > successors
bool operator<(const RelYAccess &other) const