public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/23094] store ccp, or store copy prop misses an optimization
       [not found] <bug-23094-7958@http.gcc.gnu.org/bugzilla/>
@ 2006-04-08  2:32 ` pinskia at gcc dot gnu dot org
  2008-03-14 19:35 ` rguenth at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-04-08  2:32 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from pinskia at gcc dot gnu dot org  2006-04-08 02:32 -------
Store copy prop has the same issue, testcase:
void foo (int *p, int *q, int t)
{
  *p = t;
  *q = t;
  if (*p != 1)
    link_error ();
}


-- 


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


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

* [Bug tree-optimization/23094] store ccp, or store copy prop misses an optimization
       [not found] <bug-23094-7958@http.gcc.gnu.org/bugzilla/>
  2006-04-08  2:32 ` [Bug tree-optimization/23094] store ccp, or store copy prop misses an optimization pinskia at gcc dot gnu dot org
@ 2008-03-14 19:35 ` rguenth at gcc dot gnu dot org
  2008-03-18 15:32 ` rguenth at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-03-14 19:35 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from rguenth at gcc dot gnu dot org  2008-03-14 19:34 -------
I have a patch.  But maybe trying to optimize this is a little bit expensive?


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2007-08-05 21:07:32         |2008-03-14 19:34:25
               date|                            |


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


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

* [Bug tree-optimization/23094] store ccp, or store copy prop misses an optimization
       [not found] <bug-23094-7958@http.gcc.gnu.org/bugzilla/>
  2006-04-08  2:32 ` [Bug tree-optimization/23094] store ccp, or store copy prop misses an optimization pinskia at gcc dot gnu dot org
  2008-03-14 19:35 ` rguenth at gcc dot gnu dot org
@ 2008-03-18 15:32 ` rguenth at gcc dot gnu dot org
  2008-08-17 11:27 ` rguenth at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-03-18 15:32 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from rguenth at gcc dot gnu dot org  2008-03-18 15:31 -------
Similar case that SCCVN could also handle (store_ccp and DOM handle this):

int G;

void __attribute__((noinline))
foo (int i)
{
   if (i > 0)
     G = 3;
   else
     G = 3;

   if (G != 3)
     link_error ();
}

int
main ()
{
   foo (0);
   return 0;
}

(I have a patch for this as well, the above testcase is the same as
gcc.dg/tree-ssa/20040721-1.c)


-- 


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


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

* [Bug tree-optimization/23094] store ccp, or store copy prop misses an optimization
       [not found] <bug-23094-7958@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2008-03-18 15:32 ` rguenth at gcc dot gnu dot org
@ 2008-08-17 11:27 ` rguenth at gcc dot gnu dot org
  2008-08-19  9:09 ` rguenth at gcc dot gnu dot org
  2008-08-19  9:12 ` rguenth at gcc dot gnu dot org
  5 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-08-17 11:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from rguenth at gcc dot gnu dot org  2008-08-17 11:26 -------
The store-ccp testcase in comment #10 is fixed by the patch for PR35972.
Still the requested optimization is also performed by DOM.


-- 


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


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

* [Bug tree-optimization/23094] store ccp, or store copy prop misses an optimization
       [not found] <bug-23094-7958@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2008-08-17 11:27 ` rguenth at gcc dot gnu dot org
@ 2008-08-19  9:09 ` rguenth at gcc dot gnu dot org
  2008-08-19  9:12 ` rguenth at gcc dot gnu dot org
  5 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-08-19  9:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from rguenth at gcc dot gnu dot org  2008-08-19 09:08 -------
Subject: Bug 23094

