[PATCH] D42366: [CodeGen] Fix generation of TBAA tags for may-alias accesses

Ivan Kosarev via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Jan 22 05:45:08 PST 2018


kosarev created this revision.
kosarev added reviewers: rjmccall, hfinkel.
kosarev added a project: clang.
Herald added a subscriber: llvm-commits.

This patch does two things. First, it fixes creating TBAA access descriptors for may_alias-marked access types. Currently, for such types we generate ordinary descriptors with char as its access type. The patch changes this to produce proper may-alias descriptors.

Then, it makes all may-alias descriptors to have their size fields set to UINT64_MAX instead of 0. This is not strictly necessary given the analysis ignores that field when one of the types is the common type (which is the case for may-alias accesses), but still seems better than leaving it to be 0.


Repository:
  rL LLVM

https://reviews.llvm.org/D42366

Files:
  lib/CodeGen/CodeGenModule.cpp
  lib/CodeGen/CodeGenTBAA.cpp
  lib/CodeGen/CodeGenTBAA.h
  test/CodeGen/may-alias.c

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D42366.130866.patch
Type: text/x-patch
Size: 7226 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20180122/4df8de73/attachment.bin>


More information about the cfe-commits mailing list