public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/54640] New: arm_adjust_block_mem: signed/unsigned comparison
@ 2012-09-20 13:46 amylaar at gcc dot gnu.org
  2012-10-23 16:36 ` [Bug target/54640] " ramana at gcc dot gnu.org
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: amylaar at gcc dot gnu.org @ 2012-09-20 13:46 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54640

             Bug #: 54640
           Summary: arm_adjust_block_mem: signed/unsigned comparison
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: amylaar@gcc.gnu.org
            Blocks: 44756
            Target: arm-wrs-vxworks, arm-netbsdelf


g++ -c   -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE  -fno-exceptions -fno-rtti
-W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute
-pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror
-fno-common  -DHAVE_CONFIG_H -I. -I. -I
../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include
-I../../../gcc/gcc/../libcpp/include  -I../../../gcc/gcc/../libdecnumber
-I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber    \
        ../../../gcc/gcc/config/arm/arm.c -o arm.o
../../../gcc/gcc/config/arm/arm.c: In function ‘int const_ok_for_dimode_op(long
int, rtx_code)’:
../../../gcc/gcc/config/arm/arm.c:2520:32: error: right shift count >= width of
type [-Werror]
   HOST_WIDE_INT hi_val = (i >> 32) & 0xFFFFFFFF;
                                ^
../../../gcc/gcc/config/arm/arm.c: In function ‘void
arm_block_move_unaligned_straight(rtx, rtx, long int, unsigned int)’:
../../../gcc/gcc/config/arm/arm.c:11004:21: error: comparison between signed
and unsigned integer expressions [-Werror=sign-compare]
     for (i = 0; i < interleave_factor; i++)
                     ^
../../../gcc/gcc/config/arm/arm.c:11007:21: error: comparison between signed
and unsigned integer expressions [-Werror=sign-compare]
     for (i = 0; i < interleave_factor; i++)
                     ^
../../../gcc/gcc/config/arm/arm.c:11019:19: error: comparison between signed
and unsigned integer expressions [-Werror=sign-compare]
   for (i = 0; i < interleave_factor; i++)
                   ^
../../../gcc/gcc/config/arm/arm.c:11035:20: error: comparison between signed
and
 unsigned integer expressions [-Werror=sign-compare]
    for (j = 0; j < interleave_factor; j++)
                    ^
../../../gcc/gcc/config/arm/arm.c:11055:20: error: comparison between signed
and unsigned integer expressions [-Werror=sign-compare]
    for (j = 0; j < interleave_factor; j++)
                    ^
In file included from ../../../gcc/gcc/config/arm/arm.c:26:0:
../../../gcc/gcc/config/arm/arm.c:11074:23: error: comparison between signed
and unsigned integer expressions [-Werror=sign-compare]
   gcc_assert (words < interleave_factor);
                       ^
../../../gcc/gcc/system.h:679:14: note: in definition of macro 'gcc_assert'
    ((void)(!(EXPR) ? fancy_abort (__FILE__, __LINE__, __FUNCTION__), 0 : 0))
              ^
In file included from ../../../gcc/gcc/config/arm/arm.c:26:0:
../../../gcc/gcc/config/arm/arm.c: In function ‘void arm_adjust_block_mem(rtx,
long int, rtx_def**, rtx_def**)’:
../../../gcc/gcc/system.h:344:27: error: comparison between signed and unsigned
integer expressions [-Werror=sign-compare]
 #define MIN(X,Y) ((X) < (Y) ? (X) : (Y))
                           ^
../../../gcc/gcc/config/arm/arm.c:11212:29: note: in expansion of macro 'MIN'
   set_mem_align (*loop_mem, MIN (MEM_ALIGN (mem), length * BITS_PER_UNIT));
                             ^
cc1plus: all warnings being treated as errors
make[2]: *** [arm.o] Error 1
rm gcj-dbtool.pod gccgo.pod jcf-dump.pod gcj.pod gcov.pod cpp.pod
fsf-funding.pod gij.pod gc-analyze.pod grmic.pod gcc.pod gfortran.pod
jv-convert.pod gfdl.pod
make[2]: Leaving directory `/home/amylaar/fsf/multi/arm-wrs-vxworks/gcc'


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug target/54640] arm_adjust_block_mem: signed/unsigned comparison
  2012-09-20 13:46 [Bug target/54640] New: arm_adjust_block_mem: signed/unsigned comparison amylaar at gcc dot gnu.org
@ 2012-10-23 16:36 ` ramana at gcc dot gnu.org
  2013-02-26 14:52 ` amylaar at gcc dot gnu.org
  2013-02-28  9:34 ` amylaar at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: ramana at gcc dot gnu.org @ 2012-10-23 16:36 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54640

Ramana Radhakrishnan <ramana at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
                 CC|                            |ramana at gcc dot gnu.org
     Ever Confirmed|0                           |1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug target/54640] arm_adjust_block_mem: signed/unsigned comparison
  2012-09-20 13:46 [Bug target/54640] New: arm_adjust_block_mem: signed/unsigned comparison amylaar at gcc dot gnu.org
  2012-10-23 16:36 ` [Bug target/54640] " ramana at gcc dot gnu.org
@ 2013-02-26 14:52 ` amylaar at gcc dot gnu.org
  2013-02-28  9:34 ` amylaar at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: amylaar at gcc dot gnu.org @ 2013-02-26 14:52 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54640

--- Comment #1 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> 2013-02-26 14:51:46 UTC ---
Author: amylaar
Date: Tue Feb 26 14:51:36 2013
New Revision: 196290

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=196290
Log:
        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.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/arm/arm.c


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug target/54640] arm_adjust_block_mem: signed/unsigned comparison
  2012-09-20 13:46 [Bug target/54640] New: arm_adjust_block_mem: signed/unsigned comparison amylaar at gcc dot gnu.org
  2012-10-23 16:36 ` [Bug target/54640] " ramana at gcc dot gnu.org
  2013-02-26 14:52 ` amylaar at gcc dot gnu.org
@ 2013-02-28  9:34 ` amylaar at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: amylaar at gcc dot gnu.org @ 2013-02-28  9:34 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54640

Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|2013-02-25 00:00:00         |2013-02-27 0:00

--- Comment #2 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> 2013-02-28 09:33:49 UTC ---
I have reverted my patch because of an objection by Richard Earnshaw on the
gcc-patches mailing list:
>> -  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.


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-02-28  9:34 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-09-20 13:46 [Bug target/54640] New: arm_adjust_block_mem: signed/unsigned comparison amylaar at gcc dot gnu.org
2012-10-23 16:36 ` [Bug target/54640] " ramana at gcc dot gnu.org
2013-02-26 14:52 ` amylaar at gcc dot gnu.org
2013-02-28  9:34 ` amylaar at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).