From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1666) id 9DE9F3A7802B; Fri, 23 Apr 2021 13:00:26 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 9DE9F3A7802B MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Richard Biener To: gcc-cvs@gcc.gnu.org Subject: [gcc r10-9756] remove write-only array in rev_post_order_and_mark_dfs_back_seme X-Act-Checkin: gcc X-Git-Author: Richard Biener X-Git-Refname: refs/heads/releases/gcc-10 X-Git-Oldrev: 283367662c25057fd7c9c98257cca858f85b75fc X-Git-Newrev: 9db2c895fe2cb2aba61f6ef006c6f6c46ef07521 Message-Id: <20210423130026.9DE9F3A7802B@sourceware.org> Date: Fri, 23 Apr 2021 13:00:26 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Apr 2021 13:00:26 -0000 https://gcc.gnu.org/g:9db2c895fe2cb2aba61f6ef006c6f6c46ef07521 commit r10-9756-g9db2c895fe2cb2aba61f6ef006c6f6c46ef07521 Author: Richard Biener Date: Mon Jul 20 15:58:19 2020 +0200 remove write-only array in rev_post_order_and_mark_dfs_back_seme This removes a write-only array in rev_post_order_and_mark_dfs_back_seme. 2020-07-20 Richard Biener * cfganal.c (rev_post_order_and_mark_dfs_back_seme): Remove write-only post array. (cherry picked from commit 57d4771b7c15db139043bf41a03b8abe01e11f18) Diff: --- gcc/cfganal.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/gcc/cfganal.c b/gcc/cfganal.c index 395b810262a..5c85ebe3c1a 100644 --- a/gcc/cfganal.c +++ b/gcc/cfganal.c @@ -1079,13 +1079,12 @@ rev_post_order_and_mark_dfs_back_seme (struct function *fn, edge entry, a need to re-allocate. */ auto_vec stack (2 * n_basic_blocks_for_fn (fn)); - int *pre = XNEWVEC (int, 2 * last_basic_block_for_fn (fn)); - int *post = pre + last_basic_block_for_fn (fn); + int *pre = XNEWVEC (int, last_basic_block_for_fn (fn)); /* BB flag to track nodes that have been visited. */ auto_bb_flag visited (fn); - /* BB flag to track which nodes have post[] assigned to avoid - zeroing post. */ + /* BB flag to track which nodes have postorder visting completed. Used + for backedge marking. */ auto_bb_flag post_assigned (fn); /* Push the first edge on to the stack. */ @@ -1133,7 +1132,6 @@ rev_post_order_and_mark_dfs_back_seme (struct function *fn, edge entry, { /* There are no successors for the DEST node so assign its reverse completion number. */ - post[dest->index] = rev_post_order_num; dest->flags |= post_assigned; rev_post_order[rev_post_order_num] = dest->index; rev_post_order_num++; @@ -1142,16 +1140,15 @@ rev_post_order_and_mark_dfs_back_seme (struct function *fn, edge entry, else { if (dest->flags & visited + && !(dest->flags & post_assigned) && src != entry->src - && pre[src->index] >= pre[dest->index] - && !(dest->flags & post_assigned)) + && pre[src->index] >= pre[dest->index]) e->flags |= EDGE_DFS_BACK; if (idx != 0 && stack[idx - 1]->src != src) { /* There are no more successors for the SRC node so assign its reverse completion number. */ - post[src->index] = rev_post_order_num; src->flags |= post_assigned; rev_post_order[rev_post_order_num] = src->index; rev_post_order_num++;