summaryrefslogtreecommitdiff
path: root/gcc/emit-rtl.c
diff options
context:
space:
mode:
authorzadeck <zadeck@138bc75d-0d04-0410-961f-82ee72b054a4>2013-09-24 17:22:03 +0000
committerzadeck <zadeck@138bc75d-0d04-0410-961f-82ee72b054a4>2013-09-24 17:22:03 +0000
commit05363b4a3846511fdb39dc9984c5b4d0978a846c (patch)
tree11719cfe1b3a540322d8325c9fa72dd69a7f6f7c /gcc/emit-rtl.c
parent087b03caccd74346e58bea10d9d8b07a4ccb3e90 (diff)
downloadgcc-05363b4a3846511fdb39dc9984c5b4d0978a846c.tar.gz
patch to canonize wide-ints smaller than one HWI
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/wide-int@202871 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r--gcc/emit-rtl.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index d72ba98b3dd..143f29882c3 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -579,8 +579,6 @@ immed_wide_int_const (const wide_int &v, enum machine_mode mode)
if (len < 2 || prec <= HOST_BITS_PER_WIDE_INT)
return gen_int_mode (v.elt (0), mode);
- wide_int copy = v;
- wi::clear_undef (copy, SIGNED);
#if TARGET_SUPPORTS_WIDE_INT
{
unsigned int i;
@@ -599,12 +597,12 @@ immed_wide_int_const (const wide_int &v, enum machine_mode mode)
CWI_PUT_NUM_ELEM (value, len);
for (i = 0; i < len; i++)
- CONST_WIDE_INT_ELT (value, i) = copy.elt (i);
+ CONST_WIDE_INT_ELT (value, i) = v.elt (i);
return lookup_const_wide_int (value);
}
#else
- return immed_double_const (copy.elt (0), copy.elt (1), mode);
+ return immed_double_const (v.elt (0), v.elt (1), mode);
#endif
}