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: Committed: Fix PR target/54640


On 26/02/13 15:29, Joern Rennecke wrote:
Committed as obvious.


pr54640-fix



2013-02-26 Joern Rennecke <joern.rennecke@embecosm.com>


         PR target/54640
         * config/arm/arm.c (const_ok_for_dimode_op): Make code consistent
         for HOST_WIDE_INT of 32 bit / same size as int.
         (arm_block_move_unaligned_straight): Likewise.
         (arm_adjust_block_mem): Likewise.

Index: config/arm/arm.c
===================================================================
--- config/arm/arm.c	(revision 196254)
+++ config/arm/arm.c	(working copy)
@@ -2607,7 +2607,7 @@ const_ok_for_op (HOST_WIDE_INT i, enum r
  int
  const_ok_for_dimode_op (HOST_WIDE_INT i, enum rtx_code code)
  {
-  HOST_WIDE_INT hi_val = (i >> 32) & 0xFFFFFFFF;
+  HOST_WIDE_INT hi_val = (i >> 16 >> 16) & 0xFFFFFFFF;

I'm not convinced this is obvious. It's certainly ugly.


I think the correct thing to do is to force all ARM targets to use a 64-bit HOST_WIDE_INT.

R.



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