diff options
Diffstat (limited to 'gcc/tree-sra.c')
-rw-r--r-- | gcc/tree-sra.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c index ca3858d..fd51a3d 100644 --- a/gcc/tree-sra.c +++ b/gcc/tree-sra.c @@ -2752,8 +2752,12 @@ propagate_subaccesses_across_link (struct access *lacc, struct access *racc) rchild->grp_hint = 1; new_acc->grp_hint |= new_acc->grp_read; - if (rchild->first_child) - ret |= propagate_subaccesses_across_link (new_acc, rchild); + if (rchild->first_child + && propagate_subaccesses_across_link (new_acc, rchild)) + { + ret = 1; + add_access_to_work_queue (new_acc); + } } else { |