diff options
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/tree-parloops.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1d5434c..cfdf5e7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2015-07-16 Tom de Vries <tom@codesourcery.com> + + * tree-parloops.c (create_loads_for_reductions): Handle case that + reduction is unused. + 2015-07-16 Richard Biener <rguenther@suse.de> PR tree-optimization/66894 diff --git a/gcc/tree-parloops.c b/gcc/tree-parloops.c index 036677b..2390d9e 100644 --- a/gcc/tree-parloops.c +++ b/gcc/tree-parloops.c @@ -1145,6 +1145,10 @@ create_loads_for_reductions (reduction_info **slot, struct clsn_data *clsn_data) tree name; tree x; + /* If there's no exit phi, the result of the reduction is unused. */ + if (red->keep_res == NULL) + return 1; + gsi = gsi_after_labels (clsn_data->load_bb); load_struct = build_simple_mem_ref (clsn_data->load); load_struct = build3 (COMPONENT_REF, type, load_struct, red->field, |
