[ScopedNoAliasAA] Make test basic.ll less confusing
authorAdam Nemet <anemet@apple.com>
Mon, 7 Mar 2016 17:49:10 +0000 (17:49 +0000)
committerAdam Nemet <anemet@apple.com>
Mon, 7 Mar 2016 17:49:10 +0000 (17:49 +0000)
commit4896c7a82afc1fc586db170f86f6ca57e61286e8
tree063994be11b1192d1d45b125523f51438891d965
parente711fc37672b3e3c25e5b152456710f04ed360d2
[ScopedNoAliasAA] Make test basic.ll less confusing

Summary:
This testcase had me confused.  It made me believe that you can use
alias scopes and alias scopes list interchangeably with alias.scope and
noalias.  Both langref and the other testcase use scope lists so I went
looking.

Turns out using scope directly only happens to work by chance.  When
ScopedNoAliasAAResult::mayAliasInScopes traverses this as a scope list:

!1 = !{!1, !0, !"some scope"}

, the first entry is in fact a scope but only because the scope is
happened to be defined self-referentially to make it unique globally.

The remaining elements in the tuple (!0, !"some scope") are considered
as scopes but AliasScopeNode::getDomain will just bail on those without
any error.

This change avoids this ambiguity in the test but I've also been
wondering if we should issue some sort of a diagnostics.

Reviewers: dexonsmith, hfinkel

Subscribers: mssimpso, llvm-commits

Differential Revision: http://reviews.llvm.org/D16670

llvm-svn: 262841
llvm/test/Analysis/ScopedNoAliasAA/basic.ll