From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.2) Gecko/20010628 Description of problem: When compiling one of my files, I get the following warning: yoda> g++ -save-temps -v -W -Wall -Wpointer-arith -O3 -Wno-uninitialized -fno-implicit-templates -D_POSIX_THREADS -D_POSIX_THREAD_SAFE_FUNCTIONS -D_REENTRANT -DACE_HAS_AIO_CALLS -I/u/kitty/ACE_wrappers -DACE_HAS_EXCEPTIONS -I/u/kitty/ACE_wrappers/TAO -I/u/kitty/ACE_wrappers/TAO/orbsvcs -I/u/kitty/ACE_wrappers/TAO/tao -c -o .obj/Container_i.o Container_i.cpp Reading specs from /usr/lib/gcc-lib/ia64-redhat-linux/2.96/specs gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-93) /usr/lib/gcc-lib/ia64-redhat-linux/2.96/cpp0 -lang-c++ -D__GNUG__=2 -D__EXCEPTIONS -v -I/u/kitty/ACE_wrappers -I/u/kitty/ACE_wrappers/TAO -I/u/kitty/ACE_wrappers/TAO/orbsvcs -I/u/kitty/ACE_wrappers/TAO/tao -D__GNUC__=2 -D__GNUC_MINOR__=96 -D__GNUC_PATCHLEVEL__=0 -D__ia64 -D__ia64__ -D__linux -D__linux__ -D_LONGLONG -Dlinux -Dunix -D__LP64__ -D__ELF__ -D__ia64 -D__ia64__ -D__linux -D__linux__ -D_LONGLONG -D__linux__ -D__unix__ -D__LP64__ -D__ELF__ -D__linux -D__unix -Asystem(linux) -Acpu(ia64) -Amachine(ia64) -D__OPTIMIZE__ -W -Wall -Wpointer-arith -Wno-uninitialized -D__LONG_MAX__=9223372036854775807L -D_POSIX_THREADS -D_POSIX_THREAD_SAFE_FUNCTIONS -D_REENTRANT -DACE_HAS_AIO_CALLS -DACE_HAS_EXCEPTIONS Container_i.cpp Container_i.ii GNU CPP version 2.96 20000731 (Red Hat Linux 7.1 2.96-93) (cpplib) (IA-64) ignoring nonexistent directory "/usr/ia64-redhat-linux/include" #include "..." search starts here: #include <...> search starts here: /u/kitty/ACE_wrappers /u/kitty/ACE_wrappers/TAO /u/kitty/ACE_wrappers/TAO/orbsvcs /u/kitty/ACE_wrappers/TAO/tao /usr/include/g++-3 /usr/local/include /usr/lib/gcc-lib/ia64-redhat-linux/2.96/include /usr/include End of search list. /usr/lib/gcc-lib/ia64-redhat-linux/2.96/cc1plus Container_i.ii -mb-step -quiet -dumpbase Container_i.cpp -O3 -W -Wall -Wpointer-arith -Wno-uninitialized -version -fno-implicit-templates -o Container_i.s GNU C++ version 2.96 20000731 (Red Hat Linux 7.1 2.96-93) (ia64-redhat-linux) compiled by GNU C version 2.96 20000731 (Red Hat Linux 7.1 2.96-93). as -x -o .obj/Container_i.o Container_i.s Container_i.s: Assembler messages: Container_i.s:25296: Warning: Use of 'mov' may violate WAW dependency 'GR%, % in 1 - 127' (impliedf) when entry is at label '.LEHB5313', specific resource number is 57 Container_i.s:25295: Warning: This is the location of the conflicting usage System info: yoda> uname -a Linux yoda 2.4.5-10 #1 Wed Jun 27 14:13:30 EDT 2001 ia64 unknown yoda> gcc -v Reading specs from /usr/lib/gcc-lib/ia64-redhat-linux/2.96/specs gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-93) yoda> /lib/libc-2.2.3.so GNU C Library stable release version 2.2.3, by Roland McGrath et al. Copyright (C) 1992-1999, 2000, 2001 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Compiled by GNU CC version 2.96 20000731 (Red Hat Linux 7.1 2.96-93). Compiled on a Linux 2.4.5-4 system on 2001-06-25. Available extensions: GNU libio by Per Bothner crypt add-on version 2.1 by Michael Glad and others The C stubs add-on version 2.1.2. linuxthreads-0.9 by Xavier Leroy BIND-8.2.3-T5B libthread_db work sponsored by Alpha Processor Inc NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk Report bugs using the `glibcbug' script to <bugs>. yoda> ld -v GNU ld version 2.11.90.0.8 (with BFD 2.11.90.0.8) yoda> as --version GNU assembler 2.11.90.0.8 Copyright 2001 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License. This program has absolutely no warranty. This assembler was configured for a target of `ia64-redhat-linux'. How reproducible: Always Steps to Reproduce: 1.Compile the file 2. 3. Additional info:
Created attachment 23353 [details] Gzipped preprocessed source of Container_i.cpp
Created attachment 23354 [details] Gzipped assembler output of Container_i.cpp
Forgot to mention that the error occurs with stock RedHat 7.1 also.
This is not a bug. The assembler just reports about possible violation write after write in the same bundle as described in intel documentation. WAW will not happen in this case because the insns are predicated and predicates will have different values. To switch off the warning, please use -Wa,--no-warn in gcc command line.