summaryrefslogtreecommitdiffstats
path: root/gcc/simplify-rtx.c
diff options
context:
space:
mode:
authorrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>2004-01-12 16:01:18 +0000
committerrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>2004-01-12 16:01:18 +0000
commitf24bf5863477b6e74b9f2f6b17ab36e521eb4f1c (patch)
treed2d187c5236a718fef9ef1c9c16d56b0ca1d73a8 /gcc/simplify-rtx.c
parent65b62c6f85971e95d24d426c85c7a72146411565 (diff)
downloadppe42-gcc-f24bf5863477b6e74b9f2f6b17ab36e521eb4f1c.tar.gz
ppe42-gcc-f24bf5863477b6e74b9f2f6b17ab36e521eb4f1c.zip
* simplify-rtx.c (simplify_immed_subreg): Correctly extract the
high word of an integral CONST_DOUBLE. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@75725 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/simplify-rtx.c')
-rw-r--r--gcc/simplify-rtx.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c
index 615e09f8452..5664bca9081 100644
--- a/gcc/simplify-rtx.c
+++ b/gcc/simplify-rtx.c
@@ -3041,7 +3041,8 @@ simplify_immed_subreg (enum machine_mode outermode, rtx op,
*vp++ = CONST_DOUBLE_LOW (el) >> i;
while (i < HOST_BITS_PER_WIDE_INT * 2 && i < elem_bitsize)
{
- *vp++ = CONST_DOUBLE_HIGH (el) >> i;
+ *vp++
+ = CONST_DOUBLE_HIGH (el) >> (i - HOST_BITS_PER_WIDE_INT);
i += value_bit;
}
/* It shouldn't matter what's done here, so fill it with
OpenPOWER on IntegriCloud