simplify-rtx.c (simplify_subreg): Fix offset calculation for complex values within a CONCAT.

* simplify-rtx.c (simplify_subreg): Fix offset calculation
	for complex values within a CONCAT.

From-SVN: r43177
This commit is contained in:
Michael Hayes 2001-06-11 09:30:50 +00:00 committed by Michael Hayes
parent ecb7d6b3f4
commit 5fd83d4e51
2 changed files with 7 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2001-06-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
* simplify-rtx.c (simplify_subreg): Fix offset calculation
for complex values within a CONCAT.
2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
* doc/install.texi: Update details of what components are included

View File

@ -2423,11 +2423,11 @@ simplify_subreg (outermode, op, innermode, byte)
of real and imaginary part. */
if (GET_CODE (op) == CONCAT)
{
int is_realpart = byte < GET_MODE_UNIT_SIZE (innermode) / 2;
int is_realpart = byte < GET_MODE_UNIT_SIZE (innermode);
rtx part = is_realpart ? XEXP (op, 0) : XEXP (op, 1);
unsigned int final_offset;
final_offset = byte % (GET_MODE_UNIT_SIZE (innermode) / 2);
final_offset = byte % (GET_MODE_UNIT_SIZE (innermode));
return simplify_subreg (outermode, part, GET_MODE (part), final_offset);
}