aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>1999-04-06 15:49:17 +0000
committerRichard Henderson <rth@cygnus.com>1999-04-06 15:49:17 +0000
commitbd6a52ccf7d68eb5f9dd62d6807f6360b5866d34 (patch)
tree01c867d13ee6eff5feb7d5ae2835fd4a0cce4c3f
parent291d0c0210925f892b499197402f9048cc135d06 (diff)
* emit-rtl.c (gen_rtx_CONST_DOUBLE): Use XWINT not XINT.
Clear third and following slots, if they exist. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@26221 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/emit-rtl.c11
2 files changed, 14 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 831557c19bc..79d7c164ee8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Tue Apr 6 15:47:51 1999 Richard Henderson <rth@cygnus.com>
+
+ * emit-rtl.c (gen_rtx_CONST_DOUBLE): Use XWINT not XINT.
+ Clear third and following slots, if they exist.
+
Tue Apr 6 15:45:28 1999 Richard Henderson <rth@cygnus.com>
* flow.c (create_basic_block): Make sure the bb note is in the block.
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index 4df1a6a5ba9..e4142b482d7 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -273,10 +273,17 @@ gen_rtx_CONST_DOUBLE (mode, arg0, arg1, arg2)
HOST_WIDE_INT arg1, arg2;
{
rtx r = rtx_alloc (CONST_DOUBLE);
+ int i;
+
PUT_MODE (r, mode);
XEXP (r, 0) = arg0;
- XINT (r, 2) = arg1;
- XINT (r, 3) = arg2;
+ XEXP (r, 1) = NULL_RTX;
+ XWINT (r, 2) = arg1;
+ XWINT (r, 3) = arg2;
+
+ for (i = GET_RTX_LENGTH (CONST_DOUBLE) - 1; i > 3; --i)
+ XWINT (r, i) = 0;
+
return r;
}