public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/16306] New: restrict and copying pointers problem
@ 2004-07-01  0:01 dann at godzilla dot ics dot uci dot edu
  2004-07-01  1:35 ` [Bug tree-optimization/16306] [3.5 Regression] " pinskia at gcc dot gnu dot org
                   ` (4 more replies)
  0 siblings, 5 replies; 10+ messages in thread
From: dann at godzilla dot ics dot uci dot edu @ 2004-07-01  0:01 UTC (permalink / raw)
  To: gcc-bugs

The current mainline does not optimize away the "link_error" call for this function:

void bar00 (int *a1, int *a2)
{
  int * __restrict__ cpy_res1 = a1;
  int * __restrict__ cpy_res2 = a2;
  cpy_res1[0] = 1;
  cpy_res2[0] = 1;
  if (cpy_res1[0] != 1)
    link_error ();
}

gcc-3.0 optimizes it. 

What happens is that the dom1 pass replaces the uses of cpy_res[12] (which are
restricted pointers)  with a[12] (which are not), so the RTL optimizers cannot
know that the "if" can be optimized away. 

This issue might be sort of related to PR14187. 


PR 14187

-- 
           Summary: restrict and copying pointers problem
           Product: gcc
           Version: 3.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dann at godzilla dot ics dot uci dot edu
                CC: gcc-bugs at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16306


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug tree-optimization/16306] [3.5 Regression] restrict and copying pointers problem
  2004-07-01  0:01 [Bug tree-optimization/16306] New: restrict and copying pointers problem dann at godzilla dot ics dot uci dot edu
@ 2004-07-01  1:35 ` pinskia at gcc dot gnu dot org
  2004-12-26  5:51 ` [Bug tree-optimization/16306] [4.0 " pinskia at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-07-01  1:35 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-07-01 01:35 -------
Confirmed.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
           Keywords|                            |missed-optimization
      Known to fail|                            |3.5.0
      Known to work|                            |3.4.0
   Last reconfirmed|0000-00-00 00:00:00         |2004-07-01 01:35:29
               date|                            |
            Summary|restrict and copying        |[3.5 Regression] restrict
                   |pointers problem            |and copying pointers problem
   Target Milestone|---                         |3.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16306


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug tree-optimization/16306] [4.0 Regression] restrict and copying pointers problem
  2004-07-01  0:01 [Bug tree-optimization/16306] New: restrict and copying pointers problem dann at godzilla dot ics dot uci dot edu
  2004-07-01  1:35 ` [Bug tree-optimization/16306] [3.5 Regression] " pinskia at gcc dot gnu dot org
@ 2004-12-26  5:51 ` pinskia at gcc dot gnu dot org
  2005-04-21  5:06 ` [Bug tree-optimization/16306] [4.0/4.1 " mmitchel at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-12-26  5:51 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-26 05:51 -------
First part to fix it: <http://gcc.gnu.org/ml/gcc-patches/2004-12/msg01931.html>, The next part is 
because TER is getting in the way.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16306


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug tree-optimization/16306] [4.0/4.1 Regression] restrict and copying pointers problem
  2004-07-01  0:01 [Bug tree-optimization/16306] New: restrict and copying pointers problem dann at godzilla dot ics dot uci dot edu
  2004-07-01  1:35 ` [Bug tree-optimization/16306] [3.5 Regression] " pinskia at gcc dot gnu dot org
  2004-12-26  5:51 ` [Bug tree-optimization/16306] [4.0 " pinskia at gcc dot gnu dot org
@ 2005-04-21  5:06 ` mmitchel at gcc dot gnu dot org
  2005-07-08  1:45 ` mmitchel at gcc dot gnu dot org
  2005-09-27 16:25 ` mmitchel at gcc dot gnu dot org
  4 siblings, 0 replies; 10+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-04-21  5:06 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.0.0                       |4.0.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16306


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug tree-optimization/16306] [4.0/4.1 Regression] restrict and copying pointers problem
  2004-07-01  0:01 [Bug tree-optimization/16306] New: restrict and copying pointers problem dann at godzilla dot ics dot uci dot edu
                   ` (2 preceding siblings ...)
  2005-04-21  5:06 ` [Bug tree-optimization/16306] [4.0/4.1 " mmitchel at gcc dot gnu dot org
@ 2005-07-08  1:45 ` mmitchel at gcc dot gnu dot org
  2005-09-27 16:25 ` mmitchel at gcc dot gnu dot org
  4 siblings, 0 replies; 10+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-07-08  1:45 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.0.1                       |4.0.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16306


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug tree-optimization/16306] [4.0/4.1 Regression] restrict and copying pointers problem
  2004-07-01  0:01 [Bug tree-optimization/16306] New: restrict and copying pointers problem dann at godzilla dot ics dot uci dot edu
                   ` (3 preceding siblings ...)
  2005-07-08  1:45 ` mmitchel at gcc dot gnu dot org
