public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
From: Andrew Macleod <amacleod@gcc.gnu.org>
To: gcc-cvs@gcc.gnu.org
Subject: [gcc r12-4869] For ranges, PHIs don't need to process arg == def.
Date: Wed,  3 Nov 2021 14:38:20 +0000 (GMT)	[thread overview]
Message-ID: <20211103143820.CC00C3858005@sourceware.org> (raw)

https://gcc.gnu.org/g:6d936684fcf9bbb55837e3a87ae2221d5ec9b5b7

commit r12-4869-g6d936684fcf9bbb55837e3a87ae2221d5ec9b5b7
Author: Andrew MacLeod <amacleod@redhat.com>
Date:   Tue Nov 2 09:46:53 2021 -0400

    For ranges, PHIs don't need to process arg == def.
    
    If an argument of a phi is the same as the DEF of the phi, then the range
    on the incoming edge doesn't need to be taken into account since it can't
    be anything other than itself.
    
            * gimple-range-fold.cc (fold_using_range::range_of_phi): Don't import
            a range from edge if arg == phidef.

Diff:
---
 gcc/gimple-range-fold.cc | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/gcc/gimple-range-fold.cc b/gcc/gimple-range-fold.cc
index 6cc7753a750..608d98b43d5 100644
--- a/gcc/gimple-range-fold.cc
+++ b/gcc/gimple-range-fold.cc
@@ -779,6 +779,10 @@ fold_using_range::range_of_phi (irange &r, gphi *phi, fur_source &src)
   for (x = 0; x < gimple_phi_num_args (phi); x++)
     {
       tree arg = gimple_phi_arg_def (phi, x);
+      // An argument that is the same as the def provides no new range.
+      if (arg == phi_def)
+	continue;
+
       edge e = gimple_phi_arg_edge (phi, x);
 
       // Get the range of the argument on its edge.


                 reply	other threads:[~2021-11-03 14:38 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211103143820.CC00C3858005@sourceware.org \
    --to=amacleod@gcc.gnu.org \
    --cc=gcc-cvs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).