mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-20 13:59:47 +08:00
calls.c (expand_call): Supress sibcall if we have a BLKmode return in registers.
* calls.c (expand_call): Supress sibcall if we have a BLKmode return in registers. From-SVN: r37076
This commit is contained in:
parent
036099eb8f
commit
8eb99146fb
@ -1,3 +1,8 @@
|
||||
2000-10-26 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* calls.c (expand_call): Supress sibcall if we have a
|
||||
BLKmode return in registers.
|
||||
|
||||
2000-10-26 Bernd Schmidt <bernds@redhat.co.uk>
|
||||
|
||||
* ia64.h (PREFERRED_RELOAD_CLASS): Force floating point constants
|
||||
|
@ -3259,7 +3259,12 @@ expand_call (exp, target, ignore)
|
||||
emit_move_insn (target, valreg);
|
||||
}
|
||||
else if (TYPE_MODE (TREE_TYPE (exp)) == BLKmode)
|
||||
target = copy_blkmode_from_reg (target, valreg, TREE_TYPE (exp));
|
||||
{
|
||||
target = copy_blkmode_from_reg (target, valreg, TREE_TYPE (exp));
|
||||
|
||||
/* We can not support sibling calls for this case. */
|
||||
sibcall_failure = 1;
|
||||
}
|
||||
else
|
||||
target = copy_to_reg (valreg);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user