aboutsummaryrefslogtreecommitdiff
path: root/gcc/emit-rtl.c
diff options
context:
space:
mode:
authorJoern Rennecke <amylaar@gcc.gnu.org>2002-10-11 10:59:06 +0100
committerJoern Rennecke <amylaar@gcc.gnu.org>2002-10-11 10:59:06 +0100
commit0488fa7c8f0e7d014cdfdeb0ddac6f9ffc235db6 (patch)
treef1b7dd6ee730b907128000deff13e31ed77a885a /gcc/emit-rtl.c
parentd92b6b949d1e674672f93bb618efb8da3cb14bf1 (diff)
downloadgcc-0488fa7c8f0e7d014cdfdeb0ddac6f9ffc235db6.zip
gcc-0488fa7c8f0e7d014cdfdeb0ddac6f9ffc235db6.tar.gz
gcc-0488fa7c8f0e7d014cdfdeb0ddac6f9ffc235db6.tar.bz2
*** empty log message ***
From-SVN: r58050
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r--gcc/emit-rtl.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index 889064f..2cf4107 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -999,6 +999,10 @@ gen_lowpart_common (mode, x)
else if (GET_CODE (x) == SUBREG || GET_CODE (x) == REG
|| GET_CODE (x) == CONCAT || GET_CODE (x) == CONST_VECTOR)
return simplify_gen_subreg (mode, x, GET_MODE (x), offset);
+ else if ((GET_MODE_CLASS (mode) == MODE_VECTOR_INT
+ || GET_MODE_CLASS (mode) == MODE_VECTOR_FLOAT)
+ && GET_MODE (x) == VOIDmode)
+ return simplify_gen_subreg (mode, x, int_mode_for_mode (mode), offset);
/* If X is a CONST_INT or a CONST_DOUBLE, extract the appropriate bits
from the low-order part of the constant. */
else if ((GET_MODE_CLASS (mode) == MODE_INT