[Bug tree-optimization/78687] inefficient code generated for eggs.variant

jamborm at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue May 2 12:50:00 GMT 2017


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

--- Comment #7 from Martin Jambor <jamborm at gcc dot gnu.org> ---
Author: jamborm
Date: Tue May  2 12:49:55 2017
New Revision: 247497

URL: https://gcc.gnu.org/viewcvs?rev=247497&root=gcc&view=rev
Log:
[PR 78687] Set SRA grp_write lazily 

2017-05-02  Martin Jambor  <mjambor@suse.cz>

        PR tree-optimization/78687
        * tree-sra.c (access): New field parent.
        (process_subtree_disqualification): New function.
        (disqualify_candidate): Call it.
        (build_accesses_from_assign): Reset write flag if creating an
        assighnment link.
        (build_access_subtree): Fill in parent field and also prpagate
        down grp_write flag.
        (create_artificial_child_access): New parameter set_grp_write, set
        grp_write to its value.
        (propagate_subaccesses_across_link): Also propagate grp_write flag
        values.
        (propagate_all_subaccesses): Push the closest parent back to work
        queue if add_access_to_work_queue returned true.

testsuite/
        * g++.dg/tree-ssa/pr78687.C: New test.


Added:
    trunk/gcc/testsuite/g++.dg/tree-ssa/pr78687.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-sra.c


More information about the Gcc-bugs mailing list