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: Remove left-overs from RTX_UNCHANGING_P era


> 2014-03-20  Eric Botcazou  <ebotcazou@adacore.com>
> 
> 	* calls.c (store_one_arg): Remove incorrect const qualification on the
> 	type of the temporary.
> 	* cfgexpand.c (expand_return): Likewise.
> 	* expr.c (expand_constructor): Likewise.
> 	(expand_expr_real_1): Likewise.

There is also a related comment in the last function, removed as well.


2014-03-20  Eric Botcazou  <ebotcazou@adacore.com>

	* expr.c (expand_expr_real_1): Remove outdated comment.


-- 
Eric Botcazou
Index: expr.c
===================================================================
--- expr.c	(revision 208694)
+++ expr.c	(working copy)
@@ -1993,7 +1993,6 @@ emit_group_store (rtx orig_dst, rtx src,
       /* It is unclear if we can ever reach here, but we may as well handle
 	 it.  Allocate a temporary, and split this into a store/load to/from
 	 the temporary.  */
-
       temp = assign_stack_temp (GET_MODE (dst), ssize);
       emit_group_store (temp, src, type, ssize);
       emit_group_load (dst, temp, type, ssize);
@@ -10242,19 +10241,13 @@ expand_expr_real_1 (tree exp, rtx target
 
 	    /* If the result type is BLKmode, store the data into a temporary
 	       of the appropriate type, but with the mode corresponding to the
-	       mode for the data we have (op0's mode).  It's tempting to make
-	       this a constant type, since we know it's only being stored once,
-	       but that can cause problems if we are taking the address of this
-	       COMPONENT_REF because the MEM of any reference via that address
-	       will have flags corresponding to the type, which will not
-	       necessarily be constant.  */
+	       mode for the data we have (op0's mode).  */
 	    if (mode == BLKmode)
 	      {
-		rtx new_rtx;
-
-		new_rtx = assign_stack_temp_for_type (ext_mode,
-						   GET_MODE_BITSIZE (ext_mode),
-						   type);
+		rtx new_rtx
+		  = assign_stack_temp_for_type (ext_mode,
+						GET_MODE_BITSIZE (ext_mode),
+						type);
 		emit_move_insn (new_rtx, op0);
 		op0 = copy_rtx (new_rtx);
 		PUT_MODE (op0, BLKmode);

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