summaryrefslogtreecommitdiff
path: root/gcc/ggc-simple.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ggc-simple.c')
-rw-r--r--gcc/ggc-simple.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/ggc-simple.c b/gcc/ggc-simple.c
index 5e695ad1b54..f5e5a9740f3 100644
--- a/gcc/ggc-simple.c
+++ b/gcc/ggc-simple.c
@@ -300,7 +300,8 @@ ggc_free_rtx (r)
fprintf (dump, "collect rtx %p\n", &r->rtx);
#endif
#ifdef GGC_POISON
- memset (r, 0xAA, sizeof(*r));
+ memset (r, 0xAA, sizeof(*r) + ((GET_RTX_LENGTH (r->rtx.code) -1)
+ * sizeof(rtunion)));
#endif
free (r);