This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: store_bit_field, CONCATs and subregs
On Thu, Dec 09, 2004 at 08:41:27PM +0000, Richard Sandiford wrote:
> I don't understand how emit_move_insn comes into it though.
It was one case of handling complex memories. *shrug*
> Like I say, the SImode MEM was created by the old gen_lowpart call
> in store_bit_field.
Ah.
> It sounds like you're saying that that MEM is indeed invalid, and given
> that gen_lowpart_general always returns non-NULL, I assumed that meant
> store_bit_field was wrong to ask for the lowpart in the first place.
Yes, I think that's right. We're assuming sizeof==alignof for all
types, and since size isn't changing the alignment must be ok.
If we instrumented gen_lowpart to detect this case, I wonder how
often it would trigger? There can't be *that* many places we deal
with complex types, he says with grim anticipation.
r~