https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81874
--- Comment #6 from zwzhangwen.zhang at huawei dot com ---
I think this bug exists and hides.The reason is that trunc_int_for_mode will
check newval replacing oldval with CONST_INT in combine pass, but for
0x8000,the result of trunc_int_for_m
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81874
--- Comment #5 from zwzhangwen.zhang at huawei dot com ---
(In reply to zwzhangwen.zhang from comment #4)
> I have checked it can be hidden or fixed in gcc.gnu.org/svn/gcc/trunk@239421
> But it fixed PR71654 and it affected comparision expr?
coul
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81874
--- Comment #4 from zwzhangwen.zhang at huawei dot com ---
I have checked it can be hidden or fixed in gcc.gnu.org/svn/gcc/trunk@239421
But it fixed PR71654 and it affected comparision expr?
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81874
Paul Hua changed:
What|Removed |Added
CC||paul.hua.gm at gmail dot com
--- Comment #3 f
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81874
--- Comment #2 from Martin Liška ---
Reduced test-case:
int a, c;
int
d (int f, int g)
{
return g ?: f;
}
void
h ()
{
int b = a > 0 && 1 > 2147483647 - a, e = b;
c = d (++a, e);
}
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81874
Martin Liška changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last reconfirmed|