aboutsummaryrefslogtreecommitdiff
path: root/gcc/emit-rtl.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>1999-04-06 08:49:17 -0700
committerRichard Henderson <rth@gcc.gnu.org>1999-04-06 08:49:17 -0700
commit2454beafbaa21ee0ede1adb06625760ff41d1448 (patch)
tree01c867d13ee6eff5feb7d5ae2835fd4a0cce4c3f /gcc/emit-rtl.c
parenteeea333e3b37c1e1d9fd13dcb2d60d626aff5bd4 (diff)
downloadgcc-2454beafbaa21ee0ede1adb06625760ff41d1448.zip
gcc-2454beafbaa21ee0ede1adb06625760ff41d1448.tar.gz
gcc-2454beafbaa21ee0ede1adb06625760ff41d1448.tar.bz2
emit-rtl.c (gen_rtx_CONST_DOUBLE): Use XWINT not XINT.
* emit-rtl.c (gen_rtx_CONST_DOUBLE): Use XWINT not XINT. Clear third and following slots, if they exist. From-SVN: r26221
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r--gcc/emit-rtl.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index 4df1a6a..e4142b4 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;
}