This is the mail archive of the gcc-bugs@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]

optimization/5793: optimisation causes an integer comparison to fail when it shouldn't



>Number:         5793
>Category:       optimization
>Synopsis:       optimisation causes an integer comparison to fail when it shouldn't
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          wrong-code
>Submitter-Id:   net
>Arrival-Date:   Thu Feb 28 12:06:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Adam Morris
>Release:        gcc version 3.0.2
>Organization:
>Environment:
HP-UX11i 64 bit mode on an HP-PA machine.  No environment variables set to modify gcc
>Description:
When compiled with optimisation an if statement fails when it should succeed.  

The if statement looks like...
if (-1 == (pPort->sin_addr.s_addr = inet_addr(pcToHost)))

After the assignment, pPort->sin_addr.s_addr is -1.  If a cast to int is placed in front of the assignment then this works with and without optimisation.  

output from gcc -v -save-temps -O -o bugtest bugtest.c
Reading specs from /usr/local/pa20_64/lib/gcc-lib/hppa64-hp-hpux11.00/3.0.2/specs
Configured with: ../gcc/configure --prefix=/usr/local/pa20_64 --enable-languages=c,c++ --host=hppa64-hp-hpux11.00 --target=hppa64-hp-hpux11.00 --with-ld=/usr/ccs/bin/ld --with-gnu-as --enable-libstdcxx-v3
Thread model: single
gcc version 3.0.2
 /usr/local/pa20_64/lib/gcc-lib/hppa64-hp-hpux11.00/3.0.2/cpp0 -lang-c -v -iprefix /usr/local/bin/../lib/gcc-lib/hppa64-hp-hpux11.00/3.0.2/ -D__GNUC__=3 -D__GNUC_MINOR__=0 -D__GNUC_PATCHLEVEL__=2 -Dhppa -Dhp9000s800 -D__hp9000s800 -Dhp9k8 -DPWB -Dhpux -Dunix -D__hppa__ -D__hp9000s800__ -D__hp9000s800 -D__hp9k8__ -D__PWB__ -D__hpux__ -D__unix__ -D__hppa -D__hp9000s800 -D__hp9k8 -D__PWB -D__hpux -D__unix -Asystem=unix -Asystem=hpux -Acpu=hppa -Amachine=hppa -D__OPTIMIZE__ -D__STDC_HOSTED__=1 -D_PA_RISC1_1 -D__hp9000s700 -D_PA_RISC2_0 -D__hp9000s800 -D__LP64__ -D__LONG_MAX__=9223372036854775807L -D_HPUX_SOURCE -D_HIUX_SOURCE -D__STDC_EXT__ bugtest.c bugtest.i
GNU CPP version 3.0.2 (cpplib) (hppa)
ignoring nonexistent directory "/usr/local/lib/gcc-lib/hppa64-hp-hpux11.00/3.0.2/include"
ignoring nonexistent directory "/usr/local/lib/gcc-lib/hppa64-hp-hpux11.00/3.0.2/../../../../hppa64-hp-hpux11.00/include"
ignoring nonexistent directory "/usr/local/include"
ignoring nonexistent directory "/usr/local/pa20_64/hppa64-hp-hpux11.00/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/pa20_64/lib/gcc-lib/hppa64-hp-hpux11.00/3.0.2/include
 /usr/include
End of search list.
 /usr/local/pa20_64/lib/gcc-lib/hppa64-hp-hpux11.00/3.0.2/cc1 -fpreprocessed bugtest.i -quiet -dumpbase bugtest.c -O -version -o bugtest.s
GNU CPP version 3.0.2 (cpplib) (hppa)
GNU C version 3.0.2 (hppa64-hp-hpux11.00)
	compiled by GNU C version 3.0.2.
 /usr/local/pa20_64/lib/gcc-lib/hppa64-hp-hpux11.00/3.0.2/../../../../hppa64-hp-hpux11.00/bin/as --traditional-format -o bugtest.o bugtest.s
 /usr/local/pa20_64/lib/gcc-lib/hppa64-hp-hpux11.00/3.0.2/collect2 +Accept TypeMismatch -E -u main -o bugtest /usr/ccs/lib/pa20_64/crt0.o -L/usr/local/pa20_64/lib/gcc-lib/hppa64-hp-hpux11.00/3.0.2 -L/usr/ccs/bin -L/usr/ccs/lib/pa20_64 -L/opt/langtools/lib -L/usr/local/pa20_64/lib/gcc-lib/hppa64-hp-hpux11.00/3.0.2/../../.. bugtest.o -lgcc -lc /usr/lib/pa20_64/milli.a -lgcc
>How-To-Repeat:
Compile bugtest.c with -O and it fails.  Without it and it succeeds.  My command line was
gcc [Optional -O in here] -o bugtest bugtest.c
>Fix:
I don't know.  
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/x-gzip-compressed; name="bugtest.i.gz"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="bugtest.i.gz"

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


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