-2010-10-30 Uros Bizjak <ubizjak@gmail.com>
-
- PR middle-end/44569
- * lower-suberg.c (simplify_subreg_concatn): For VOIDmode elements,
- determine the mode of a subreg by GET_MODE_INNER of CONCATN RTX.
-
2010-10-22 Uros Bizjak <ubizjak@gmail.com>
PR target/45946
unsigned int byte)
{
unsigned int inner_size;
- enum machine_mode innermode, partmode;
+ enum machine_mode innermode;
rtx part;
unsigned int final_offset;
inner_size = GET_MODE_SIZE (innermode) / XVECLEN (op, 0);
part = XVECEXP (op, 0, byte / inner_size);
- partmode = GET_MODE (part);
-
- if (partmode == VOIDmode)
- {
- gcc_assert (VECTOR_MODE_P (innermode));
- partmode = GET_MODE_INNER (innermode);
- }
-
final_offset = byte % inner_size;
if (final_offset + GET_MODE_SIZE (outermode) > inner_size)
return NULL_RTX;
- return simplify_gen_subreg (outermode, part, partmode, final_offset);
+ return simplify_gen_subreg (outermode, part, GET_MODE (part), final_offset);
}
/* Wrapper around simplify_gen_subreg which handles CONCATN. */