diff options
author | Jim Wilson <wilson@gcc.gnu.org> | 1996-10-31 10:27:30 -0800 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1996-10-31 10:27:30 -0800 |
commit | 80a3ad457d2afd93efaeccedd5cfa978a94c96ed (patch) | |
tree | da61a5a09dc4d92b86488f431cfe5eaf2d9b7b91 | |
parent | c647c98577530b16007abc2006efdfda3d917fce (diff) | |
download | gcc-80a3ad457d2afd93efaeccedd5cfa978a94c96ed.zip gcc-80a3ad457d2afd93efaeccedd5cfa978a94c96ed.tar.gz gcc-80a3ad457d2afd93efaeccedd5cfa978a94c96ed.tar.bz2 |
(expand_call): Disable special handling for const calls
that return a PARALLEL rtx.
From-SVN: r13084
-rw-r--r-- | gcc/calls.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/calls.c b/gcc/calls.c index cc92f54d..f535293 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -1912,8 +1912,9 @@ expand_call (exp, target, ignore) /* If call is cse'able, make appropriate pair of reg-notes around it. Test valreg so we don't crash; may safely ignore `const' - if return type is void. */ - if (is_const && valreg != 0) + if return type is void. Disable for PARALLEL return values, because + we have no way to move such values into a pseudo register. */ + if (is_const && valreg != 0 && GET_CODE (valreg) != PARALLEL) { rtx note = 0; rtx temp = gen_reg_rtx (GET_MODE (valreg)); |