Wrong value for sext i1 true in BasicAliasAnalysis

Yin Ma yinma at codeaurora.org
Mon Dec 8 14:49:34 PST 2014


Hi Hal,

 

How are you doing. For your patch db1e51359, you changed offset  computation


from zext to sext. However, I came across a case that expression contains
i1 true to i32.  

true is value 1 for offset. if it is sext to 32bit, the result of sext will
not be 1. Instead, it will 

be -1. Sext true is a special case. This will make AA check failed when one
GEP contains 

i1 true to i32 expression but the other GEP doesn't.

 

I attached my change. How do you think? If it is valid patch, please merge
it to the tip.

 

Thanks,

 

Yin 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141208/99c28b38/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sext_true.diff
Type: application/octet-stream
Size: 850 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141208/99c28b38/attachment.obj>


More information about the llvm-commits mailing list