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: [patch] add asserts to convert_move, allow store_expr to handle BLKmode


Eric Christopher <echristo@apple.com> writes:

> 2007-05-08  Eric Christopher  <echristo@apple.com>
> 
> 	* expr.c (convert_move): Assert that we don't have a BLKmode operand.
> 	(store_expr): Handle BLKmode moves by calling emit_block_move.

> @@ -4500,8 +4502,16 @@ store_expr (tree exp, rtx target, int ca
>  	      emit_move_insn (target, temp);
>  	    }
>  	  else
> +	    {
> +	      if (GET_MODE (target) == BLKmode)
> +		emit_block_move (target, temp, expr_size (exp),
> +				 (call_param_p
> +				  ? BLOCK_OP_CALL_PARM
> +				  : BLOCK_OP_NORMAL));
> +	      else
>  	    convert_move (target, temp, unsignedp);
>  	}
> +	}

Write this as
    else if (GET_MODE (target) == BLKmode)
rather than introducing a new level of nesting.

OK with that change.

Thanks.

Ian


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