From 5ee51119d1345f3f13af784455a4ae466766912b Mon Sep 17 00:00:00 2001
From: Andrew MacLeod <amacleod@redhat.com>
Date: Mon, 9 Oct 2023 10:01:11 -0400
Subject: [PATCH 1/2] Remove unused get_identity_relation.
Turns out we didnt need this as there is no unordered relations
managed by the oracle.
* gimple-range-gori.cc (gori_compute::compute_operand1_range): Do
not call get_identity_relation.
(gori_compute::compute_operand2_range): Ditto.
* value-relation.cc (get_identity_relation): Remove.
* value-relation.h (get_identity_relation): Remove protyotype.
---
gcc/gimple-range-gori.cc | 10 ++--------
gcc/value-relation.cc | 14 --------------
gcc/value-relation.h | 3 ---
3 files changed, 2 insertions(+), 25 deletions(-)
@@ -1146,10 +1146,7 @@ gori_compute::compute_operand1_range (vrange &r,
// If op1 == op2, create a new trio for just this call.
if (op1 == op2 && gimple_range_ssa_p (op1))
- {
- relation_kind k = get_identity_relation (op1, op1_range);
- trio = relation_trio (trio.lhs_op1 (), trio.lhs_op2 (), k);
- }
+ trio = relation_trio (trio.lhs_op1 (), trio.lhs_op2 (), VREL_EQ);
if (!handler.calc_op1 (r, lhs, op2_range, trio))
return false;
}
@@ -1225,10 +1222,7 @@ gori_compute::compute_operand2_range (vrange &r,
// If op1 == op2, create a new trio for this stmt.
if (op1 == op2 && gimple_range_ssa_p (op1))
- {
- relation_kind k = get_identity_relation (op1, op1_range);
- trio = relation_trio (trio.lhs_op1 (), trio.lhs_op2 (), k);
- }
+ trio = relation_trio (trio.lhs_op1 (), trio.lhs_op2 (), VREL_EQ);
// Intersect with range for op2 based on lhs and op1.
if (!handler.calc_op2 (r, lhs, op1_range, trio))
return false;
@@ -183,20 +183,6 @@ relation_transitive (relation_kind r1, relation_kind r2)
return relation_kind (rr_transitive_table[r1][r2]);
}
-// When operands of a statement are identical ssa_names, return the
-// approriate relation between operands for NAME == NAME, given RANGE.
-//
-relation_kind
-get_identity_relation (tree name, vrange &range ATTRIBUTE_UNUSED)
-{
- // Return VREL_UNEQ when it is supported for floats as appropriate.
- if (frange::supports_p (TREE_TYPE (name)))
- return VREL_EQ;
-
- // Otherwise return VREL_EQ.
- return VREL_EQ;
-}
-
// This vector maps a relation to the equivalent tree code.
static const tree_code relation_to_code [VREL_LAST] = {
@@ -91,9 +91,6 @@ inline bool relation_equiv_p (relation_kind r)
void print_relation (FILE *f, relation_kind rel);
-// Return relation for NAME == NAME with RANGE.
-relation_kind get_identity_relation (tree name, vrange &range);
-
class relation_oracle
{
public:
--
2.41.0