[LLVMdev] tbaa
Dan Gohman
gohman at apple.com
Tue Dec 6 09:26:59 PST 2011
On Dec 5, 2011, at 9:32 PM, Daniel Berlin wrote:
> On Mon, Dec 5, 2011 at 11:01 PM, Dan Gohman <gohman at apple.com> wrote:
>> On Dec 5, 2011, at 6:04 PM, Daniel Berlin wrote:
>>>
>>> Yet, aa-eval still says otherwise.
>>
>> The problem is with aa-eval. It collects all the pointer values in a
>> function, and then just makes a bunch of raw pointer queries, rather than
>> considering dereferences. TBAA tags are only attached to dereferences.
>> So TBAA always has to say MayAlias for every aa-eval query.
>
> Makes sense. In that case, it would give the expected answers if
> clang was enhanced to properly deal with similar/dissimilar pointer
> types, instead of giving all pointer types the "everything" tag :)
No, you've confused pointer types with pointee types. That "any pointer"
tag is for describing when the in-memory objects themselves have pointer
types.
The real issue here is that -aa-eval is just a limited debugging tool that
tends to get misinterpreted as a general-purpose AA benchmark due to
there being no easy alternatives.
Dan
More information about the llvm-dev
mailing list