https://gcc.gnu.org/bugzilla/show_bug.cgi?id=46639

--- Comment #20 from ctice at gcc dot gnu.org ---
Author: ctice
Date: Wed Feb  8 19:55:28 2017
New Revision: 245284

URL: https://gcc.gnu.org/viewcvs?rev=245284&root=gcc&view=rev
Log:
2017-02-08  Caroline Tice <cmt...@google.com>

        Fix PR 46639
        in gcc:
        * passes.def: Add pass_early_vrp; move pass_profile to before new pass.
        * tree-pass.h: Add extern decl for make_pass_early_vrp.
        * tree-vrp.c: New file global variable, is_early_vrp (boolean).
        (extract_range_basic):  Add test for is_early_vrp before updating
        built-in constants -- don't update during early_vrp pass.
        (check_array_ref): Retrn immediately if is_early_vrp is true.
        (execute_vrp): Add boolean parameter to indicate early pass or not;
        set is_early_pass to value of parameter.
        (pass_data_early_vrp): New pass_data struct.
        (pass_vrp::execute): Call execute_vrp with false -- not early pass.
        (class pass_early_vrp): New gimple_opt_pass class.
        (make_pass_early_vrp): New function.

        in testsuite:

        * testsuite/gcc.dg/tree-prof/lipo/val-prof-5_0.c: xfail test.  It is
        no longer a correct test with the new pass.
        * testsuite/gcc.dg/tree-prof/val-prof-5.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/20030709-2.c: Change test to reflect new
        (correct) code due to patch changes.
        * testsuite/gcc.dg/tree-ssa/20040305-1.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr20702.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr21086.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp02.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp07.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp08.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp55.c: Ditto.
        * testsuite/gcc.dg/vect/slp-perm-7.c: Ditto.
        * testsuite/gcc.dg/fold-compare-2.c: Update to scan correct pass.
        * testsuite/gcc.dg/tree-ssa/pr20318.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr20657.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr21001.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr21090.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr21294.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr21458.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr21559.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr21563.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr22117.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr23744.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr25382.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr37508.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr49039.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr58480.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/pr59597.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/ssa-dom-thread-2.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/ssa-vrp-thread-1.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp01.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp03.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp04.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp06.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp09.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp16.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp17.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp18.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp19.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp20.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp23.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp24.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp25.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp33.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp34.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp46.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp56.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp58.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp67.c: Ditto.
        * testsuite/gcc.dg/tree-ssa/vrp87.c: Ditto.


Modified:
    branches/google/gcc-4_9-mobile/gcc/passes.def
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/fold-compare-2.c
   
branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-prof/lipo/val-prof-5_0.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-prof/val-prof-5.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/20030709-2.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/20040305-1.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr20318.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr20657.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr20702.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr21001.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr21086.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr21090.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr21294.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr21458.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr21559.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr21563.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr22117.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr23744.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr25382.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr37508.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr49039.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr58480.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/pr59597.c
   
branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-2.c
   
branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/ssa-vrp-thread-1.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp01.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp02.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp03.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp04.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp06.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp07.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp08.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp09.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp16.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp17.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp18.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp19.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp20.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp23.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp24.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp25.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp33.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp34.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp46.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp55.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp56.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp58.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp67.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/tree-ssa/vrp87.c
    branches/google/gcc-4_9-mobile/gcc/testsuite/gcc.dg/vect/slp-perm-7.c
    branches/google/gcc-4_9-mobile/gcc/tree-pass.h
    branches/google/gcc-4_9-mobile/gcc/tree-vrp.c

Reply via email to