aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
diff options
context:
space:
mode:
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>2016-09-11 23:43:43 +0000
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>2016-09-11 23:43:43 +0000
commitb5da00533510265bbd23fd5aeb06a8b3746f7f8f (patch)
tree797e3a6bd2c90dac091fb54d1ddcb77eaaa1ae39 /lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
parenteaf28276957caf2292151c3051c012fb3d5cdda6 (diff)
downloadllvm-b5da00533510265bbd23fd5aeb06a8b3746f7f8f.zip
llvm-b5da00533510265bbd23fd5aeb06a8b3746f7f8f.tar.gz
llvm-b5da00533510265bbd23fd5aeb06a8b3746f7f8f.tar.bz2
ADT: Never allocate nodes in iplist<> and ilist<>
Remove createNode() and any API that depending on it, and add HasCreateNode to the list of checks for HasObsoleteCustomizations. Now an ilist *never* allocates (this was already true for iplist). This factors out all the differences between iplist and ilist. I'll aim to rename both to "owning_ilist" eventually, to call out the interesting (not exactly intrusive) ownership semantics. In the meantime, I've left both names around to reduce code churn. One of the deleted APIs is the ilist copy constructor. I've lifted up and tested iplist::cloneFrom (ala simple_ilist::cloneFrom) as a replacement. Users of ilist<> and iplist<> that want the list to allocate nodes have a few options: - use std::list; - use AllocatorList or BumpPtrList (or build a similarly trivial list); - use cloneFrom (which is explicit at the call site); or - allocate at the call site. See r280573, r281177, r281181, and r281182 for examples of what to do if you're updating out-of-tree code. llvm-svn: 281184
Diffstat (limited to 'lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp')
0 files changed, 0 insertions, 0 deletions