[all-commits] [llvm/llvm-project] a79295: [Metadata] Add TBAA struct metadata to `AAMDNode`

Anton Afanasyev via All-commits all-commits at lists.llvm.org
Mon Jan 6 00:06:59 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: a7929533300535547f8484f7e38765234a7e7c93
      https://github.com/llvm/llvm-project/commit/a7929533300535547f8484f7e38765234a7e7c93
  Author: Anton Afanasyev <anton.a.afanasyev at gmail.com>
  Date:   2020-01-06 (Mon, 06 Jan 2020)

  Changed paths:
    M llvm/include/llvm/IR/Metadata.h
    M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
    M llvm/lib/IR/Metadata.cpp
    M llvm/test/Transforms/SROA/tbaa-struct.ll

  Log Message:
  -----------
  [Metadata] Add TBAA struct metadata to `AAMDNode`

Summary:
Make `AAMDNodes`' `getAAMetadata()` and `setAAMetadata()` to take `!tbaa.struct`
into account as well as `!tbaa`. This impacts llvm.org/pr42022.
This is a temprorary fix needed to keep `!tbaa.struct` tag by SROA pass.
New field `TBAAStruct` should be deleted when `!tbaa` tag replaces `!tbaa.struct`.
Merging two `!tbaa.struct`'s to one is conservatively considered to be `nullptr`
(giving `MayAlias`) -- this could be enhanced, but relying on the said future
replacement.

Reviewers: RKSimon, spatel, vporpo

Subscribers: hiraditya, kosarev, llvm-commits

Tags: #llvm

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




More information about the All-commits mailing list