This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug optimization/14682] [tree-ssa] error: Invalid operand to binary operator
- From: "pinskia at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 22 Mar 2004 20:20:39 -0000
- Subject: [Bug optimization/14682] [tree-ssa] error: Invalid operand to binary operator
- References: <20040322193838.14682.aj@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-03-22 20:20 -------
DOM is causing it.
Before DOM:
;; Function __atomic_readv_replacement (__atomic_readv_replacement)
__atomic_readv_replacement (iov_len, count, i)
{
long long unsigned int bytes;
long long unsigned int T.0;
<bb 0>:
bytes_1 = 0;
goto <bb 3> (<L2>);
<L0>:;
T.0_5 = 9223372036854775807 - bytes_1;
if (T.0_5 < iov_len_6) goto <L1>; else goto <L2>;
<L1>:;
return 22;
<L2>:;
if (i_2 < count_3) goto <L0>; else goto <L4>;
<L4>:;
return 0;
}
After DOM:
;; Function __atomic_readv_replacement (__atomic_readv_replacement)
__atomic_readv_replacement (iov_len, count, i)
{
long long unsigned int bytes;
long long unsigned int T.0;
<bb 0>:
bytes_1 = 0;
goto <bb 3> (<L2>);
<L0>:;
T.0_5 = 9223372036854775807;
if ((long long int)iov_len_6 < 0) goto <L1>; else goto <L2>;
<L1>:;
return 22;
<L2>:;
if (i_2 < count_3) goto <L0>; else goto <L4>;
<L4>:;
return 0;
}
See if ((long long int)iov_len_6 < 0) goto <L1>; else goto <L2>;
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |law at gcc dot gnu dot org
Component|middle-end |optimization
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14682