obvious simplify_subreg fix

Jan Hubicka jh@suse.cz
Thu May 24 06:49:00 GMT 2001


Hi,
I am about to install following fix as obvious.  The operand is not subreg,
so we can't use SUBREG_BYTE.

Honza

Thu May 24 15:48:04 CEST 2001  Jan Hubicka  <jh@suse.cz>
	* simplify-rtx.c (simplify_subreg): Fix CONCAT simplification.

Index: simplify-rtx.c
===================================================================
RCS file: /cvs/gcc/egcs/gcc/simplify-rtx.c,v
retrieving revision 1.54
diff -c -3 -p -r1.54 simplify-rtx.c
*************** simplify_subreg (outermode, op, innermod
*** 2389,2395 ****
        rtx part = is_realpart ? XEXP (op, 0) : XEXP (op, 1);
        unsigned int final_offset;
  
!       final_offset = SUBREG_BYTE (op) % (GET_MODE_UNIT_SIZE (innermode) / 2);
        return simplify_subreg (outermode, part, GET_MODE (part), final_offset);
      }
  
--- 2403,2409 ----
        rtx part = is_realpart ? XEXP (op, 0) : XEXP (op, 1);
        unsigned int final_offset;
  
!       final_offset = byte % (GET_MODE_UNIT_SIZE (innermode) / 2);
        return simplify_subreg (outermode, part, GET_MODE (part), final_offset);
      }
  



More information about the Gcc-patches mailing list