From 2151a093e30b2d7b1122924810d0427b8a438ca9 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Sun, 3 Jan 1993 18:59:45 -0500 Subject: [PATCH] (rtx_alloc): Clear common area of rtx in a portable manner. From-SVN: r3074 --- gcc/rtl.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/rtl.c b/gcc/rtl.c index 8017df1b2c8..a47ebd53631 100644 --- a/gcc/rtl.c +++ b/gcc/rtl.c @@ -233,7 +233,14 @@ rtx_alloc (code) ob->next_free += length; ob->object_base = ob->next_free; - * (int *) rt = 0; + /* We want to clear everything up to the FLD array. Normally, this is + one int, but we don't want to assume that and it isn't very portable + anyway; this is. */ + + length = (sizeof (struct rtx_def) - sizeof (rtunion) - 1) / sizeof (int); + for (; length >= 0; length--) + ((int *) rt)[length] = 0; + PUT_CODE (rt, code); return rt; -- 2.30.2