IR: Use SmallVector instead of std::vector of TrackingMDRef
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>
Wed, 20 Apr 2016 20:14:09 +0000 (20:14 +0000)
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>
Wed, 20 Apr 2016 20:14:09 +0000 (20:14 +0000)
commit3c406c2da52302eb5cced431373f240b9c037841
tree0036fa3b9a770cedd54db3a83bfd890cb2799c2a
parent07320e403001cc192f8565d77001d281d41f4572
IR: Use SmallVector instead of std::vector of TrackingMDRef

Don't use std::vector<TrackingMDRef>, since (at least in some versions
of libc++) std::vector apparently copies values on grow operations
instead of moving them.  Found this when I was temporarily deleting the
copy constructor for TrackingMDRef to investigate a performance
bottleneck.

llvm-svn: 266909
llvm/include/llvm/IR/DIBuilder.h
llvm/lib/Bitcode/Reader/BitcodeReader.cpp
llvm/lib/IR/DIBuilder.cpp