source:
patches/gcc-4.8.3-branch_update-1.patch@
6e3b636
Last change on this file since 6e3b636 was 390c3ab, checked in by , 11 years ago | |
---|---|
|
|
File size: 3.5 KB |
-
gcc/ChangeLog
Submitted By: William Harrington (kb0iic at cross-lfs dot org) Date: 05-31-2014 Initial Package Version: 4.8.3 Origin: Upstream Upstream Status: Not applied Description: Do not depend on 2D + 1 form in parallelism check. http://gcc.gnu.org/ml/gcc-patches/2013-07/msg00524.html Includes PR tree-optimization/54094 diff -Naur gcc-4.8.3.orig/gcc/ChangeLog gcc-4.8.3/gcc/ChangeLog
old new 729 729 * config/rs6000/rs6000-protos.h (rs6000_data_alignment): Declare. 730 730 * config/rs6000/rs6000.c (rs6000_data_alignment): New function. 731 731 732 2013-07-13 Tobias Grosser <tobias@grosser.es> 733 734 PR tree-optimization/54094 735 * graphite-clast-to-gimple.c (translate_clast_for_loop): Derive the 736 scheduling dimension for the parallelism check from the polyhedral 737 information in the AST. 738 * graphite-dependences.c (carries_deps): Do not assume the schedule is 739 in 2D + 1 form. 740 732 741 2013-07-11 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> 733 742 734 743 * config/rs6000/rs6000.md (""*tls_gd_low<TLSmode:tls_abi_suffix>"): -
gcc/graphite-clast-to-gimple.c
diff -Naur gcc-4.8.3.orig/gcc/graphite-clast-to-gimple.c gcc-4.8.3/gcc/graphite-clast-to-gimple.c
old new 1170 1170 redirect_edge_succ_nodup (next_e, after); 1171 1171 set_immediate_dominator (CDI_DOMINATORS, next_e->dest, next_e->src); 1172 1172 1173 isl_set *domain = isl_set_from_cloog_domain (stmt->domain); 1174 int scheduling_dim = isl_set_n_dim (domain); 1175 1173 1176 if (flag_loop_parallelize_all 1174 && loop_is_parallel_p (loop, bb_pbb_mapping, level))1177 && loop_is_parallel_p (loop, bb_pbb_mapping, scheduling_dim)) 1175 1178 loop->can_be_parallel = true; 1176 1179 1177 1180 return last_e; -
gcc/graphite-dependences.c
diff -Naur gcc-4.8.3.orig/gcc/graphite-dependences.c gcc-4.8.3/gcc/graphite-dependences.c
old new 297 297 int depth) 298 298 { 299 299 bool res; 300 int i dx, i;300 int i; 301 301 isl_space *space; 302 302 isl_map *lex, *x; 303 303 isl_constraint *ineq; … … 312 312 space = isl_map_get_space (x); 313 313 ineq = isl_inequality_alloc (isl_local_space_from_space (space)); 314 314 315 idx = 2 * depth + 1; 316 for (i = 0; i < idx; i++) 315 for (i = 0; i < depth - 1; i++) 317 316 lex = isl_map_equate (lex, isl_dim_in, i, isl_dim_out, i); 318 317 319 318 /* in + 1 <= out */ 320 ineq = isl_constraint_set_coefficient_si (ineq, isl_dim_out, idx, 1);321 ineq = isl_constraint_set_coefficient_si (ineq, isl_dim_in, idx, -1);319 ineq = isl_constraint_set_coefficient_si (ineq, isl_dim_out, depth - 1, 1); 320 ineq = isl_constraint_set_coefficient_si (ineq, isl_dim_in, depth - 1, -1); 322 321 ineq = isl_constraint_set_constant_si (ineq, -1); 323 322 lex = isl_map_add_constraint (lex, ineq); 324 323 x = isl_map_intersect (x, lex); -
gcc/testsuite/gcc.dg/graphite/pr54094.c
diff -Naur gcc-4.8.3.orig/gcc/testsuite/gcc.dg/graphite/pr54094.c gcc-4.8.3/gcc/testsuite/gcc.dg/graphite/pr54094.c
old new 1 /* { dg-options "-O2 -floop-parallelize-all -floop-nest-optimize" } */ 2 void dwt_deinterleave_h(int *a, int *b, int dn, int sn, int cas) 3 { 4 int i; 5 for (i=0; i<sn; i++) 6 b[i]=a[2*i+cas]; 7 for (i=0; i<dn; i++) 8 b[sn+i]=a[(2*i+1-cas)]; 9 } 10
Note:
See TracBrowser
for help on using the repository browser.