[llvm-commits] [llvm] r89959 - in /llvm/trunk: include/llvm/Analysis/ValueTracking.h lib/Analysis/ValueTracking.cpp test/Analysis/BasicAA/gep-alias.ll
Chris Lattner
sabre at nondot.org
Thu Nov 26 12:11:31 PST 2009
On Nov 26, 2009, at 11:27 AM, Duncan Sands wrote:
> Hi Chris,
>
>> + /// The scaled symbolic offsets (represented by pairs of a Value* and a scale
>> + /// in the VarIndices vector) are Value*'s that are known to be scaled by the
>> + /// specified amount, but which may have other unrepresented high bits. As
>> + /// such, the gep cannot necessarily be reconstructed from its decomposed
>> + /// form.
>
> it looks like there is no control on how many bits are "unrepresented high
> bits". For example, if you had an extension from i1 somewhere, presumably
> all bits except the first may contain some rubbish values. If you now do
> a test like "is this value bigger than 4", how can you answer?
This code only cares about scales and offsets. Because of this, an i1 won't have a scale. It doesn't matter of it is 0 or 1. :)
-Chris
More information about the llvm-commits
mailing list