aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2020-02-18 00:29:52 +0100
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2021-04-17 20:43:07 +0200
commit015aad879799020c4bb0da458a01bebc434aba14 (patch)
tree0cbfa28ea4dd53702a868b312f7ec08a09c51425
parent0dd7ffba2e72bb83012c6d6e8a5a98ed31c4168e (diff)
downloadsparse-015aad879799020c4bb0da458a01bebc434aba14.tar.gz
memops: find_dominating_parents()'s generation is redundant
find_dominating_parents() has an argument 'generation' used to check if a BB has already been visited. But this argument is not needed since this generation is also stored in the field ::generation of the current BB. So, remove this argument. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
-rw-r--r--memops.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/memops.c b/memops.c
index 82138832..92888271 100644
--- a/memops.c
+++ b/memops.c
@@ -59,7 +59,7 @@ end:
}
static int find_dominating_parents(struct instruction *insn,
- struct basic_block *bb, unsigned long generation, struct pseudo_list **dominators,
+ struct basic_block *bb, struct pseudo_list **dominators,
int local)
{
struct basic_block *parent;
@@ -86,11 +86,11 @@ static int find_dominating_parents(struct instruction *insn,
goto found_dominator;
} END_FOR_EACH_PTR_REVERSE(one);
no_dominance:
- if (parent->generation == generation)
+ if (parent->generation == bb->generation)
continue;
- parent->generation = generation;
+ parent->generation = bb->generation;
- if (!find_dominating_parents(insn, parent, generation, dominators, local))
+ if (!find_dominating_parents(insn, parent, dominators, local))
return 0;
continue;
@@ -146,7 +146,6 @@ static void simplify_loads(struct basic_block *bb)
pseudo_t pseudo = insn->src;
int local = local_pseudo(pseudo);
struct pseudo_list *dominators;
- unsigned long generation;
if (insn->is_volatile)
continue;
@@ -177,10 +176,9 @@ static void simplify_loads(struct basic_block *bb)
} END_FOR_EACH_PTR_REVERSE(dom);
/* OK, go find the parents */
- generation = ++bb_generation;
- bb->generation = generation;
+ bb->generation = ++bb_generation;
dominators = NULL;
- if (find_dominating_parents(insn, bb, generation, &dominators, local)) {
+ if (find_dominating_parents(insn, bb, &dominators, local)) {
/* This happens with initial assignments to structures etc.. */
if (!dominators) {
if (local) {