Displaying 2 results from an estimated 2 matches for "simple_tbaa".
2017 Apr 13
2
TBAA falsely reporting may alias?
...4 %x, i64* %a, !tbaa !2 ; write to stack
store i64 %y, i64* %b, !tbaa !3 ; write to heap
ret void
}
!1 = !{!"root"}
!2 = !{!"stack", !1}
!3 = !{!"heap", !1}
;;;;;;;;;;;;;;;;;;;;;;
When I run: opt -disable-output -disable-basicaa -tbaa -aa-eval -print-alias-sets simple_tbaa.ll
I get something unusual, as the two pointers %a and %b are in disjoint alias sets, but aa-eval reports that they may alias:
Alias sets for function 'foo':
Alias Set Tracker: 2 alias sets for 2 pointer values.
AliasSet[0x7f9b23d0c510, 1] must alias, Mod Pointers: (i64* %a, 8)...
2017 Apr 14
2
TBAA falsely reporting may alias?
...gt; ret void
>> }
>>
>> !1 = !{!"root"}
>> !2 = !{!"stack", !1}
>> !3 = !{!"heap", !1}
>>
>> ;;;;;;;;;;;;;;;;;;;;;;
>>
>> When I run: opt -disable-output -disable-basicaa -tbaa -aa-eval -print-alias-sets
>> simple_tbaa.ll
>>
>> I get something unusual, as the two pointers %a and %b are in disjoint alias sets, but aa-eval
>> reports that they may alias:
>
> Given the IR you have, what you know is that the two store
> *operations* do not alias, not that %a does not alias %b. In the
>...