This is the mail archive of the gcc-patches@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: fix rtl-opt/15289, part 4


It looks as if I don't need to worry about the routines generating
code; if it happens it'll be insertted in the correct place.

Try this.  It fixes the reported g77 regression, but I don't have
things set up to test Ada (--enable-languages=c,ada,g77 declined
to build gnat1 for some reason).



r~



Index: integrate.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/integrate.c,v
retrieving revision 1.244.2.2
diff -u -p -r1.244.2.2 integrate.c
--- integrate.c	2 Dec 2004 19:16:34 -0000	1.244.2.2
+++ integrate.c	3 Dec 2004 20:49:29 -0000
@@ -958,12 +958,12 @@ expand_inline_function (tree fndecl, tre
 	}
       else if (GET_CODE (loc) == REG)
 	process_reg_param (map, loc, copy);
-      else if (GET_CODE (loc) == CONCAT && GET_CODE (copy) == CONCAT)
+      else if (GET_CODE (loc) == CONCAT)
 	{
 	  rtx locreal = XEXP (loc, 0);
 	  rtx locimag = XEXP (loc, 1);
-	  rtx copyreal = XEXP (copy, 0);
-	  rtx copyimag = XEXP (copy, 1);
+	  rtx copyreal = read_complex_part (copy, 0);
+	  rtx copyimag = read_complex_part (copy, 1);
 
 	  process_reg_param (map, locreal, copyreal);
 	  process_reg_param (map, locimag, copyimag);


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