[Bug tree-optimization/91322] [10 regression] alias-4 test failure
wdijkstr at arm dot com
gcc-bugzilla@gcc.gnu.org
Fri Apr 3 19:38:22 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91322
--- Comment #10 from Wilco <wdijkstr at arm dot com> ---
(In reply to Christophe Lyon from comment #6)
> Created attachment 48184 [details]
> GCC passes dumps
So according to that, in 105t.vrp1 it removes the branch and unconditionally
calls abort:
Folding statement: _4 = _3 == 0B;
Matching expression match.pd:1737, gimple-match.c:708
Matching expression match.pd:1740, gimple-match.c:772
Matching expression match.pd:1747, gimple-match.c:826
Not folded
Folding statement: if (_5 == 0)
gimple_simplified to if (1 != 0)
Folded into: if (1 != 0)
Folding statement: return;
Not folded
Folding statement: __builtin_abort ();
Not folded
Removing dead stmt _5 = __builtin_constant_p (_4);
It doesn't make sense, these are the VRP ranges:
_1: short int * * VARYING
_2: short int * * VARYING
_3: short int * VARYING
_4: bool VARYING
_5: int [0, 0]
_10: struct a * VARYING
So somehow it decides that __builtin_constant_p (VARYING) == [0,0]???
More information about the Gcc-bugs
mailing list