summaryrefslogtreecommitdiffstats
path: root/gcc/emit-rtl.c
diff options
context:
space:
mode:
authorwilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4>1997-09-10 22:04:24 +0000
committerwilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4>1997-09-10 22:04:24 +0000
commitfe1483095fa66eaf8040217ea4751bbf16985090 (patch)
tree6955c61fc74e8780cc547a89ad8bb905af5b3360 /gcc/emit-rtl.c
parentb496f822e211eabc6504a4c2d67713ac82e847f0 (diff)
downloadppe42-gcc-fe1483095fa66eaf8040217ea4751bbf16985090.tar.gz
ppe42-gcc-fe1483095fa66eaf8040217ea4751bbf16985090.zip
Fix problem reported by chris@lslsun.epfl.ch (Christian Iseli)
* emit-rtl.c (gen_lowpart_common): For a SUBREG, add in word when create new subreg. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@15391 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r--gcc/emit-rtl.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index 86948de9905..cc2834be1be 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -664,7 +664,7 @@ gen_lowpart_common (mode, x)
|| GET_MODE_SIZE (mode) == GET_MODE_UNIT_SIZE (GET_MODE (x))))
return (GET_MODE (SUBREG_REG (x)) == mode && SUBREG_WORD (x) == 0
? SUBREG_REG (x)
- : gen_rtx (SUBREG, mode, SUBREG_REG (x), SUBREG_WORD (x)));
+ : gen_rtx (SUBREG, mode, SUBREG_REG (x), SUBREG_WORD (x) + word));
else if (GET_CODE (x) == REG)
{
/* If the register is not valid for MODE, return 0. If we don't
OpenPOWER on IntegriCloud