[PATCH] D13829: WIP: clean up the way optional Function data is managed

Vedant Kumar via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 16 13:36:19 PDT 2015


vsk created this revision.
vsk added a subscriber: llvm-commits.
vsk added a dependency: D13826: [Bitcode] Limit bits used for CallingConv::ID in Function, update tests.

This is a work-in-progress patch that attempts to clean up the way we manage optional Function data (personalities, prefix data, and prologue data).

This iteration uses a hung-off uselist to allocate space for optional data as needed. It depends on D13826. Feedback is welcome :). One early objection is that it slows down the common case of attaching personalities a bit.

There is an ongoing RFC here: http://lists.llvm.org/pipermail/llvm-dev/2015-October/091169.html

Depends on: http://reviews.llvm.org/D13826

http://reviews.llvm.org/D13829

Files:
  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

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D13829.37632.patch
Type: text/x-patch
Size: 16229 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151016/bc169265/attachment-0001.bin>


More information about the llvm-commits mailing list