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 Wed, Dec 08, 2004 at 09:52:06AM +0000, Richard Sandiford wrote:
> To repeat a comment I tend to associate with Jim Wilson,
> gen_lowpart(_general) isn't guaranteed to return an lvalue.
We've got a *lot* of code outside gen_lowpart that assumes otherwise.
> For example (perhaps the only example?), the MEM case includes:
>
> /* The following exposes the use of "x" to CSE. */
> if (GET_MODE_SIZE (GET_MODE (x)) <= UNITS_PER_WORD
> && SCALAR_INT_MODE_P (GET_MODE (x))
> && TRULY_NOOP_TRUNCATION (GET_MODE_BITSIZE (mode),
> GET_MODE_BITSIZE (GET_MODE (x)))
> && ! no_new_pseudos)
> return gen_lowpart_general (mode, force_reg (GET_MODE (x), x));
We should probably remove this case.
r~