[LLVMdev] "icmp sgt" when it should be "ugt" ?
Eli Friedman
eli.friedman at gmail.com
Tue Aug 2 08:27:52 PDT 2011
On Tue, Aug 2, 2011 at 3:47 AM, Duncan Sands <baldrick at free.fr> wrote:
> Hi Chris,
>
>> Icmp sgt is correct.
>
> while ugt would be wrong, I think sgt is too!
>
> For example, suppose %buf is 0 and %bufLen is ~0U. Then %add.ptr is ~0U, and
> %cmp is true, so control branches to %if.then. However in the optimized version
> %cmp is false and control branches to %if.end.
>
> The GEP does have an inbounds attribute, I'm not sure if that is relevant here.
It is relevant: in your proposed scenario, the GEP returns undef.
-Eli
More information about the llvm-dev
mailing list