This is the mail archive of the gcc-prs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: optimization/7702: [PATCH] Make reload-cse honor CANNOT_CHANGE_MODE_CLASS


The following reply was made to PR optimization/7702; it has been noted by GNATS.

From: Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
To: Richard Henderson <rth@redhat.com>
Cc: gcc-patches@gcc.gnu.org,  gcc-gnats@gcc.gnu.org,  bfkelly@nsa.gov
Subject: Re: optimization/7702: [PATCH] Make reload-cse honor CANNOT_CHANGE_MODE_CLASS
Date: 14 Feb 2003 23:31:11 +0100

 --=-=-=
 
 Richard Henderson <rth@redhat.com> writes:
 
 > On Fri, Feb 14, 2003 at 10:25:54AM +0100, Falk Hueffner wrote:
 > > 	* reload1.c (reload_cse_simplify_set): Honor
 > > 	CANNOT_CHANGE_MODE_CLASS.
 > 
 > Applied to mainline.
 
 Thanks.
 
 > I'm fairly certain that the exact form of this macro was different
 > in both 3.3 and 3.2.  Would you generate and test patches for these
 > branches?
 
 I have this patch for 3.2. I'll check out 3.3.
 
 -- 
 	Falk
 
 
 --=-=-=
 Content-Type: text/x-patch
 Content-Disposition: attachment; filename=reload-cse-3.2.2.patch
 
 --- reload1.c.orig	2003-02-14 22:34:42.000000000 +0100
 +++ reload1.c	2003-02-14 22:31:14.000000000 +0100
 @@ -8277,7 +8277,14 @@
  	{
  #ifdef LOAD_EXTEND_OP
  	  if (GET_MODE_BITSIZE (GET_MODE (SET_DEST (set))) < BITS_PER_WORD
 -	      && extend_op != NIL)
 +	      && extend_op != NIL
 +#ifdef CLASS_CANNOT_CHANGE_MODE
 +	      && !(REGNO_REG_CLASS (REGNO (SET_DEST (set)))
 +		   == CLASS_CANNOT_CHANGE_MODE
 +		   && CLASS_CANNOT_CHANGE_MODE_P (GET_MODE (SET_DEST (set)),
 +						  word_mode))
 +#endif
 +	      )
  	    {
  	      rtx wide_dest = gen_rtx_REG (word_mode, REGNO (SET_DEST (set)));
  	      ORIGINAL_REGNO (wide_dest) = ORIGINAL_REGNO (SET_DEST (set));
 
 --=-=-=--


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]