From e9ac02a6f163690948ef8d3a3ad73b75171079c4 Mon Sep 17 00:00:00 2001 From: Jim Wilson Date: Thu, 31 Oct 1996 10:30:25 -0800 Subject: [PATCH] (expand_expr, case CONSTRUCTOR): Don't use a PARALLEL target. From-SVN: r13085 --- gcc/expr.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gcc/expr.c b/gcc/expr.c index abdfba72305..09aeeeb2d5f 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -5229,7 +5229,10 @@ expand_expr (exp, target, tmode, modifier) else { - if (target == 0 || ! safe_from_p (target, exp)) + /* Handle calls that pass values in multiple non-contiguous + locations. The Irix 6 ABI has examples of this. */ + if (target == 0 || ! safe_from_p (target, exp) + || GET_CODE (target) == PARALLEL) { if (mode != BLKmode && ! TREE_ADDRESSABLE (exp)) target = gen_reg_rtx (tmode != VOIDmode ? tmode : mode); -- 2.30.2