WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-ia64-devel

[Xen-ia64-devel] staging - gcc-4.1.x bug?

To: xen-ia64-devel <xen-ia64-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-ia64-devel] staging - gcc-4.1.x bug?
From: Alex Williamson <alex.williamson@xxxxxx>
Date: Tue, 25 Sep 2007 12:57:52 -0600
Delivery-date: Tue, 25 Sep 2007 11:59:04 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
Organization: HP OSLO R&D
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
   Any gcc wizards?  Compiling latest staging with gcc-4.1.x and
no_warns=y results in the errors below.  This doesn't happen with
gcc-3.4 or 4.2.  The warnings were introduced by this changeset:

http://xenbits.xensource.com/staging/xen-unstable.hg?rev/66fa2bc70e2a

The nested ternary operators in ns16550.c are where the problems occur,
but the code itself appears correct.  Is it time for me to give up on
gcc-4.1, or not worry about no_warns=y builds?  It can be fixed by
moving code around like this:

def_baud = console_has((index == 0) ? "com1" : "com2") ? BAUD_AUTO : 0;
uart->baud = defaults->baud ? : def_baud;

But that's a bit of a kludge and it still seems rather fragile.  Any
other ideas?  Thanks,

        Alex

-- 
Alex Williamson                             HP Open Source & Linux Org.


gcc -O2 -fomit-frame-pointer -DNDEBUG -fno-strict-aliasing -std=gnu99 -Wall 
-Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -nostdinc 
-fno-builtin -fno-common -mconstant-gp -O2 -fomit-frame-pointer -D__KERNEL__ 
-iwithprefix include -I/home/awilliam/xen/20070924-staging/xen/include 
-I/home/awilliam/xen/20070924-staging/xen/include/asm-ia64 
-I/home/awilliam/xen/20070924-staging/xen/include/asm-ia64/linux 
-I/home/awilliam/xen/20070924-staging/xen/include/asm-ia64/linux-xen 
-I/home/awilliam/xen/20070924-staging/xen/include/asm-ia64/linux-null 
-I/home/awilliam/xen/20070924-staging/xen/arch/ia64/linux 
-I/home/awilliam/xen/20070924-staging/xen/arch/ia64/linux-xen -DIA64 -DXEN 
-DLINUX_2_6 -ffixed-r13 -mfixed-range=f2-f5,f12-f127,b2-b5 -g 
-DCONFIG_XEN_IA64_EXPOSE_P2M -DCONFIG_XEN_IA64_PERVCPU_VHPT 
-DCONFIG_XEN_IA64_TLB_TRACK -DCONFIG_XEN_IA64_TLBFLUSH_CLOCK 
-Wa,--fatal-warnings -Werror -Wno-uninitialized -g -D__XEN__ -c ns16550.c -o 
ns16550.o
/tmp/cczn0I0R.s: Assembler messages:
/tmp/cczn0I0R.s:961: Warning: Use of 'addl' may violate WAW dependency 'GR%, % 
in 1 - 127' (impliedf), specific resource number is 34
/tmp/cczn0I0R.s:957: Warning: This is the location of the conflicting usage
/tmp/cczn0I0R.s:979: Warning: Use of 'ld8.mov' may violate RAW dependency 'GR%, 
% in 1 - 127' (impliedf), specific resource number is 34
/tmp/cczn0I0R.s:974: Warning: This is the location of the conflicting usage
/tmp/cczn0I0R.s:979: Warning: Use of 'ld8.mov' may violate WAW dependency 'GR%, 
% in 1 - 127' (impliedf), specific resource number is 34
/tmp/cczn0I0R.s:974: Warning: This is the location of the conflicting usage
/tmp/cczn0I0R.s:13741: Error: 6 warnings, treating warnings as errors
make[5]: *** [ns16550.o] Error 1
make[5]: Leaving directory 
`/home/awilliam/xen/20070924-staging/xen/drivers/char'
make[4]: *** [char/built_in.o] Error 2
make[4]: Leaving directory `/home/awilliam/xen/20070924-staging/xen/drivers'
make[3]: *** [/home/awilliam/xen/20070924-staging/xen/drivers/built_in.o] Error 
2
make[3]: Leaving directory `/home/awilliam/xen/20070924-staging/xen/arch/ia64'
make[2]: *** [/home/awilliam/xen/20070924-staging/xen/xen] Error 2
make[2]: Leaving directory `/home/awilliam/xen/20070924-staging/xen'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/home/awilliam/xen/20070924-staging/xen'
make: *** [install-xen] Error 2



_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel

<Prev in Thread] Current Thread [Next in Thread>