Author: rguenth
Date: Tue Aug 19 09:06:54 2008
New Revision: 139226

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=139226
Log:
2008-08-19  Richard Guenther  <rguenther@suse.de>

        PR tree-optimization/35972
        PR tree-optimization/23094
        * tree-ssa-sccvn.h (vn_reference_lookup_pieces): Add maywalk
        parameter.
        * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Properly
        handle MISALIGNED_INDIRECT_REF.
        (get_ref_from_reference_ops): New helper.
        (vn_reference_lookup_pieces): Walk the use-def chain using the
        alias-oracle if requested.
        * tree-ssa-pre.c (phi_translate_1): Do reference lookup with
        walking the use-def chain.
        (compute_avail): But not here.
        (create_component_ref_by_pieces_1): Properly handle
        MISALIGNED_INDIRECT_REF.
        (do_regular_insertion): Handle fully redundant
        expressions after PHI-translation also for SSA_NAME values, not
        only constants.  Correctly use edoubleprime for that.

        * gcc.dg/tree-ssa/ssa-pre-19.c: New testcase.
        * gcc.dg/autopar/reduc-1.c: Move constant initialized arrays to
        global memory.
        * gcc.dg/autopar/reduc-1char.c: Likewise.
        * gcc.dg/autopar/reduc-1short.c: Likewise.
        * gcc.dg/autopar/reduc-2.c: Likewise.
        * gcc.dg/autopar/reduc-2char.c: Likewise.
        * gcc.dg/autopar/reduc-2short.c: Likewise.
        * gcc.dg/autopar/reduc-3.c: Likewise.
        * gcc.dg/tree-ssa/ifc-20040816-1.c: Likewise.
        * gcc.dg/vect/costmodel/i386/costmodel-vect-reduc-1char.c: Likewise.
        * gcc.dg/vect/costmodel/x86_64/costmodel-vect-reduc-1char.c: Likewise.
        * gcc.dg/vect/fast-math-vect-reduc-5.c: Likewise.
        * gcc.dg/vect/fast-math-vect-reduc-7.c: Likewise.
        * gcc.dg/vect/no-trapping-math-2.c: Likewise.
        * gcc.dg/vect/no-trapping-math-vect-111.c: Likewise.
        * gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c: Likewise.
        * gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c: Likewise.
        * gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c: Likewise.
        * gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c: Likewise.
        * gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c: Likewise.
        * gcc.dg/vect/no-vfa-vect-37.c: Likewise.
        * gcc.dg/vect/no-vfa-vect-depend-1.c: Likewise.
        * gcc.dg/vect/pr18400.c: Likewise.
        * gcc.dg/vect/slp-12b.c: Likewise.
        * gcc.dg/vect/slp-14.c: Likewise.
        * gcc.dg/vect/slp-7.c: Likewise.
        * gcc.dg/vect/slp-15.c: Likewise.
        * gcc.dg/vect/slp-16.c: Likewise.
        * gcc.dg/vect/slp-17.c: Likewise.
        * gcc.dg/vect/slp-24.c: Likewise.
        * gcc.dg/vect/slp-28.c: Likewise.
        * gcc.dg/vect/slp-3.c: Likewise.
        * gcc.dg/vect/slp-34.c: Likewise.
        * gcc.dg/vect/slp-6.c: Likewise.
        * gcc.dg/vect/slp-8.c: Likewise.
        * gcc.dg/vect/vect-107.c: Likewise.
        * gcc.dg/vect/vect-108.c: Likewise.
        * gcc.dg/vect/vect-11.c: Likewise.
        * gcc.dg/vect/vect-112.c: Likewise.
        * gcc.dg/vect/vect-115.c: Likewise.
        * gcc.dg/vect/vect-11a.c: Likewise.
        * gcc.dg/vect/vect-34.c: Likewise.
        * gcc.dg/vect/vect-9.c: Likewise.
        * gcc.dg/vect/vect-97.c: Likewise.
        * gcc.dg/vect/vect-align-1.c: Likewise.
        * gcc.dg/vect/vect-float-extend-1.c: Likewise.
        * gcc.dg/vect/vect-floatint-conversion-1.c: Likewise.
        * gcc.dg/vect/vect-ifcvt-16.c: Likewise.
        * gcc.dg/vect/vect-ifcvt-17.c: Likewise.
        * gcc.dg/vect/vect-ifcvt-2.c: Likewise.
        * gcc.dg/vect/vect-ifcvt-3.c: Likewise.
        * gcc.dg/vect/vect-ifcvt-4.c: Likewise.
        * gcc.dg/vect/vect-ifcvt-5.c: Likewise.
        * gcc.dg/vect/vect-ifcvt-6.c: Likewise.
        * gcc.dg/vect/vect-ifcvt-7.c: Likewise.
        * gcc.dg/vect/vect-intfloat-conversion-1.c: Likewise.
        * gcc.dg/vect/vect-intfloat-conversion-2.c: Likewise.
        * gcc.dg/vect/vect-intfloat-conversion-3.c: Likewise.
        * gcc.dg/vect/vect-intfloat-conversion-4a.c: Likewise.
        * gcc.dg/vect/vect-intfloat-conversion-4b.c: Likewise.
        * gcc.dg/vect/vect-multitypes-2.c: Likewise.
        * gcc.dg/vect/vect-multitypes-5.c: Likewise.
        * gcc.dg/vect/vect-reduc-1.c: Likewise.
        * gcc.dg/vect/vect-reduc-1char.c: Likewise.
        * gcc.dg/vect/vect-reduc-1short.c: Likewise.
        * gcc.dg/vect/vect-reduc-2.c: Likewise.
        * gcc.dg/vect/vect-reduc-3.c: Likewise.
        * gcc.dg/vect/vect-shift-1.c: Likewise.
        * gcc.dg/vect/vect-strided-float.c: Likewise.
        * gcc.dg/vect/vect-strided-store-u32-i2.c: Likewise.
        * gcc.dg/vect/wrapv-vect-reduc-2char.c: Likewise.
        * gcc.dg/vect/wrapv-vect-reduc-2short.c: Likewise.
        * gcc.dg/tree-ssa/gen-vect-11.c: Likewise.
        * gcc.dg/tree-ssa/gen-vect-11a.c: Likewise.
        * gcc.dg/tree-ssa/gen-vect-2.c: Likewise.
        * gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c: Likewise.

