aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1993-02-06 01:02:25 +0000
committerRichard Stallman <rms@gnu.org>1993-02-06 01:02:25 +0000
commit6a5bbbe6b815b84e45e0a017b087c2d92516bc82 (patch)
tree3838045a2aa4d9e9dc19c65239501422522aeaee /gcc
parent266f95411b8044ac934e19580de1d25b481aa06f (diff)
downloadgcc-6a5bbbe6b815b84e45e0a017b087c2d92516bc82.zip
gcc-6a5bbbe6b815b84e45e0a017b087c2d92516bc82.tar.gz
gcc-6a5bbbe6b815b84e45e0a017b087c2d92516bc82.tar.bz2
(expand_expr_stmt): Bypass fetching a volatile value if it is VOIDmode.
From-SVN: r3432
Diffstat (limited to 'gcc')
-rw-r--r--gcc/stmt.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/stmt.c b/gcc/stmt.c
index a4f0323..a615fce 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -1326,7 +1326,9 @@ expand_expr_stmt (exp)
if (last_expr_value != 0 && GET_CODE (last_expr_value) == MEM
&& TREE_THIS_VOLATILE (exp))
{
- if (TYPE_MODE (TREE_TYPE (exp)) != BLKmode)
+ if (TYPE_MODE (TREE_TYPE (exp)) == VOIDmode)
+ ;
+ else if (TYPE_MODE (TREE_TYPE (exp)) != BLKmode)
copy_to_reg (last_expr_value);
else
{