simplify-rtx.c (simplify_unary_operation_1 <case TRUNCATE>): Don't optimize a truncate of a mem if it is a vector mode.

2012-10-02  Andrew Pinski  <apinski@cavium.com>

	* simplify-rtx.c (simplify_unary_operation_1 <case TRUNCATE>):
	Don't optimize a truncate of a mem if it is a vector mode.

From-SVN: r192006
This commit is contained in:
Andrew Pinski 2012-10-02 21:03:37 +00:00 committed by Andrew Pinski
parent 0a59e5832e
commit fa607ddad0
2 changed files with 6 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2012-10-02 Andrew Pinski <apinski@cavium.com>
* simplify-rtx.c (simplify_unary_operation_1 <case TRUNCATE>):
Don't optimize a truncate of a mem if it is a vector mode.
2012-10-02 Alexandre Oliva <aoliva@redhat.com>
PR debug/54551

View File

@ -873,6 +873,7 @@ simplify_unary_operation_1 (enum rtx_code code, enum machine_mode mode, rtx op)
/* A truncate of a memory is just loading the low part of the memory
if we are not changing the meaning of the address. */
if (GET_CODE (op) == MEM
&& !VECTOR_MODE_P (mode)
&& !MEM_VOLATILE_P (op)
&& !mode_dependent_address_p (XEXP (op, 0), MEM_ADDR_SPACE (op)))
return rtl_hooks.gen_lowpart_no_emit (mode, op);