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-devel

Re: [Xen-devel] x86_emulate/x86_emulate.c:2105: warning: comparison is a

To: Keir Fraser <keir@xxxxxxx>
Subject: Re: [Xen-devel] x86_emulate/x86_emulate.c:2105: warning: comparison is always false due to limited range of data type
From: Teck Choon Giam <giamteckchoon@xxxxxxxxx>
Date: Mon, 1 Nov 2010 04:35:44 +0800
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Sun, 31 Oct 2010 13:36:47 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=Qob7cjZ8+GXir49eBnhiFZje78uciVhBMcQuX6sxkG4=; b=dGfBBfZX7K9XGO3OISKamNQw95Y+nhvkl8IQzSAkDxYMRHoLgAe6nFv6feG2/rsh1C ki0PrAT2VEeOR9O0jcnDkgYrCbaZVK7vNd/Pwd6byTMzKiBEpsT9Ph6tf2/DnqxlnPnW o+mDQfQPVEagCNq1SWUTeysad2//X4hugCtC0=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=ck+HNHYVwlugviPgC7SlMVJmkViNBPRjFMYiD+s42q0upMFef+HCWPZVbEuZHIG43K mYpG8j1TI0UaGIQzOyZ6dQmufQjAMKBY/+wc9s0BqifZIY+o8Xk6gxqqHxw/jD38UIQz 6QIW/nlOZ4inacQ4NP7ZM4hcJiPgt+ZJhzzSw=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <C8F375ED.8BE4%keir@xxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <AANLkTinVk=cAy9EQ40B817-1cHfaw7oiAAUemLXwBn5H@xxxxxxxxxxxxxx> <C8F375ED.8BE4%keir@xxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Hi Keir,

Thanks for explaining and I can see the fix.  Compiled successfully
for x86_32 and x86_64.

Kindest regards,
Giam Teck Choon



On Mon, Nov 1, 2010 at 3:37 AM, Keir Fraser <keir@xxxxxxx> wrote:
> On 31/10/2010 19:12, "Teck Choon Giam" <giamteckchoon@xxxxxxxxx> wrote:
>
>> Hi Keir,
>>
>> Thanks ;)  I guess it will build fine for x86_64 but not for x86_32
>> due to int64_t?
>
> Yes, gcc realises that a uint32_t extended to a int64_t will always be
> positive. However, the same gcc does not realise that a <0 comparison on a
> uint32_t also will always be false. So this build failure weirdly only
> appears after c/s 21377. GCC can be quite fussy about when it warns.
>
>> I will test again after you update the fix in
>> http://xenbits.xensource.com/staging/xen-4.0-testing.hg?
>
> It's there now.
>
>  -- Keir
>
>> Kindest regards,
>> Giam Teck Choon
>>
>>
>> On Mon, Nov 1, 2010 at 3:04 AM, Keir Fraser <keir@xxxxxxx> wrote:
>>> Clever compiler. Should be fixed by xen-4.0-testing:21378.
>>>
>>>  Thanks,
>>>  Keir
>>>
>>> On 31/10/2010 18:38, "Teck Choon Giam" <giamteckchoon@xxxxxxxxx> wrote:
>>>
>>>> Hi,
>>>>
>>>> Changeset 21377 in xen-4.0-testing.hg compile error:
>>>>
>>>> gcc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
>>>> -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386
>>>> -mtune=generic -fasynchronous-unwind-tables -O1
>>>> -fno-omit-frame-pointer -fno-optimize-sibling-calls -m32 -march=i686
>>>> -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes
>>>> -Wno-unused-value -Wdeclaration-after-statement  -O1
>>>> -fno-omit-frame-pointer -fno-optimize-sibling-calls -m32 -march=i686
>>>> -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes
>>>> -Wno-unused-value -Wdeclaration-after-statement  -O1
>>>> -fno-omit-frame-pointer -fno-optimize-sibling-calls -m32 -march=i686
>>>> -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes
>>>> -Wno-unused-value -Wdeclaration-after-statement  -nostdinc
>>>> -fno-builtin -fno-common -iwithprefix include -Werror
>>>> -Wno-pointer-arith -pipe
>>>> -I/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/include
>>>> -I/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/include/asm-x86/mach-gener
>>>> ic
>>>> -I/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/include/asm-x86/mach-defau
>>>> lt
>>>> -msoft-float -fno-stack-protector -fno-exceptions -g -D__XEN__
>>>> -DVERBOSE -fno-omit-frame-pointer -DCONFIG_FRAME_POINTER -MMD -MF
>>>> .xen.d -O1 -fno-omit-frame-pointer -fno-optimize-sibling-calls -m32
>>>> -march=i686 -g -fno-strict-aliasing -std=gnu99 -Wall
>>>> -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement
>>>> -nostdinc -fno-builtin -fno-common -iwithprefix include -Werror
>>>> -Wno-pointer-arith -pipe
>>>> -I/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/include
>>>> -I/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/include/asm-x86/mach-gener
>>>> ic
>>>> -I/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/include/asm-x86/mach-defau
>>>> lt
>>>> -msoft-float -fno-stack-protector -fno-exceptions -g -D__XEN__
>>>> -DVERBOSE -fno-omit-frame-pointer -DCONFIG_FRAME_POINTER -MMD -MF
>>>> .built_in.o.d -O1 -fno-omit-frame-pointer -fno-optimize-sibling-calls
>>>> -m32 -march=i686 -g -fno-strict-aliasing -std=gnu99 -Wall
>>>> -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement
>>>> -nostdinc -fno-builtin -fno-common -iwithprefix include -Werror
>>>> -Wno-pointer-arith -pipe
>>>> -I/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/include
>>>> -I/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/include/asm-x86/mach-gener
>>>> ic
>>>> -I/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/include/asm-x86/mach-defau
>>>> lt
>>>> -msoft-float -fno-stack-protector -fno-exceptions -g -D__XEN__
>>>> -DVERBOSE -fno-omit-frame-pointer -DCONFIG_FRAME_POINTER -MMD -MF
>>>> .x86_emulate.o.d -c x86_emulate.c -o x86_emulate.o
>>>> cc1: warnings being treated as errors
>>>> In file included from x86_emulate.c:17:
>>>> x86_emulate/x86_emulate.c: In function 'x86_emulate':
>>>> x86_emulate/x86_emulate.c:2105: warning: comparison is always false
>>>> due to limited range of data type
>>>> make[4]: *** [x86_emulate.o] Error 1
>>>> make[4]: Leaving directory
>>>> `/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/arch/x86'
>>>> make[3]: ***
>>>> [/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/arch/x86/built_in.o]
>>>> Error 2
>>>> make[3]: Leaving directory
>>>> `/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/arch/x86'
>>>> make[2]: *** [/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen/xen] Error 2
>>>> make[2]: Leaving directory 
>>>> `/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen'
>>>> make[1]: *** [install] Error 2
>>>> make[1]: Leaving directory 
>>>> `/builddir/build/BUILD/xen-4.0.2-rc1-pre-src/xen'
>>>> make: *** [install-xen] Error 2
>>>>
>>>> Thanks.
>>>>
>>>> Kindest regards,
>>>> Giam Teck Choon
>>>>
>>>> _______________________________________________
>>>> Xen-devel mailing list
>>>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>>>> http://lists.xensource.com/xen-devel
>>>
>>>
>>>
>
>
>

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