Reapply "[IR] Move optional data in llvm::Function into a hungoff uselist"
authorVedant Kumar <vsk@apple.com>
Sat, 19 Dec 2015 08:29:51 +0000 (08:29 +0000)
committerVedant Kumar <vsk@apple.com>
Sat, 19 Dec 2015 08:29:51 +0000 (08:29 +0000)
commitcd6381c4d45ff989a25731fedbda0bb8818499fc
treeed3252c2270854f8329dccce1b31bd5468ee41b5
parentab49f7c709fbdce97fba0c331552840c3fc327b0
Reapply "[IR] Move optional data in llvm::Function into a hungoff uselist"

Make personality functions, prefix data, and prologue data hungoff
operands of Function.

This is based on the email thread "[RFC] Clean up the way we store
optional Function data" on llvm-dev.

Thanks to sanjoyd, majnemer, rnk, loladiro, and dexonsmith for feedback!

Includes a fix to scrub value subclass data in dropAllReferences.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@256093 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/IR/Function.h
include/llvm/IR/User.h
lib/Bitcode/Writer/ValueEnumerator.cpp
lib/IR/AsmWriter.cpp
lib/IR/Function.cpp
lib/IR/LLVMContextImpl.h
lib/IR/TypeFinder.cpp
lib/Transforms/IPO/GlobalDCE.cpp