Home
last modified time | relevance | path

Searched refs:SENode (Results 1 – 22 of 22) sorted by relevance

/external/deqp-deps/SPIRV-Tools/source/opt/
Dscalar_analysis_simplification.cpp81 SENode* node_to_simplify) in SENodeSimplifyImpl()
87 SENode* Simplify();
95 void GatherAccumulatorsFromChildNodes(SENode* new_node, SENode* child,
103 bool AccumulatorsFromMultiply(SENode* multiply, bool negation);
111 SENode* SimplifyRecurrentAddExpression(SERecurrentNode* node);
116 SENode* SimplifyPolynomial();
129 SENode* FoldRecurrentAddExpressions(SENode*);
135 SENode* EliminateZeroCoefficientRecurrents(SENode* node);
141 SENode* node_;
148 std::map<SENode*, int64_t> accumulators_;
[all …]
Dscalar_analysis.h47 SENode* CreateNegation(SENode* operand);
51 SENode* CreateSubtraction(SENode* operand_1, SENode* operand_2);
56 SENode* CreateAddNode(SENode* operand_1, SENode* operand_2);
59 SENode* CreateMultiplyNode(SENode* operand_1, SENode* operand_2);
62 SENode* CreateConstant(int64_t integer);
65 SENode* CreateValueUnknownNode(const Instruction* inst);
68 SENode* CreateCantComputeNode();
72 SENode* CreateRecurrentExpression(const Loop* loop, SENode* offset,
73 SENode* coefficient);
76 SENode* AnalyzeInstruction(const Instruction* inst);
[all …]
Dloop_dependence.h200 DependenceLine(SENode* a, SENode* b, SENode* c, const Loop* loop) in DependenceLine()
208 SENode* GetA() const { return a_; } in GetA()
209 SENode* GetB() const { return b_; } in GetB()
210 SENode* GetC() const { return c_; } in GetC()
213 SENode* a_;
214 SENode* b_;
215 SENode* c_;
220 DependenceDistance(SENode* distance, const Loop* loop) in DependenceDistance()
228 SENode* GetDistance() const { return distance_; } in GetDistance()
231 SENode* distance_;
[all …]
Dscalar_analysis.cpp49 uint32_t SENode::NumberOfNodes = 0;
58 SENode* ScalarEvolutionAnalysis::CreateNegation(SENode* operand) { in CreateNegation()
62 if (operand->GetType() == SENode::Constant) { in CreateNegation()
65 std::unique_ptr<SENode> negation_node{new SENegative(this)}; in CreateNegation()
70 SENode* ScalarEvolutionAnalysis::CreateConstant(int64_t integer) { in CreateConstant()
72 std::unique_ptr<SENode>(new SEConstantNode(this, integer))); in CreateConstant()
75 SENode* ScalarEvolutionAnalysis::CreateRecurrentExpression( in CreateRecurrentExpression()
76 const Loop* loop, SENode* offset, SENode* coefficient) { in CreateRecurrentExpression()
98 SENode* ScalarEvolutionAnalysis::AnalyzeMultiplyOp( in AnalyzeMultiplyOp()
104 SENode* op1 = in AnalyzeMultiplyOp()
[all …]
Dscalar_analysis_nodes.h43 class SENode {
55 using ChildContainerType = std::vector<SENode*>;
57 explicit SENode(ScalarEvolutionAnalysis* parent_analysis) in SENode() function
62 virtual ~SENode() {} in ~SENode()
64 virtual inline void AddChild(SENode* child) { in AddChild()
72 auto find_first_less_than = [child](const SENode* node) { in AddChild()
93 bool operator==(const SENode& other) const;
96 bool operator!=(const SENode& other) const;
99 inline SENode* GetChild(size_t index) { return children_[index]; } in GetChild()
100 inline const SENode* GetChild(size_t index) const { return children_[index]; } in GetChild()
[all …]
Dloop_dependence_helpers.cpp33 const std::pair<SENode*, SENode*>& subscript_pair) { in IsZIV() argument
39 const std::pair<SENode*, SENode*>& subscript_pair) { in IsSIV() argument
45 const std::pair<SENode*, SENode*>& subscript_pair) { in IsMIV() argument
50 SENode* LoopDependenceAnalysis::GetLowerBound(const Loop* loop) { in GetLowerBound()
82 SENode* LoopDependenceAnalysis::GetUpperBound(const Loop* loop) { in GetUpperBound()
93 SENode* upper_bound = scalar_evolution_.SimplifyExpression( in GetUpperBound()
103 SENode* upper_bound = in GetUpperBound()
114 SENode* upper_bound = scalar_evolution_.SimplifyExpression( in GetUpperBound()
138 const Loop* loop, SENode* distance, SENode* coefficient) { in IsProvablyOutsideOfLoopBounds()
148 SENode* lower_bound = GetLowerBound(loop); in IsProvablyOutsideOfLoopBounds()
[all …]
Dloop_dependence.cpp31 using SubscriptPair = std::pair<SENode*, SENode*>;
73 bool IsInCorrectFormForGCDTest(SENode* node) { in IsInCorrectFormForGCDTest()
90 std::vector<SERecurrentNode*> GetAllTopLevelRecurrences(SENode* node) { in GetAllTopLevelRecurrences()
108 std::vector<SEConstantNode*> GetAllTopLevelConstants(SENode* node) { in GetAllTopLevelConstants()
277 SENode* source_node = scalar_evolution_.SimplifyExpression( in GetDependence()
279 SENode* destination_node = scalar_evolution_.SimplifyExpression( in GetDependence()
302 if (source_node->GetType() == SENode::CanNotCompute || in GetDependence()
303 destination_node->GetType() == SENode::CanNotCompute) { in GetDependence()
359 SENode* source_node = scalar_evolution_.SimplifyExpression( in GetDependence()
361 SENode* destination_node = scalar_evolution_.SimplifyExpression( in GetDependence()
[all …]
Dloop_fusion.cpp308 SENode* induction_node_0 = scalar_analysis->SimplifyExpression( in CheckStep()
314 SENode* induction_step_0 = in CheckStep()
320 SENode* induction_node_1 = scalar_analysis->SimplifyExpression( in CheckStep()
326 SENode* induction_step_1 = in CheckStep()
Dloop_peeling.cpp840 if (lhs->GetType() == SENode::CanNotCompute) { in GetPeelingInfo()
848 if (rhs->GetType() == SENode::CanNotCompute) { in GetPeelingInfo()
/external/swiftshader/third_party/SPIRV-Tools/source/opt/
Dscalar_analysis_simplification.cpp81 SENode* node_to_simplify) in SENodeSimplifyImpl()
87 SENode* Simplify();
95 void GatherAccumulatorsFromChildNodes(SENode* new_node, SENode* child,
103 bool AccumulatorsFromMultiply(SENode* multiply, bool negation);
111 SENode* SimplifyRecurrentAddExpression(SERecurrentNode* node);
116 SENode* SimplifyPolynomial();
129 SENode* FoldRecurrentAddExpressions(SENode*);
135 SENode* EliminateZeroCoefficientRecurrents(SENode* node);
141 SENode* node_;
148 std::map<SENode*, int64_t> accumulators_;
[all …]
Dscalar_analysis.h47 SENode* CreateNegation(SENode* operand);
51 SENode* CreateSubtraction(SENode* operand_1, SENode* operand_2);
56 SENode* CreateAddNode(SENode* operand_1, SENode* operand_2);
59 SENode* CreateMultiplyNode(SENode* operand_1, SENode* operand_2);
62 SENode* CreateConstant(int64_t integer);
65 SENode* CreateValueUnknownNode(const Instruction* inst);
68 SENode* CreateCantComputeNode();
72 SENode* CreateRecurrentExpression(const Loop* loop, SENode* offset,
73 SENode* coefficient);
76 SENode* AnalyzeInstruction(const Instruction* inst);
[all …]
Dloop_dependence.h200 DependenceLine(SENode* a, SENode* b, SENode* c, const Loop* loop) in DependenceLine()
208 SENode* GetA() const { return a_; } in GetA()
209 SENode* GetB() const { return b_; } in GetB()
210 SENode* GetC() const { return c_; } in GetC()
213 SENode* a_;
214 SENode* b_;
215 SENode* c_;
220 DependenceDistance(SENode* distance, const Loop* loop) in DependenceDistance()
228 SENode* GetDistance() const { return distance_; } in GetDistance()
231 SENode* distance_;
[all …]
Dscalar_analysis.cpp49 uint32_t SENode::NumberOfNodes = 0;
58 SENode* ScalarEvolutionAnalysis::CreateNegation(SENode* operand) { in CreateNegation()
62 if (operand->GetType() == SENode::Constant) { in CreateNegation()
65 std::unique_ptr<SENode> negation_node{new SENegative(this)}; in CreateNegation()
70 SENode* ScalarEvolutionAnalysis::CreateConstant(int64_t integer) { in CreateConstant()
72 std::unique_ptr<SENode>(new SEConstantNode(this, integer))); in CreateConstant()
75 SENode* ScalarEvolutionAnalysis::CreateRecurrentExpression( in CreateRecurrentExpression()
76 const Loop* loop, SENode* offset, SENode* coefficient) { in CreateRecurrentExpression()
98 SENode* ScalarEvolutionAnalysis::AnalyzeMultiplyOp( in AnalyzeMultiplyOp()
104 SENode* op1 = in AnalyzeMultiplyOp()
[all …]
Dscalar_analysis_nodes.h43 class SENode {
55 using ChildContainerType = std::vector<SENode*>;
57 explicit SENode(ScalarEvolutionAnalysis* parent_analysis) in SENode() function
62 virtual ~SENode() {} in ~SENode()
64 virtual inline void AddChild(SENode* child) { in AddChild()
72 auto find_first_less_than = [child](const SENode* node) { in AddChild()
93 bool operator==(const SENode& other) const;
96 bool operator!=(const SENode& other) const;
99 inline SENode* GetChild(size_t index) { return children_[index]; } in GetChild()
100 inline const SENode* GetChild(size_t index) const { return children_[index]; } in GetChild()
[all …]
Dloop_dependence_helpers.cpp33 const std::pair<SENode*, SENode*>& subscript_pair) { in IsZIV() argument
39 const std::pair<SENode*, SENode*>& subscript_pair) { in IsSIV() argument
45 const std::pair<SENode*, SENode*>& subscript_pair) { in IsMIV() argument
50 SENode* LoopDependenceAnalysis::GetLowerBound(const Loop* loop) { in GetLowerBound()
82 SENode* LoopDependenceAnalysis::GetUpperBound(const Loop* loop) { in GetUpperBound()
93 SENode* upper_bound = scalar_evolution_.SimplifyExpression( in GetUpperBound()
103 SENode* upper_bound = in GetUpperBound()
114 SENode* upper_bound = scalar_evolution_.SimplifyExpression( in GetUpperBound()
138 const Loop* loop, SENode* distance, SENode* coefficient) { in IsProvablyOutsideOfLoopBounds()
148 SENode* lower_bound = GetLowerBound(loop); in IsProvablyOutsideOfLoopBounds()
[all …]
Dloop_dependence.cpp31 using SubscriptPair = std::pair<SENode*, SENode*>;
73 bool IsInCorrectFormForGCDTest(SENode* node) { in IsInCorrectFormForGCDTest()
90 std::vector<SERecurrentNode*> GetAllTopLevelRecurrences(SENode* node) { in GetAllTopLevelRecurrences()
108 std::vector<SEConstantNode*> GetAllTopLevelConstants(SENode* node) { in GetAllTopLevelConstants()
277 SENode* source_node = scalar_evolution_.SimplifyExpression( in GetDependence()
279 SENode* destination_node = scalar_evolution_.SimplifyExpression( in GetDependence()
302 if (source_node->GetType() == SENode::CanNotCompute || in GetDependence()
303 destination_node->GetType() == SENode::CanNotCompute) { in GetDependence()
359 SENode* source_node = scalar_evolution_.SimplifyExpression( in GetDependence()
361 SENode* destination_node = scalar_evolution_.SimplifyExpression( in GetDependence()
[all …]
Dloop_fusion.cpp308 SENode* induction_node_0 = scalar_analysis->SimplifyExpression( in CheckStep()
314 SENode* induction_step_0 = in CheckStep()
320 SENode* induction_node_1 = scalar_analysis->SimplifyExpression( in CheckStep()
326 SENode* induction_step_1 = in CheckStep()
Dloop_peeling.cpp840 if (lhs->GetType() == SENode::CanNotCompute) { in GetPeelingInfo()
848 if (rhs->GetType() == SENode::CanNotCompute) { in GetPeelingInfo()
/external/deqp-deps/SPIRV-Tools/test/opt/
Dscalar_analysis.cpp128 const SENode* node = analysis.AnalyzeInstruction(child); in TEST_F()
133 EXPECT_EQ(node->GetType(), SENode::Add); in TEST_F()
135 const SENode* child_1 = node->GetChild(0); in TEST_F()
136 EXPECT_TRUE(child_1->GetType() == SENode::Constant || in TEST_F()
137 child_1->GetType() == SENode::RecurrentAddExpr); in TEST_F()
139 const SENode* child_2 = node->GetChild(1); in TEST_F()
140 EXPECT_TRUE(child_2->GetType() == SENode::Constant || in TEST_F()
141 child_2->GetType() == SENode::RecurrentAddExpr); in TEST_F()
143 SENode* simplified = analysis.SimplifyExpression(const_cast<SENode*>(node)); in TEST_F()
145 EXPECT_EQ(simplified->GetType(), SENode::RecurrentAddExpr); in TEST_F()
[all …]
/external/swiftshader/third_party/SPIRV-Tools/test/opt/
Dscalar_analysis.cpp128 const SENode* node = analysis.AnalyzeInstruction(child); in TEST_F()
133 EXPECT_EQ(node->GetType(), SENode::Add); in TEST_F()
135 const SENode* child_1 = node->GetChild(0); in TEST_F()
136 EXPECT_TRUE(child_1->GetType() == SENode::Constant || in TEST_F()
137 child_1->GetType() == SENode::RecurrentAddExpr); in TEST_F()
139 const SENode* child_2 = node->GetChild(1); in TEST_F()
140 EXPECT_TRUE(child_2->GetType() == SENode::Constant || in TEST_F()
141 child_2->GetType() == SENode::RecurrentAddExpr); in TEST_F()
143 SENode* simplified = analysis.SimplifyExpression(const_cast<SENode*>(node)); in TEST_F()
145 EXPECT_EQ(simplified->GetType(), SENode::RecurrentAddExpr); in TEST_F()
[all …]
/external/swiftshader/third_party/SPIRV-Tools/test/opt/loop_optimizations/
Ddependence_analysis_helpers.cpp1518 SENode* load = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1527 SENode* store = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1530 SENode* delta = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1548 SENode* load = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1557 SENode* store = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1560 SENode* delta = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1599 SENode* load = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1607 SENode* store = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1610 SENode* delta = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1628 SENode* load = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
[all …]
/external/deqp-deps/SPIRV-Tools/test/opt/loop_optimizations/
Ddependence_analysis_helpers.cpp1518 SENode* load = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1527 SENode* store = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1530 SENode* delta = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1548 SENode* load = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1557 SENode* store = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1560 SENode* delta = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1599 SENode* load = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1607 SENode* store = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1610 SENode* delta = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
1628 SENode* load = analysis.GetScalarEvolution()->SimplifyExpression( in TEST()
[all …]