diff options
-rw-r--r-- | gcc/ChangeLog | 2 | ||||
-rw-r--r-- | gcc/tree.c | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2f2de25..1c25e77 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,7 @@ Mon Dec 20 15:00:04 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> + * tree.c (real_value_from_int_cst): Clear REAL_VALUE_TYPE object first. + * expr.c (store_constructor): New argument SIZE; pass to clear_storage. (store_constructor_field, expand_expr): Pass new arg. @@ -1425,6 +1425,10 @@ real_value_from_int_cst (type, i) REAL_VALUE_TYPE d; #ifdef REAL_ARITHMETIC + /* Clear all bits of the real value type so that we can later do + bitwise comparisons to see if two values are the same. */ + bzero ((char *) &d, sizeof d); + if (! TREE_UNSIGNED (TREE_TYPE (i))) REAL_VALUE_FROM_INT (d, TREE_INT_CST_LOW (i), TREE_INT_CST_HIGH (i), TYPE_MODE (type)); |