aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1998-09-30 08:59:18 +0000
committerJeff Law <law@gcc.gnu.org>1998-09-30 02:59:18 -0600
commitee06cc21bf611f5e1fa1bc72ec901ac1d75ed62d (patch)
tree369a2b9a95a3ebf24905c8a152eac44b65f95e9c /gcc/expr.c
parent257441dbb0914814e94974604bfdef4faf795184 (diff)
downloadgcc-ee06cc21bf611f5e1fa1bc72ec901ac1d75ed62d.zip
gcc-ee06cc21bf611f5e1fa1bc72ec901ac1d75ed62d.tar.gz
gcc-ee06cc21bf611f5e1fa1bc72ec901ac1d75ed62d.tar.bz2
expr.c (expand_expr): Handle COMPONENT_REF...
* expr.c (expand_expr): Handle COMPONENT_REF, BIT_FIELD_REF ARRAY_REF and INDIRECT_REF in code to check MAX_INTEGER_COMPUTATION_MODE. From-SVN: r22666
Diffstat (limited to 'gcc/expr.c')
-rw-r--r--gcc/expr.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index 1988588..3582f5b 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -5394,6 +5394,10 @@ expand_expr (exp, target, tmode, modifier)
if (target
&& TREE_CODE (exp) != INTEGER_CST
&& TREE_CODE (exp) != PARM_DECL
+ && TREE_CODE (exp) != ARRAY_REF
+ && TREE_CODE (exp) != COMPONENT_REF
+ && TREE_CODE (exp) != BIT_FIELD_REF
+ && TREE_CODE (exp) != INDIRECT_REF
&& TREE_CODE (exp) != VAR_DECL)
{
enum machine_mode mode = GET_MODE (target);
@@ -5405,6 +5409,10 @@ expand_expr (exp, target, tmode, modifier)
if (TREE_CODE (exp) != INTEGER_CST
&& TREE_CODE (exp) != PARM_DECL
+ && TREE_CODE (exp) != ARRAY_REF
+ && TREE_CODE (exp) != COMPONENT_REF
+ && TREE_CODE (exp) != BIT_FIELD_REF
+ && TREE_CODE (exp) != INDIRECT_REF
&& TREE_CODE (exp) != VAR_DECL
&& GET_MODE_CLASS (tmode) == MODE_INT
&& tmode > MAX_INTEGER_COMPUTATION_MODE)