* calls.c (expand_call): Supress sibcall if we have a
BLKmode return in registers.
From-SVN: r37076
+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
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);