This turned out to be an lldb problem exposed by the change on ToT.
Should be fixed in r223916.

> On 2014 Dec 9, at 18:38, Sean Callanan <scalla...@apple.com> wrote:
> 
> Duncan,
> 
> I still see the crash on OS X as LLDB shuts down.  Filed 
> http://llvm.org/bugs/show_bug.cgi?id=21802
> 
> Sean
> 
>> On Dec 9, 2014, at 6:05 PM, Duncan P. N. Exon Smith <dexonsm...@apple.com> 
>> wrote:
>> 
>> I think I have a fix in r223904.  At least, it fixed Hexagon [1].
>> Reid has been helping me with it, although he's AFK right now and
>> so I can't confirm with him.  Let me know if it doesn't fix your
>> build (in which case we should track it in a new PR).
>> 
>> [1]: http://lab.llvm.org:8011/builders/llvm-hexagon-elf
>> 
>>> On 2014 Dec 9, at 17:53, Zachary Turner <ztur...@google.com> wrote:
>>> 
>>> I'm also still getting DenseMap failures on Windows after the MDNode 
>>> placement new/delete fix. Is this being tracked separately?
>>> On Tue, Dec 9, 2014 at 3:38 PM Duncan P. N. Exon Smith 
>>> <dexonsm...@apple.com> wrote:
>>> This looks like PR21798, I hope.
>>> 
>>>> On 2014 Dec 9, at 15:37, Sean Callanan <scalla...@apple.com> wrote:
>>>> 
>>>> I see this crash while LLDB is exiting in OS X:
>>>> –
>>>> #0    0x000000010b03da7f in bool 
>>>> llvm::DenseMapBase<llvm::SmallDenseMap<void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long>, 4u, llvm::DenseMapInfo<void*>, 
>>>> llvm::detail::DenseMapPair<void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long> > >, void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long>, llvm::DenseMapInfo<void*>, 
>>>> llvm::detail::DenseMapPair<void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long> > >::LookupBucketFor<void*>(void* 
>>>> const&, llvm::detail::DenseMapPair<void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long> > const*&) const at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/include/llvm/ADT/DenseMap.h:495
>>>> #1    0x000000010b03d918 in bool 
>>>> llvm::DenseMapBase<llvm::SmallDenseMap<void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long>, 4u, llvm::DenseMapInfo<void*>, 
>>>> llvm::detail::DenseMapPair<void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long> > >, void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long>, llvm::DenseMapInfo<void*>, 
>>>> llvm::detail::DenseMapPair<void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long> > >::LookupBucketFor<void*>(void* 
>>>> const&, llvm::detail::DenseMapPair<void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long> >*&) at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/include/llvm/ADT/DenseMap.h:525
>>>> #2    0x000000010b031893 in llvm::DenseMapBase<llvm::SmallDenseMap<void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long>, 4u, llvm::DenseMapInfo<void*>, 
>>>> llvm::detail::DenseMapPair<void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long> > >, void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long>, llvm::DenseMapInfo<void*>, 
>>>> llvm::detail::DenseMapPair<void*, 
>>>> std::__1::pair<llvm::PointerUnion<llvm::MetadataAsValue*, 
>>>> llvm::Metadata*>, unsigned long long> > >::erase(void* const&) at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/include/llvm/ADT/DenseMap.h:200
>>>> #3    0x000000010b022e7a in llvm::ReplaceableMetadataImpl::dropRef(void*) 
>>>> at /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/lib/IR/Metadata.cpp:135
>>>> #4    0x000000010b0409e2 in llvm::MetadataTracking::untrack(void*, 
>>>> llvm::Metadata&) at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/lib/IR/MetadataTracking.cpp:42
>>>> #5    0x000000010afcf00c in 
>>>> llvm::MetadataTracking::untrack(llvm::Metadata*&) at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/include/llvm/IR/MetadataTracking.h:69
>>>> #6    0x000000010afced0a in llvm::TrackingMDRef::untrack() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/include/llvm/IR/TrackingMDRef.h:90
>>>> #7    0x000000010afd0385 in llvm::TrackingMDRef::~TrackingMDRef() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/include/llvm/IR/TrackingMDRef.h:56
>>>> #8    0x000000010afd0365 in llvm::TrackingMDRef::~TrackingMDRef() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/include/llvm/IR/TrackingMDRef.h:56
>>>> #9    0x00000001092ba55e in llvm::DenseMapBase<llvm::DenseMap<char const*, 
>>>> llvm::TrackingMDRef, llvm::DenseMapInfo<char const*>, 
>>>> llvm::detail::DenseMapPair<char const*, llvm::TrackingMDRef> >, char 
>>>> const*, llvm::TrackingMDRef, llvm::DenseMapInfo<char const*>, 
>>>> llvm::detail::DenseMapPair<char const*, llvm::TrackingMDRef> 
>>>> >::destroyAll() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/include/llvm/ADT/DenseMap.h:264
>>>> #10   0x00000001092ba48f in llvm::DenseMap<char const*, 
>>>> llvm::TrackingMDRef, llvm::DenseMapInfo<char const*>, 
>>>> llvm::detail::DenseMapPair<char const*, llvm::TrackingMDRef> 
>>>> >::~DenseMap() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/include/llvm/ADT/DenseMap.h:578
>>>> #11   0x00000001092ae2a5 in llvm::DenseMap<char const*, 
>>>> llvm::TrackingMDRef, llvm::DenseMapInfo<char const*>, 
>>>> llvm::detail::DenseMapPair<char const*, llvm::TrackingMDRef> 
>>>> >::~DenseMap() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/include/llvm/ADT/DenseMap.h:577
>>>> #12   0x000000010929323b in clang::CodeGen::CGDebugInfo::~CGDebugInfo() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp:53
>>>> #13   0x0000000109293315 in clang::CodeGen::CGDebugInfo::~CGDebugInfo() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp:50
>>>> #14   0x0000000109421bca in 
>>>> clang::CodeGen::CodeGenModule::~CodeGenModule() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp:164
>>>> #15   0x0000000109422355 in 
>>>> clang::CodeGen::CodeGenModule::~CodeGenModule() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp:157
>>>> #16   0x0000000109537e36 in 
>>>> std::__1::default_delete<clang::CodeGen::CodeGenModule>::operator()(clang::CodeGen::CodeGenModule*)
>>>>  const [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2426
>>>> #17   0x0000000109537e0f in 
>>>> std::__1::unique_ptr<clang::CodeGen::CodeGenModule, 
>>>> std::__1::default_delete<clang::CodeGen::CodeGenModule> 
>>>> >::reset(clang::CodeGen::CodeGenModule*) [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2625
>>>> #18   0x0000000109537d8f in 
>>>> std::__1::unique_ptr<clang::CodeGen::CodeGenModule, 
>>>> std::__1::default_delete<clang::CodeGen::CodeGenModule> >::~unique_ptr() 
>>>> [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2593
>>>> #19   0x0000000109537d8f in 
>>>> std::__1::unique_ptr<clang::CodeGen::CodeGenModule, 
>>>> std::__1::default_delete<clang::CodeGen::CodeGenModule> >::~unique_ptr() 
>>>> [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2593
>>>> #20   0x0000000109537d8f in (anonymous 
>>>> namespace)::CodeGeneratorImpl::~CodeGeneratorImpl() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp:63
>>>> #21   0x0000000109536835 in (anonymous 
>>>> namespace)::CodeGeneratorImpl::~CodeGeneratorImpl() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp:63
>>>> #22   0x0000000109536859 in (anonymous 
>>>> namespace)::CodeGeneratorImpl::~CodeGeneratorImpl() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp:63
>>>> #23   0x000000010bd4cf05 in 
>>>> std::__1::default_delete<clang::CodeGenerator>::operator()(clang::CodeGenerator*)
>>>>  const [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2426
>>>> #24   0x000000010bd4ceda in std::__1::unique_ptr<clang::CodeGenerator, 
>>>> std::__1::default_delete<clang::CodeGenerator> 
>>>> >::reset(clang::CodeGenerator*) [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2625
>>>> #25   0x000000010bd4ce53 in std::__1::unique_ptr<clang::CodeGenerator, 
>>>> std::__1::default_delete<clang::CodeGenerator> >::~unique_ptr() [inlined] 
>>>> at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2593
>>>> #26   0x000000010bd4ce53 in std::__1::unique_ptr<clang::CodeGenerator, 
>>>> std::__1::default_delete<clang::CodeGenerator> >::~unique_ptr() [inlined] 
>>>> at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2593
>>>> #27   0x000000010bd4ce53 in 
>>>> lldb_private::ClangExpressionParser::~ClangExpressionParser() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/source/Expression/ClangExpressionParser.cpp:338
>>>> #28   0x000000010bd4d545 in 
>>>> lldb_private::ClangExpressionParser::~ClangExpressionParser() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/source/Expression/ClangExpressionParser.cpp:337
>>>> #29   0x000000010bd2ce7f in 
>>>> std::__1::default_delete<lldb_private::ClangExpressionParser>::operator()(lldb_private::ClangExpressionParser*)
>>>>  const [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2426
>>>> #30   0x000000010bd2ce58 in 
>>>> std::__1::unique_ptr<lldb_private::ClangExpressionParser, 
>>>> std::__1::default_delete<lldb_private::ClangExpressionParser> 
>>>> >::reset(lldb_private::ClangExpressionParser*) [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2625
>>>> #31   0x000000010bd2cdd8 in 
>>>> std::__1::unique_ptr<lldb_private::ClangExpressionParser, 
>>>> std::__1::default_delete<lldb_private::ClangExpressionParser> 
>>>> >::~unique_ptr() [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2593
>>>> #32   0x000000010bd2cdd8 in 
>>>> std::__1::unique_ptr<lldb_private::ASTStructExtractor, 
>>>> std::__1::default_delete<lldb_private::ASTStructExtractor> 
>>>> >::~unique_ptr() [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2593
>>>> #33   0x000000010bd2cdd8 in lldb_private::ClangFunction::~ClangFunction() 
>>>> at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/source/Expression/ClangFunction.cpp:118
>>>> #34   0x000000010bd2ced5 in lldb_private::ClangFunction::~ClangFunction() 
>>>> at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/source/Expression/ClangFunction.cpp:110
>>>> #35   0x000000010bd2cef9 in lldb_private::ClangFunction::~ClangFunction() 
>>>> at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/source/Expression/ClangFunction.cpp:110
>>>> #36   0x000000010c38f1ff in 
>>>> std::__1::default_delete<lldb_private::ClangFunction>::operator()(lldb_private::ClangFunction*)
>>>>  const [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2426
>>>> #37   0x000000010c38f1d4 in 
>>>> std::__1::unique_ptr<lldb_private::ClangFunction, 
>>>> std::__1::default_delete<lldb_private::ClangFunction> 
>>>> >::reset(lldb_private::ClangFunction*) [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2625
>>>> #38   0x000000010c38f154 in 
>>>> std::__1::unique_ptr<lldb_private::ClangFunction, 
>>>> std::__1::default_delete<lldb_private::ClangFunction> >::~unique_ptr() 
>>>> [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2593
>>>> #39   0x000000010c38f154 in 
>>>> std::__1::unique_ptr<lldb_private::AppleObjCRuntimeV2::TaggedPointerVendor,
>>>>  
>>>> std::__1::default_delete<lldb_private::AppleObjCRuntimeV2::TaggedPointerVendor>
>>>>  >::~unique_ptr() [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2593
>>>> #40   0x000000010c38f154 in 
>>>> lldb_private::AppleObjCRuntimeV2::~AppleObjCRuntimeV2() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp:365
>>>> #41   0x000000010c38f405 in 
>>>> lldb_private::AppleObjCRuntimeV2::~AppleObjCRuntimeV2() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp:364
>>>> #42   0x000000010c38f429 in 
>>>> lldb_private::AppleObjCRuntimeV2::~AppleObjCRuntimeV2() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp:364
>>>> #43   0x000000010c1cc07c in 
>>>> std::__1::default_delete<lldb_private::LanguageRuntime>::operator()(lldb_private::LanguageRuntime*)
>>>>  const [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:2426
>>>> #44   0x000000010c1cc051 in 
>>>> std::__1::__shared_ptr_pointer<lldb_private::LanguageRuntime*, 
>>>> std::__1::default_delete<lldb_private::LanguageRuntime>, 
>>>> std::__1::allocator<lldb_private::LanguageRuntime> >::__on_zero_shared() 
>>>> at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:3669
>>>> #45   0x00007fff92b9d8a6 in 
>>>> std::__1::__shared_weak_count::__release_shared() ()
>>>> #46   0x000000010c1cb90f in 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime>::~shared_ptr() at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:4448
>>>> #47   0x000000010c1c3925 in 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime>::~shared_ptr() at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:4446
>>>> #48   0x000000010c1ce09c in std::__1::pair<lldb::LanguageType const, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> >::~pair() at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/utility:248
>>>> #49   0x000000010c1ce075 in std::__1::pair<lldb::LanguageType const, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> >::~pair() at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/utility:248
>>>> #50   0x000000010c1cdff9 in std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> >::~__value_type() 
>>>> [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/map:617
>>>> #51   0x000000010c1cdff1 in std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> >::~__value_type() 
>>>> [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/map:617
>>>> #52   0x000000010c1cdff1 in void 
>>>> std::__1::allocator_traits<std::__1::allocator<std::__1::__tree_node<std::__1::__value_type<lldb::LanguageType,
>>>>  std::__1::shared_ptr<lldb_private::LanguageRuntime> >, void*> > 
>>>> >::__destroy<std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> > 
>>>> >(std::__1::integral_constant<bool, false>, 
>>>> std::__1::allocator<std::__1::__tree_node<std::__1::__value_type<lldb::LanguageType,
>>>>  std::__1::shared_ptr<lldb_private::LanguageRuntime> >, void*> >&, 
>>>> std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> >*) [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:1585
>>>> #53   0x000000010c1cdfdd in void 
>>>> std::__1::allocator_traits<std::__1::allocator<std::__1::__tree_node<std::__1::__value_type<lldb::LanguageType,
>>>>  std::__1::shared_ptr<lldb_private::LanguageRuntime> >, void*> > 
>>>> >::destroy<std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> > 
>>>> >(std::__1::allocator<std::__1::__tree_node<std::__1::__value_type<lldb::LanguageType,
>>>>  std::__1::shared_ptr<lldb_private::LanguageRuntime> >, void*> >&, 
>>>> std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> >*) [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/memory:1483
>>>> #54   0x000000010c1cdfcd in 
>>>> std::__1::__tree<std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> >, 
>>>> std::__1::__map_value_compare<lldb::LanguageType, 
>>>> std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> >, 
>>>> std::__1::less<lldb::LanguageType>, true>, 
>>>> std::__1::allocator<std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> > > 
>>>> >::destroy(std::__1::__tree_node<std::__1::__value_type<lldb::LanguageType,
>>>>  std::__1::shared_ptr<lldb_private::LanguageRuntime> >, void*>*) at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/__tree:1445
>>>> #55   0x000000010c1cde69 in 
>>>> std::__1::__tree<std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> >, 
>>>> std::__1::__map_value_compare<lldb::LanguageType, 
>>>> std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> >, 
>>>> std::__1::less<lldb::LanguageType>, true>, 
>>>> std::__1::allocator<std::__1::__value_type<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> > > >::clear() at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/__tree:1477
>>>> #56   0x000000010c19ea1c in std::__1::map<lldb::LanguageType, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime>, 
>>>> std::__1::less<lldb::LanguageType>, 
>>>> std::__1::allocator<std::__1::pair<lldb::LanguageType const, 
>>>> std::__1::shared_ptr<lldb_private::LanguageRuntime> > > >::clear() 
>>>> [inlined] at 
>>>> /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/map:1073
>>>> #57   0x000000010c19ea17 in lldb_private::Process::Finalize() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/source/Target/Process.cpp:846
>>>> #58   0x000000010bb7ab0b in lldb_private::Debugger::Clear() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/source/Core/Debugger.cpp:722
>>>> #59   0x000000010bb7a0e6 in 
>>>> lldb_private::Debugger::Destroy(std::__1::shared_ptr<lldb_private::Debugger>&)
>>>>  at /Volumes/Lachesis/Software/lldb-svn/lldb/source/Core/Debugger.cpp:571
>>>> #60   0x0000000108a5a341 in lldb::SBDebugger::Destroy(lldb::SBDebugger&) 
>>>> at /Volumes/Lachesis/Software/lldb-svn/lldb/source/API/SBDebugger.cpp:213
>>>> #61   0x00000001089e1084 in Driver::MainLoop() at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/tools/driver/Driver.cpp:1157
>>>> #62   0x00000001089e16ab in main at 
>>>> /Volumes/Lachesis/Software/lldb-svn/lldb/tools/driver/Driver.cpp:1251
>>>> #63   0x00000001089d9da4 in start ()
>>>> –
>>>> Sean
>>>> 
>>>>> On Dec 9, 2014, at 3:04 PM, Zachary Turner <ztur...@google.com> wrote:
>>>>> 
>>>>> I filed the bug anyway, can't hurt to try reproducing on other platforms.
>>>>> 
>>>>> On Tue Dec 09 2014 at 2:56:24 PM Duncan P. N. Exon Smith 
>>>>> <dexonsm...@apple.com> wrote:
>>>>> Ah.  No :/.
>>>>> 
>>>>> 
>>>>>> On 2014 Dec 9, at 14:55, Zachary Turner <ztur...@google.com> wrote:
>>>>>> 
>>>>>> Do you have access to a Windows machien to test on?  I suspect it's 
>>>>>> going to require Windows to reproduce.
>>>>>> 
>>>>>> On Tue Dec 09 2014 at 2:54:44 PM Duncan P. N. Exon Smith 
>>>>>> <dexonsm...@apple.com> wrote:
>>>>>> Weird, it passed an LTO bootstrap for me.
>>>>>> 
>>>>>> Is it possible to file a PR with a testcase?  I'll look at it right
>>>>>> away.
>>>>>> 
>>>>>>> On 2014 Dec 9, at 14:50, Zachary Turner <ztur...@google.com> wrote:
>>>>>>> 
>>>>>>> Just an additional heads up that there may be some runtime issues with 
>>>>>>> the patch as well.
>>>>>>> 
>>>>>>> Running this command:
>>>>>>> d:\src\llvm\build\ninja\bin\clang++.exe -std=c++11 -g -O0 -m32   
>>>>>>> -Id:/src/llvm/tools/lldb/test/make/../../include -fno-exceptions 
>>>>>>> -include d:/src/llvm/tools/lldb/test/make/uncaught_exception.h 
>>>>>>> -D_HAS_EXCEPTIONS=0 -O0   -c -o main.o main.cpp
>>>>>>> 
>>>>>>> Results in this:
>>>>>>> 
>>>>>>> Stack dump:
>>>>>>> 0.      Program arguments: d:\src\llvm\build\ninja\bin\clang++.exe -cc1 
>>>>>>> -triple i686-pc-windows-msvc -emit-obj -mrelax-all -disable-free 
>>>>>>> -main-file-name main.cpp -mrelocation-model static -mthread-model posix 
>>>>>>> -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases 
>>>>>>> -target-cpu pentium4 -g
>>>>>>> -dwarf-column-info -coverage-file 
>>>>>>> d:\src\llvm\tools\lldb\test\functionalities\data-formatter\data-formatter-stl\libcxx\vbool\main.o
>>>>>>>  -resource-dir d:\src\llvm\build\ninja\bin\..\lib\clang\3.6.0 -include 
>>>>>>> d:/src/llvm/tools/lldb/test/make/uncaught_exception.h -D 
>>>>>>> _HAS_EXCEPTIONS=0 -I d:/src/llvm/tools/ll
>>>>>>> db/test/make/../../include -internal-isystem 
>>>>>>> d:\src\llvm\build\ninja\bin\..\lib\clang\3.6.0\include 
>>>>>>> -internal-isystem C:\Program Files (x86)\Microsoft Visual Studio 
>>>>>>> 12.0\VC\include -internal-isystem C:\Program Files (x86)\Windows 
>>>>>>> Kits\8.1\include\shared -internal-isystem C:\Program Files (x86)\Windo
>>>>>>> ws Kits\8.1\include\um -internal-isystem C:\Program Files (x86)\Windows 
>>>>>>> Kits\8.1\include\winrt -O0 -std=c++11 -fdeprecated-macro 
>>>>>>> -fdebug-compilation-dir 
>>>>>>> d:\src\llvm\tools\lldb\test\functionalities\data-formatter\data-formatter-stl\libcxx\vbool
>>>>>>>  -ferror-limit 19 -fmessage-length 300 -mstackrealign -fm
>>>>>>> s-extensions -fms-compatibility -fms-compatibility-version=17.00 
>>>>>>> -fdelayed-template-parsing -fobjc-runtime=gcc -fdiagnostics-show-option 
>>>>>>> -fcolor-diagnostics -o main.o -x c++ main.cpp
>>>>>>> 1.      <eof> parser at end of file
>>>>>>> 2.      Per-file LLVM IR generation
>>>>>>> 0x578AAA3B (0x07C903C4 0x07C903E4 0x07C903E4 0x05D8E590), 
>>>>>>> ??3@YAXPAX@Z() + 0xAB bytes(s)
>>>>>>> 0x01242744 (0x07C903E4 0x07C903E4 0x05D8E5AC 0x01242B8A), 
>>>>>>> llvm::MDNode::operator delete() + 0x34 bytes(s), 
>>>>>>> d:\src\llvm\lib\ir\metadata.cpp, line 388 + 0x14 byte(s)
>>>>>>> 0x0124D367 (0x00000001 0x00000000 0xCCCCCCCC 0x07C903E4), 
>>>>>>> llvm::MDNodeFwdDecl::`scalar deleting destructor'() + 0x27 bytes(s)
>>>>>>> 0x01242B8A (0x07C903E4 0x05D8E788 0x05D8E7FC 0xCCCCCCCC), 
>>>>>>> llvm::MDNode::deleteTemporary() + 0x8A bytes(s), 
>>>>>>> d:\src\llvm\lib\ir\metadata.cpp, line 591 + 0x25 byte(s)
>>>>>>> 0x01148933 (0x06150E78 0x07C903E4 0x05D8E7E4 0x05D8E7FC), 
>>>>>>> llvm::DIDescriptor::replaceAllUsesWith() + 0x123 bytes(s), 
>>>>>>> d:\src\llvm\lib\ir\debuginfo.cpp, line 342 + 0x9 byte(s)
>>>>>>> 0x01C824B7 (0x05D8E848 0x05D8E7FC 0xCCCCCCCC 0xCCCCCCCC), 
>>>>>>> clang::CodeGen::CGDebugInfo::finalize() + 0x2A7 bytes(s), 
>>>>>>> d:\src\llvm\tools\clang\lib\codegen\cgdebuginfo.cpp, line 3390
>>>>>>> 0x01C112BB (0x0618BE90 0x05D8E848 0x01BEFB40 0x0617DDE0), 
>>>>>>> clang::CodeGen::CodeGenModule::Release() + 0x3CB bytes(s), 
>>>>>>> d:\src\llvm\tools\clang\lib\codegen\codegenmodule.cpp, line 415
>>>>>>> 0x01C0E576 (0x0617DDE0 0x05D8E8D0 0x05D8E854 0xCCCCCCCC), `anonymous 
>>>>>>> namespace'::CodeGeneratorImpl::HandleTranslationUnit() + 0x86 bytes(s), 
>>>>>>> d:\src\llvm\tools\clang\lib\codegen\modulebuilder.cpp, line 198
>>>>>>> 0x01BEFB40 (0x0617DDE0 0x05D8EAD0 0x05D8E8E0 0x061B8890), 
>>>>>>> clang::BackendConsumer::HandleTranslationUnit() + 0x60 bytes(s), 
>>>>>>> d:\src\llvm\tools\clang\lib\codegen\codegenaction.cpp, line 131 + 0x21 
>>>>>>> byte(s)
>>>>>>> 0x025B1717 (0x061A2460 0x00000000 0x00000000 0x05D8EAD8), 
>>>>>>> clang::ParseAST() + 0x237 bytes(s), 
>>>>>>> d:\src\llvm\tools\clang\lib\parse\parseast.cpp, line 154 + 0x18 byte(s)
>>>>>>> 0x018BF641 (0x05D8EB54 0x05D8EAD8 0xCCCCCCCC 0xCCCCCCCC), 
>>>>>>> clang::ASTFrontendAction::ExecuteAction() + 0x101 bytes(s), 
>>>>>>> d:\src\llvm\tools\clang\lib\frontend\frontendaction.cpp, line 527 + 
>>>>>>> 0x30 byte(s)
>>>>>>> 0x01BEC33F (0x05D8EB00 0xCCCCCCCC 0xCCCCCCCC 0xCCCCCCCC), 
>>>>>>> clang::CodeGenAction::ExecuteAction() + 0x3CF bytes(s), 
>>>>>>> d:\src\llvm\tools\clang\lib\codegen\codegenaction.cpp, line 729
>>>>>>> 0x018BF22E (0x05D8EBF8 0x00000000 0xCCCCCCCC 0xCCCCCCCC), 
>>>>>>> clang::FrontendAction::Execute() + 0x7E bytes(s), 
>>>>>>> d:\src\llvm\tools\clang\lib\frontend\frontendaction.cpp, line 428 + 0xF 
>>>>>>> byte(s)
>>>>>>> 0x0187A821 (0x06158390 0x05D8F100 0x00000000 0xCCCCCCCC), 
>>>>>>> clang::CompilerInstance::ExecuteAction() + 0x2A1 bytes(s), 
>>>>>>> d:\src\llvm\tools\clang\lib\frontend\compilerinstance.cpp, line 812
>>>>>>> 0x019CDDBE (0x06152A98 0x05D8FEC8 0xCCCCCCCC 0xCCCCCCCC), 
>>>>>>> clang::ExecuteCompilerInvocation() + 0x30E bytes(s), 
>>>>>>> d:\src\llvm\tools\clang\lib\frontendtool\executecompilerinvocation.cpp, 
>>>>>>> line 222 + 0x11 byte(s)
>>>>>>> 0x0041461F (0x05D8FAB0 0x0000003D 0x06155AD0 0x0035139D), cc1_main() + 
>>>>>>> 0x2FF bytes(s), d:\src\llvm\tools\clang\tools\driver\cc1_main.cpp, line 
>>>>>>> 110 + 0xE byte(s)
>>>>>>> 0x003FFC18 (0x05D8FAA8 0x0000003F 0x06155AFC 0x00000000), 
>>>>>>> ExecuteCC1Tool() + 0x78 bytes(s), 
>>>>>>> d:\src\llvm\tools\clang\tools\driver\driver.cpp, line 369 + 0x2B byte(s)
>>>>>>> 0x003FFFB5 (0x0000003F 0x061519E8 0x06145120 0x5DB515C0), main() + 
>>>>>>> 0x2F5 bytes(s), d:\src\llvm\tools\clang\tools\driver\driver.cpp, line 
>>>>>>> 415 + 0x33 byte(s)
>>>>>>> 0x034BDA89 (0x05D8FF2C 0x75CC919F 0x7EDD4000 0x05D8FF70), 
>>>>>>> __tmainCRTStartup() + 0x199 bytes(s), 
>>>>>>> f:\dd\vctools\crt\crtw32\dllstuff\crtexe.c, line 626 + 0x19 byte(s)
>>>>>>> 0x034BDBCD (0x7EDD4000 0x05D8FF70 0x77A40BBB 0x7EDD4000), 
>>>>>>> mainCRTStartup() + 0xD bytes(s), 
>>>>>>> f:\dd\vctools\crt\crtw32\dllstuff\crtexe.c, line 466
>>>>>>> 0x75CC919F (0x7EDD4000 0x2F016EAA 0x00000000 0x00000000), 
>>>>>>> BaseThreadInitThunk() + 0xE bytes(s)
>>>>>>> 0x77A40BBB (0xFFFFFFFF 0x77A2C9D1 0x00000000 0x00000000), 
>>>>>>> RtlInitializeExceptionChain() + 0x84 bytes(s)
>>>>>>> 0x77A40B91 (0x034BDBC0 0x7EDD4000 0x00000000 0x00000000), 
>>>>>>> RtlInitializeExceptionChain() + 0x5A bytes(s)
>>>>>>> ^C
>>>>>>> d:\src\llvm\tools\lldb\test\functionalities\data-formatter\data-formatter-stl\libcxx\vbool>
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> On Tue Dec 09 2014 at 2:41:09 PM Duncan P. N. Exon Smith 
>>>>>>> <dexonsm...@apple.com> wrote:
>>>>>>> Awesome, thanks for the help!
>>>>>>> 
>>>>>>>> On 2014 Dec 9, at 14:28, Zachary Turner <ztur...@google.com> wrote:
>>>>>>>> 
>>>>>>>> This fixes the issue.  I will check in your patch.  Thanks!
>>>>>>>> 
>>>>>>>> On Tue Dec 09 2014 at 2:20:02 PM Zachary Turner <ztur...@google.com> 
>>>>>>>> wrote:
>>>>>>>> Testing now.   I notice a few of the changes aren't actually required 
>>>>>>>> in order to fix compiler errors.  For example, this line:
>>>>>>>> 
>>>>>>>> -    ConstantInt *constant_int = 
>>>>>>>> dyn_cast<ConstantInt>(alloc_md->getOperand(0));
>>>>>>>> +    ConstantInt *constant_int = 
>>>>>>>> mdconst::dyn_extract<ConstantInt>(alloc_md->getOperand(0));
>>>>>>>> 
>>>>>>>> wasn't actually failing.  Not sure if that's important, but I'm using 
>>>>>>>> your fixed version anyway.
>>>>>>>> 
>>>>>>>> On Tue Dec 09 2014 at 2:11:08 PM Duncan P. N. Exon Smith 
>>>>>>>> <dexonsm...@apple.com> wrote:
>>>>>>>> Attaching a patch that should fix it.  Can you try compiling?
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> On 2014 Dec 9, at 14:03, Zachary Turner <ztur...@google.com> wrote:
>>>>>>>>> 
>>>>>>>>> Here's the 3 errors.
>>>>>>>>> 
>>>>>>>>> ..\..\tools\lldb\source\Expression\IRForTarget.cpp(413) : error 
>>>>>>>>> C2678: binary '!=' : no operator found which takes a left-hand 
>>>>>>>>> operand of type 'const llvm::MDOperand' (or there is no acceptable 
>>>>>>>>> conversion)
>>>>>>>>>        d:\src\llvm\include\llvm/ADT/APSInt.h(291): could be 'bool 
>>>>>>>>> llvm::operator !=(int64_t,const llvm::APSInt &)'
>>>>>>>>>        d:\src\llvm\include\llvm/ADT/APInt.h(1724): or       'bool 
>>>>>>>>> llvm::operator !=(uint64_t,const llvm::APInt &)'
>>>>>>>>>        d:\src\llvm\include\llvm/ADT/StringRef.h(527): or       'bool 
>>>>>>>>> llvm::operator !=(llvm::StringRef,llvm::StringRef)'
>>>>>>>>>        while trying to match the argument list '(const 
>>>>>>>>> llvm::MDOperand, const llvm::GlobalValue *)'
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> ..\..\tools\lldb\source\Expression\IRForTarget.cpp(647) : error 
>>>>>>>>> C2664: 'llvm::MDNode *llvm::MDNode::get(llvm::LLVMContext 
>>>>>>>>> &,llvm::ArrayRef<llvm::Metadata *>)' : cannot convert argument 2 from 
>>>>>>>>> 'llvm::ArrayRef<llvm::Value *>' to 'llvm::ArrayRef<llvm::Metadata *>'
>>>>>>>>>        No user-defined-conversion operator available that can perform 
>>>>>>>>> this conversion, or the operator cannot be called
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> ..\..\tools\lldb\source\Expression\IRForTarget.cpp(1254) : error 
>>>>>>>>> C2664: 'llvm::MDNode *llvm::MDNode::get(llvm::LLVMContext 
>>>>>>>>> &,llvm::ArrayRef<llvm::Metadata *>)' : cannot convert argument 2 from 
>>>>>>>>> 'llvm::ArrayRef<llvm::Value *>' to 'llvm::ArrayRef<llvm::Metadata *>'
>>>>>>>>>        No user-defined-conversion operator available that can perform 
>>>>>>>>> this conversion, or the operator cannot be called
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> On Tue Dec 09 2014 at 1:56:03 PM Zachary Turner <ztur...@google.com> 
>>>>>>>>> wrote:
>>>>>>>>> I'm not sure what the status of building LLDB with CMake is, but the 
>>>>>>>>> normal way apple people build LLDB is to structure the directory like 
>>>>>>>>> this:
>>>>>>>>> 
>>>>>>>>> lldb
>>>>>>>>> --llvm
>>>>>>>>> ----tools
>>>>>>>>> ------clang
>>>>>>>>> 
>>>>>>>>> Then open the xcode workspace and build the lldb-tool target.
>>>>>>>>> 
>>>>>>>>> I'll sync to ToT again though so that I can get you a dump of the 
>>>>>>>>> compiler errors I'm seeing.
>>>>>>>>> 
>>>>>>>>> On Tue Dec 09 2014 at 1:52:40 PM Duncan P. N. Exon Smith 
>>>>>>>>> <dexonsm...@apple.com> wrote:
>>>>>>>>> I'm trying to build lldb now, but it's hung trying to build LLVM and
>>>>>>>>> clang... but I already built these?  I don't really understand.
>>>>>>>>> 
>>>>>>>>> Is there any way to make lldb point to my LLVM checkout?  I just want 
>>>>>>>>> to
>>>>>>>>> see the compiler errors so I can fix them :(.
>>>>>>>>> 
>>>>>>>>> Alternatively, if some can email me a compile log with all the errors
>>>>>>>>> (can you do a `make -k` or something?) I can send you a patch... this 
>>>>>>>>> is
>>>>>>>>> mechanical to update, but I need the compiler to tell me what's wrong.
>>>>>>>>> 
>>>>>>>>> I expect the fixes to all be along these lines:
>>>>>>>>> 
>>>>>>>>> - Value *Ops[] => Metadata *Ops[]
>>>>>>>>> 
>>>>>>>>> - cast<ConstantInt>(N->getOperand(0)) =>
>>>>>>>>>   mdconst::extract<ConstantInt>(N->getOperand(0))
>>>>>>>>> 
>>>>>>>>> - Value *Op = ConstantInt::get(...) =>
>>>>>>>>>   Metadata *Op = ConstantAsMetadata::get(ConstantInt::get(...))
>>>>>>>>> 
>>>>>>>>> Sorry for the breakage :(.
>>>>>>>>> 
>>>>>>>>>> On 2014 Dec 9, at 13:41, Zachary Turner <ztur...@google.com> wrote:
>>>>>>>>>> 
>>>>>>>>>> If you sync llvm past git revision 
>>>>>>>>>> db7b69e3a634c5fdff0eceeee2a41ee49c3270a2 (svn r223802), your LLDB 
>>>>>>>>>> build will be broken.
>>>>>>>>>> 
>>>>>>>>>> I was able to fix one of the errors, but this isn't really my area 
>>>>>>>>>> of expertise, so I stopped when I realized I didn't know what I was 
>>>>>>>>>> doing.
>>>>>>>>>> 
>>>>>>>>>> Just a warning not to sync LLVM until this is fixed.  I've CC'ed 
>>>>>>>>>> Sean and Duncan as they are probably the best people to fix this, 
>>>>>>>>>> but if anyone else knows how to fix it, feel free.
>>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> 


_______________________________________________
lldb-dev mailing list
lldb-dev@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

Reply via email to