aboutsummaryrefslogtreecommitdiff
path: root/gcc/graphite.h
diff options
context:
space:
mode:
authorAditya Kumar <aditya.k7@samsung.com>2015-12-04 21:36:55 +0000
committerSebastian Pop <spop@gcc.gnu.org>2015-12-04 21:36:55 +0000
commit15256e28a5351f788b66e574bf1ad53a23fbdda1 (patch)
treed513c64fdac4af127f0b0f73928de02267d28fe3 /gcc/graphite.h
parentbdf5848047f719389f64bcd2a6dda081adafa9aa (diff)
downloadgcc-15256e28a5351f788b66e574bf1ad53a23fbdda1.zip
gcc-15256e28a5351f788b66e574bf1ad53a23fbdda1.tar.gz
gcc-15256e28a5351f788b66e574bf1ad53a23fbdda1.tar.bz2
fix PR68693: Check for loop structure when extending the SCoP
The check for dominance while extending the scop assumed that multiple successors meant a loop which is not true in case of conditionals around the loop. Improved pretty printers for better debugging. PR tree-optimization/68693 * graphite-scop-detection.c (dot_all_sese): New (dot_all_scops_1): Renamed to dot_all_sese. (dot_all_scops): Removed. (dot_sese): New. (dot_cfg): New. (scop_detection::get_nearest_dom_with_single_entry): Check that preds are from different loop levels. (scop_detection::get_nearest_pdom_with_single_exit): Check that succs are from different loop levels. (scop_detection::print_sese): Inlined. (scop_detection::print_edge): New. (scop_detection::merge_sese): Added dumps. * graphite.h: Add declarations. gcc/testsuite/ChangeLog: * gfortran.dg/graphite/pr68693.f90: New test. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r231309
Diffstat (limited to 'gcc/graphite.h')
-rw-r--r--gcc/graphite.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/graphite.h b/gcc/graphite.h
index 30272bb..c7589ba 100644
--- a/gcc/graphite.h
+++ b/gcc/graphite.h
@@ -465,7 +465,7 @@ extern bool build_poly_scop (scop_p);
extern bool graphite_regenerate_ast_isl (scop_p);
extern void build_scops (vec<scop_p> *);
-extern void dot_all_scops (vec<scop_p>);
-extern void dot_scop (scop_p);
-
+extern void dot_all_sese (FILE *, vec<sese_l> &);
+extern void dot_sese (sese_l &);
+extern void dot_cfg ();
#endif