aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1993-03-28 23:55:45 +0000
committerRichard Stallman <rms@gnu.org>1993-03-28 23:55:45 +0000
commitf2878c6b324e8c3816612d3a2b3c5422207ec855 (patch)
treeeab23112b16513702e208851f25395f0cd849d85 /gcc
parent35523fce7493b23c87d400b4942f61a9fcddf43a (diff)
downloadgcc-f2878c6b324e8c3816612d3a2b3c5422207ec855.zip
gcc-f2878c6b324e8c3816612d3a2b3c5422207ec855.tar.gz
gcc-f2878c6b324e8c3816612d3a2b3c5422207ec855.tar.bz2
(expand_expr): For COMPONENT_REF, don't force_reg op0 if it is BLKmode.
From-SVN: r3905
Diffstat (limited to 'gcc')
-rw-r--r--gcc/expr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index 40a5619..bee6e2d 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -3854,7 +3854,7 @@ expand_expr (exp, target, tmode, modifier)
if (CONSTANT_P (op0))
{
enum machine_mode mode = TYPE_MODE (TREE_TYPE (tem));
- if (LEGITIMATE_CONSTANT_P (op0))
+ if (mode != BLKmode && LEGITIMATE_CONSTANT_P (op0))
op0 = force_reg (mode, op0);
else
op0 = validize_mem (force_const_mem (mode, op0));