arm.c (neon_dereference_pointer): Do not call covert during RTL expansion.
authorRichard Guenther <rguenther@suse.de>
Mon, 12 Mar 2012 14:52:56 +0000 (14:52 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Mon, 12 Mar 2012 14:52:56 +0000 (14:52 +0000)
2012-03-12  Richard Guenther  <rguenther@suse.de>

* config/arm/arm.c (neon_dereference_pointer): Do not call
covert during RTL expansion.

From-SVN: r185233

gcc/ChangeLog
gcc/config/arm/arm.c

index b8f8daca41d5f2b1389f97913e2100e543c2d0db..c2ccdbf1bc91102167ff9c6f7cbce6ab78d4657e 100644 (file)
@@ -1,3 +1,8 @@
+2012-03-12  Richard Guenther  <rguenther@suse.de>
+
+       * config/arm/arm.c (neon_dereference_pointer): Do not call
+       covert during RTL expansion.
+
 2012-03-12  Tristan Gingold  <gingold@adacore.com>
 
        * doc/invoke.texi (VMS Options): Merge Alpha/VMS and IA-64/VMS
index dfba8e15fc19fe921ea44fe002f7592e40d10073..e5779ce9f3e4078e4d199240debb157767295037 100644 (file)
@@ -20637,9 +20637,8 @@ neon_dereference_pointer (tree exp, enum machine_mode mem_mode,
   array_type = build_array_type (elem_type, build_index_type (upper_bound));
 
   /* Dereference EXP using that type.  */
-  exp = convert (build_pointer_type (array_type), exp);
   return fold_build2 (MEM_REF, array_type, exp,
-                     build_int_cst (TREE_TYPE (exp), 0));
+                     build_int_cst (build_pointer_type (array_type), 0));
 }
 
 /* Expand a Neon builtin.  */