* expr.c (emit_group_load): Support CONCATs by storing them to memory
and reloading.
From-SVN: r46586
+Sun Oct 28 17:05:36 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * expr.c (emit_group_load): Support CONCATs by storing them to memory
+ and reloading.
+
Sun Oct 28 09:59:54 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* expr.c (store_constructor_field): Only call adjust_address on MEM.
else if (bytepos == (HOST_WIDE_INT) GET_MODE_SIZE (GET_MODE (XEXP (src, 0)))
&& bytelen == GET_MODE_SIZE (GET_MODE (XEXP (src, 1))))
tmps[i] = XEXP (src, 1);
+ else if (bytepos == 0)
+ {
+ rtx mem;
+ mem = assign_stack_temp (GET_MODE (src),
+ GET_MODE_SIZE (GET_MODE (src)), 0);
+ emit_move_insn (mem, src);
+ tmps[i] = change_address (mem, mode, XEXP (mem, 0));
+ }
else
abort ();
}