@ 2005-09-27 16:25 ` mmitchel at gcc dot gnu dot org
  4 siblings, 0 replies; 10+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-09-27 16:25 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.0.2                       |4.0.3


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16306


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug tree-optimization/16306] [4.0/4.1 Regression] restrict and copying pointers problem
       [not found] <bug-16306-1008@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2005-10-22  3:12 ` pinskia at gcc dot gnu dot org
@ 2005-10-30 22:41 ` mmitchel at gcc dot gnu dot org
  3 siblings, 0 replies; 10+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-10-30 22:41 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from mmitchel at gcc dot gnu dot org  2005-10-30 22:41 -------
To better support restrict, we should copy around the set of "based on"
pointers when copying other pointer attributes.

However, I don't think this is a sufficiently serious missed optimization to
warrant holding up a release.  

Downgraded to P5.


-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P2                          |P5


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16306


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug tree-optimization/16306] [4.0/4.1 Regression] restrict and copying pointers problem
       [not found] <bug-16306-1008@http.gcc.gnu.org/bugzilla/>
  2005-10-12 20:58 ` steven at gcc dot gnu dot org
  2005-10-12 20:58 ` steven at gcc dot gnu dot org
@ 2005-10-22  3:12 ` pinskia at gcc dot gnu dot org
  2005-10-30 22:41 ` mmitchel at gcc dot gnu dot org
  3 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-10-22  3:12 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |minor


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16306


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug tree-optimization/16306] [4.0/4.1 Regression] restrict and copying pointers problem
       [not found] <bug-16306-1008@http.gcc.gnu.org/bugzilla/>
  2005-10-12 20:58 ` steven at gcc dot gnu dot org
@ 2005-10-12 20:58 ` steven at gcc dot gnu dot org
  2005-10-22  3:12 ` pinskia at gcc dot gnu dot org
  2005-10-30 22:41 ` mmitchel at gcc dot gnu dot org
  3 siblings, 0 replies; 10+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-10-12 20:58 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from steven at gcc dot gnu dot org  2005-10-12 20:58 -------
The patch mentioned in #2 is not sufficient anymore.  copy propagation and VRP
also propagate copies of this kind.  And may_propagate_copy is not used in most
places, and even when it _is_ used, it doesn't help because it allows this kind
of copies to be performed.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16306


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug tree-optimization/16306] [4.0/4.1 Regression] restrict and copying pointers problem
       [not found] <bug-16306-1008@http.gcc.gnu.org/bugzilla/>
@ 2005-10-12 20:58 ` steven at gcc dot gnu dot org
  2005-10-12 20:58 ` steven at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 10+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-10-12 20:58 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from steven at gcc dot gnu dot org  2005-10-12 20:58 -------
Mark, this is probably not fixable for GCC 4.1.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16306


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2005-10-30 22:41 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-07-01  0:01 [Bug tree-optimization/16306] New: restrict and copying pointers problem dann at godzilla dot ics dot uci dot edu
2004-07-01  1:35 ` [Bug tree-optimization/16306] [3.5 Regression] " pinskia at gcc dot gnu dot org
2004-12-26  5:51 ` [Bug tree-optimization/16306] [4.0 " pinskia at gcc dot gnu dot org
2005-04-21  5:06 ` [Bug tree-optimization/16306] [4.0/4.1 " mmitchel at gcc dot gnu dot org
2005-07-08  1:45 ` mmitchel at gcc dot gnu dot org
2005-09-27 16:25 ` mmitchel at gcc dot gnu dot org
     [not found] <bug-16306-1008@http.gcc.gnu.org/bugzilla/>
2005-10-12 20:58 ` steven at gcc dot gnu dot org
2005-10-12 20:58 ` steven at gcc dot gnu dot org
2005-10-22  3:12 ` pinskia at gcc dot gnu dot org
2005-10-30 22:41 ` mmitchel at gcc dot gnu dot org

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).