Added:
    trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-19.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.dg/autopar/reduc-1.c
    trunk/gcc/testsuite/gcc.dg/autopar/reduc-1char.c
    trunk/gcc/testsuite/gcc.dg/autopar/reduc-1short.c
    trunk/gcc/testsuite/gcc.dg/autopar/reduc-2.c
    trunk/gcc/testsuite/gcc.dg/autopar/reduc-2char.c
    trunk/gcc/testsuite/gcc.dg/autopar/reduc-2short.c
    trunk/gcc/testsuite/gcc.dg/autopar/reduc-3.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-11.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-11a.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-2.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/ifc-20040816-1.c
    trunk/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-reduc-1char.c
    trunk/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c
   
trunk/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-reduc-1char.c
    trunk/gcc/testsuite/gcc.dg/vect/fast-math-vect-reduc-5.c
    trunk/gcc/testsuite/gcc.dg/vect/fast-math-vect-reduc-7.c
    trunk/gcc/testsuite/gcc.dg/vect/no-trapping-math-2.c
    trunk/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-111.c
    trunk/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c
    trunk/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c
    trunk/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c
    trunk/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c
    trunk/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c
    trunk/gcc/testsuite/gcc.dg/vect/no-vfa-vect-37.c
    trunk/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-1.c
    trunk/gcc/testsuite/gcc.dg/vect/pr18400.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-12b.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-14.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-15.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-16.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-17.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-24.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-28.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-3.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-34.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-6.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-7.c
    trunk/gcc/testsuite/gcc.dg/vect/slp-8.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-107.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-108.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-11.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-112.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-115.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-11a.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-34.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-9.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-97.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-align-1.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-1.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-ifcvt-16.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-ifcvt-17.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-ifcvt-2.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-ifcvt-3.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-ifcvt-4.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-ifcvt-5.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-ifcvt-6.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-ifcvt-7.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-1.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-2.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-3.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4a.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4b.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-2.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-5.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-1.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-1char.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-1short.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-2.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-3.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-shift-1.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-strided-float.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-strided-store-u32-i2.c
    trunk/gcc/testsuite/gcc.dg/vect/wrapv-vect-reduc-2char.c
    trunk/gcc/testsuite/gcc.dg/vect/wrapv-vect-reduc-2short.c
    trunk/gcc/tree-ssa-pre.c
    trunk/gcc/tree-ssa-sccvn.c
    trunk/gcc/tree-ssa-sccvn.h


-- 


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


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

* [Bug tree-optimization/23094] store ccp, or store copy prop misses an optimization
       [not found] <bug-23094-7958@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2008-08-19  9:09 ` rguenth at gcc dot gnu dot org
@ 2008-08-19  9:12 ` rguenth at gcc dot gnu dot org
  5 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-08-19  9:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from rguenth at gcc dot gnu dot org  2008-08-19 09:10 -------
Testcase in comment #10 is fixed.  For the original testcase (and the
copyprop variant) I still have a SCCVN patch pending.


-- 


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


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

* [Bug tree-optimization/23094] store ccp, or store copy prop misses an optimization
       [not found] <bug-23094-4@http.gcc.gnu.org/bugzilla/>
  2012-07-06 10:00 ` rguenth at gcc dot gnu.org
@ 2012-07-06 10:06 ` rguenth at gcc dot gnu.org
  1 sibling, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-07-06 10:06 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #15 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-07-06 10:06:08 UTC ---
Testcase from PR53870:

int f(int *a, int *b)
{
  *a = *b;
  return *b;
}


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

* [Bug tree-optimization/23094] store ccp, or store copy prop misses an optimization
       [not found] <bug-23094-4@http.gcc.gnu.org/bugzilla/>
@ 2012-07-06 10:00 ` rguenth at gcc dot gnu.org
  2012-07-06 10:06 ` rguenth at gcc dot gnu.org
  1 sibling, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-07-06 10:00 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Guenther <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |unixoid2003 at mail dot ru

--- Comment #14 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-07-06 09:59:28 UTC ---
*** Bug 53870 has been marked as a duplicate of this bug. ***


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

end of thread, other threads:[~2012-07-06 10:06 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-23094-7958@http.gcc.gnu.org/bugzilla/>
2006-04-08  2:32 ` [Bug tree-optimization/23094] store ccp, or store copy prop misses an optimization pinskia at gcc dot gnu dot org
2008-03-14 19:35 ` rguenth at gcc dot gnu dot org
2008-03-18 15:32 ` rguenth at gcc dot gnu dot org
2008-08-17 11:27 ` rguenth at gcc dot gnu dot org
2008-08-19  9:09 ` rguenth at gcc dot gnu dot org
2008-08-19  9:12 ` rguenth at gcc dot gnu dot org
     [not found] <bug-23094-4@http.gcc.gnu.org/bugzilla/>
2012-07-06 10:00 ` rguenth at gcc dot gnu.org
2012-07-06 10:06 ` rguenth at gcc dot gnu.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).