]> granicus.if.org Git - llvm/commit
[TBAA] Drop support for "old style" scalar TBAA tags
authorSanjoy Das <sanjoy@playingwithpointers.com>
Tue, 8 Nov 2016 20:46:01 +0000 (20:46 +0000)
committerSanjoy Das <sanjoy@playingwithpointers.com>
Tue, 8 Nov 2016 20:46:01 +0000 (20:46 +0000)
commitb73e1558ac8255d5df48d6d200ac6a5a20c968fd
tree3a3efad4873d971bea44ce52f8f6799bcd93f553
parent474c83f1b325c10ba5244d2dc185476c062a3f43
[TBAA] Drop support for "old style" scalar TBAA tags

Summary:
We've had support for auto upgrading old style scalar TBAA access
metadata tags into the "new" struct path aware TBAA metadata for 3 years
now.  The only way to actually generate old style TBAA was explicitly
through the IRBuilder API.  I think this is a good time for dropping
support for old style scalar TBAA.

I'm not removing support for textual or bitcode upgrade -- if you have
IR with the old style scalar TBAA tags that go through the AsmParser orf
the bitcode parser before LLVM sees them, they will keep working as
usual.

Note:

  %val = load i32, i32* %ptr, !tbaa !N
  !N = < scalar tbaa node >

is equivalent to

  %val = load i32, i32* %ptr, !tbaa !M
  !N = < scalar tbaa node >
  !M = !{!N, !N, 0}

Reviewers: manmanren, chandlerc, sunfish

Subscribers: mcrosier, llvm-commits, mgorny

Differential Revision: https://reviews.llvm.org/D26229

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@286291 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Analysis/TypeBasedAliasAnalysis.cpp
lib/IR/Verifier.cpp
unittests/Analysis/CMakeLists.txt
unittests/Analysis/MixedTBAATest.cpp [deleted file]
unittests/Analysis/TBAATest.cpp [new file with mode: 0644]