aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Pop <sebastian.pop@amd.com>2008-09-12 23:03:54 +0000
committerSebastian Pop <spop@gcc.gnu.org>2008-09-12 23:03:54 +0000
commit02ae05bdf5c0b8ebfcc245246ea2cfd0f95ff5f3 (patch)
tree28b06f7929ad79360d25a04b941653cec174b5bb
parent0bfdfbf659cf83af2c3d04d36b2a4a41b9a03738 (diff)
downloadgcc-02ae05bdf5c0b8ebfcc245246ea2cfd0f95ff5f3.zip
gcc-02ae05bdf5c0b8ebfcc245246ea2cfd0f95ff5f3.tar.gz
gcc-02ae05bdf5c0b8ebfcc245246ea2cfd0f95ff5f3.tar.bz2
re PR middle-end/37484 ([graphite] Valgrind gives invalid reads/writes on CPU2006 403.gcc benchmark)
2008-09-12 Sebastian Pop <sebastian.pop@amd.com> PR tree-optimization/37484 * graphite.c (scop_record_loop): Use snprintf instead of sprintf. (save_var_name): Same. (initialize_cloog_names): Same. (initialize_cloog_names): Same. From-SVN: r140327
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/graphite.c24
2 files changed, 22 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3ad7938..ef7c156 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,13 @@
2008-09-12 Sebastian Pop <sebastian.pop@amd.com>
+ PR tree-optimization/37484
+ * graphite.c (scop_record_loop): Use snprintf instead of sprintf.
+ (save_var_name): Same.
+ (initialize_cloog_names): Same.
+ (initialize_cloog_names): Same.
+
+2008-09-12 Sebastian Pop <sebastian.pop@amd.com>
+
* tree-scalar-evolution.c (set_instantiated_value): Set instantiated_below.
2008-09-12 Vladimir Makarov <vmakarov@redhat.com>
diff --git a/gcc/graphite.c b/gcc/graphite.c
index c173cca..4e1a969 100644
--- a/gcc/graphite.c
+++ b/gcc/graphite.c
@@ -1542,8 +1542,9 @@ scop_record_loop (scop_p scop, struct loop *loop)
oldiv->name = IDENTIFIER_POINTER (DECL_NAME (oldiv->t));
else
{
- char *n = XNEWVEC (char, 16);
- sprintf (n, "D.%u", DECL_UID (oldiv->t));
+ int len = 2 + 16;
+ char *n = XNEWVEC (char, len);
+ snprintf (n, len, "D.%u", DECL_UID (oldiv->t));
oldiv->name = n;
}
oldiv->loop = loop;
@@ -1988,13 +1989,14 @@ save_var_name (char **nv, int i, name_tree p)
if (name)
{
- nv[i] = XNEWVEC (char, strlen (name) + 12);
- sprintf (nv[i], "%s_%12d", name, SSA_NAME_VERSION (p->t));
+ int len = strlen (name) + 16;
+ nv[i] = XNEWVEC (char, len);
+ snprintf (nv[i], len, "%s_%d", name, SSA_NAME_VERSION (p->t));
}
else
{
- nv[i] = XNEWVEC (char, 12);
- sprintf (nv[i], "T_%12d", SSA_NAME_VERSION (p->t));
+ nv[i] = XNEWVEC (char, 16);
+ snprintf (nv[i], 2 + 16, "T_%d", SSA_NAME_VERSION (p->t));
}
p->name = nv[i];
@@ -2044,8 +2046,9 @@ initialize_cloog_names (scop_p scop)
for (i = 0; i < nb_iterators; i++)
{
- iterators[i] = XNEWVEC (char, 18 + 12);
- sprintf (iterators[i], "graphite_iterator_%d", i);
+ int len = 18 + 16;
+ iterators[i] = XNEWVEC (char, len);
+ snprintf (iterators[i], len, "graphite_iterator_%d", i);
}
cloog_names_set_nb_iterators (cloog_program_names (SCOP_PROG (scop)),
@@ -2055,8 +2058,9 @@ initialize_cloog_names (scop_p scop)
for (i = 0; i < nb_scattering; i++)
{
- scattering[i] = XNEWVEC (char, 2 + 12);
- sprintf (scattering[i], "s_%d", i);
+ int len = 2 + 16;
+ scattering[i] = XNEWVEC (char, len);
+ snprintf (scattering[i], len, "s_%d", i);
}
cloog_names_set_nb_scattering (cloog_program_names (SCOP_PROG (scop)),