From c498b9b99772f4f810ff2d6cf61c6b8bf194b095 Mon Sep 17 00:00:00 2001 From: Sebastian Pop Date: Thu, 30 Sep 2010 21:20:37 +0000 Subject: [PATCH] Add cloog_checksum. 2010-09-09 Sebastian Pop * graphite-poly.c (cloog_checksum): New. * graphite-poly.h (cloog_checksum): Declared. From-SVN: r164803 --- gcc/ChangeLog | 5 +++++ gcc/ChangeLog.graphite | 5 +++++ gcc/graphite-poly.c | 18 ++++++++++++++++++ gcc/graphite-poly.h | 1 + 4 files changed, 29 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8479ecda5cc..7c23b6a4d8f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2010-09-30 Sebastian Pop + + * graphite-poly.c (cloog_checksum): New. + * graphite-poly.h (cloog_checksum): Declared. + 2010-09-30 Sebastian Pop * graphite-poly.c (pbb_number_of_iterations): Removed. diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite index 5cbf9fc20f2..368d77d883e 100644 --- a/gcc/ChangeLog.graphite +++ b/gcc/ChangeLog.graphite @@ -1,3 +1,8 @@ +2010-09-09 Sebastian Pop + + * graphite-poly.c (cloog_checksum): New. + * graphite-poly.h (cloog_checksum): Declared. + 2010-09-09 Sebastian Pop * graphite-poly.c (pbb_number_of_iterations): Removed. diff --git a/gcc/graphite-poly.c b/gcc/graphite-poly.c index 419a00b7961..4214f9e9e5f 100644 --- a/gcc/graphite-poly.c +++ b/gcc/graphite-poly.c @@ -1913,5 +1913,23 @@ dot_lst (lst_p lst) #endif } +/* Computes a checksum for the code generated by CLooG for SCOP. */ + +DEBUG_FUNCTION void +cloog_checksum (scop_p scop ATTRIBUTE_UNUSED) +{ + /* When debugging, enable the following code. This cannot be used + in production compilers because it calls "system". */ +#if 0 + FILE *stream = fopen ("/tmp/scop.cloog", "w"); + gcc_assert (stream); + print_cloog (stream, scop, 0); + fclose (stream); + + fputs ("\n", stdout); + system ("cloog -compilable 1 /tmp/scop.cloog > /tmp/scop.c ; gcc -O0 -g /tmp/scop.c -lm -o /tmp/scop; /tmp/scop | md5sum "); +#endif +} + #endif diff --git a/gcc/graphite-poly.h b/gcc/graphite-poly.h index 98ce124fa9f..b9bf1eddd80 100644 --- a/gcc/graphite-poly.h +++ b/gcc/graphite-poly.h @@ -1398,6 +1398,7 @@ extern int scop_max_loop_depth (scop_p); extern int unify_scattering_dimensions (scop_p); extern bool apply_poly_transforms (scop_p); extern bool graphite_legal_transform (scop_p); +extern void cloog_checksum (scop_p); /* Set the region of SCOP to REGION. */