[PATCH] D24533: Fix auto-upgrade of TBAA tags in Bitcode Reader

Mehdi AMINI via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 13 16:36:49 PDT 2016


mehdi_amini created this revision.
mehdi_amini added reviewers: dexonsmith, manmanren.
mehdi_amini added a subscriber: llvm-commits.

If TBAA is on an intrinsic and it gets upgraded, it'll delete the call
instruction that we collected in a vector. Even if we were to use
WeakVH, it'll drop the TBAA and we'll hit the assert on the upgrade
path.

r263673 gave a shot to make sure the TBAA upgrade happens before
intrinsics upgrade, but failed to account for all cases.

Instead of collecting instructions in a vector, this patch makes it
just upgrade the TBAA on the fly, because metadata are always
already loaded at this point.

https://reviews.llvm.org/D24533

Files:
  include/llvm/IR/AutoUpgrade.h
  lib/Bitcode/Reader/BitcodeReader.cpp
  lib/IR/AutoUpgrade.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D24533.71263.patch
Type: text/x-patch
Size: 5116 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160913/bf4fe45c/attachment.bin>


More information about the llvm-commits mailing list