[llvm] r223802 - IR: Split Metadata from Value

Duncan P. N. Exon Smith dexonsmith at apple.com
Thu Dec 11 13:00:49 PST 2014


> On 2014 Dec 11, at 12:08, İsmail Dönmez <ismail at donmez.ws> wrote:
> 
> Hi,
> 
> On Tue, Dec 9, 2014 at 8:38 PM, Duncan P. N. Exon Smith
> <dexonsmith at apple.com> wrote:
>> Author: dexonsmith
>> Date: Tue Dec  9 12:38:53 2014
>> New Revision: 223802
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=223802&view=rev
>> Log:
>> IR: Split Metadata from Value
> 
> Can you have a look at
> https://build.opensuse.org/package/live_build_log/home:namtrac:clang/llvm-clang-head/openSUSE_Factory/x86_64
> , this seems to be a regression due to this commit. stage2 compiler
> crashes:
> 
> FAILED: /home/abuild/rpmbuild/BUILD/llvm/stage1/bin/clang++
> -DCLANG_ENABLE_ARCMT -DCLANG_ENABLE_OBJC_REWRITER
> -DCLANG_ENABLE_STATIC_ANALYZER -D_DEBUG -D_GNU_SOURCE
> -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
> -stdlib=libc++ -fPIC -fvisibility-inlines-hidden -Wall -W
> -Wno-unused-parameter -Wwrite-strings -Wcast-qual
> -Wmissing-field-initializers -pedantic -Wno-long-long
> -Wcovered-switch-default -Wnon-virtual-dtor -Werror=date-time
> -std=c++11 -fcolor-diagnostics -ffunction-sections -fdata-sections
> -fno-common -Woverloaded-virtual -fno-strict-aliasing
> -Wno-nested-anon-types -O2 -g  -fPIC -Itools/clang/lib/AST
> -I../tools/clang/lib/AST -I../tools/clang/include
> -Itools/clang/include -Iinclude -I../include    -UNDEBUG
> -fno-exceptions -MMD -MT
> tools/clang/lib/AST/CMakeFiles/clangAST.dir/ItaniumMangle.cpp.o -MF
> tools/clang/lib/AST/CMakeFiles/clangAST.dir/ItaniumMangle.cpp.o.d -o
> tools/clang/lib/AST/CMakeFiles/clangAST.dir/ItaniumMangle.cpp.o -c
> ../tools/clang/lib/AST/ItaniumMangle.cpp
> 0  clang-3.6       0x0000000000d26718 llvm::sys::PrintStackTrace(_IO_FILE*) + 40
> 1  clang-3.6       0x0000000000d27b4b
> 2  libpthread.so.0 0x00007fa348013050
> 3  clang-3.6       0x0000000000ab3b74
> llvm::MetadataTracking::track(void*, llvm::Metadata&,
> llvm::PointerUnion<llvm::MetadataAsValue*, llvm::Metadata*>) + 4
> 4  clang-3.6       0x0000000000aaab54
> llvm::ReplaceableMetadataImpl::replaceAllUsesWith(llvm::Metadata*) +
> 564
> 5  clang-3.6       0x0000000000aab86e
> llvm::ValueAsMetadata::handleDeletion(llvm::Value*) + 174
> 6  clang-3.6       0x0000000000ac0f60 llvm::Value::~Value() + 48
> 7  clang-3.6       0x0000000000a97a59
> 8  clang-3.6       0x0000000000d29b53
> llvm::DeleteDeadBlock(llvm::BasicBlock*) + 211
> 9  clang-3.6       0x0000000000d363cc
> llvm::CloneAndPruneFunctionInto(llvm::Function*, llvm::Function
> const*, llvm::ValueMap<llvm::Value const*, llvm::WeakVH,
> llvm::ValueMapConfig<llvm::Value const*, llvm::sys::SmartMutex<false>
>>> &, bool, llvm::SmallVectorImpl<llvm::ReturnInst*>&, char const*,
> llvm::ClonedCodeInfo*, llvm::DataLayout const*, llvm::Instruction*) +
> 6348
> 10 clang-3.6       0x0000000000d3d38a
> llvm::InlineFunction(llvm::CallSite, llvm::InlineFunctionInfo&, bool)
> + 3130
> 11 clang-3.6       0x0000000000aff4cb
> llvm::Inliner::runOnSCC(llvm::CallGraphSCC&) + 2187
> 12 clang-3.6       0x000000000133b8fe
> 13 clang-3.6       0x0000000000aa276e
> llvm::legacy::PassManagerImpl::run(llvm::Module&) + 942
> 14 clang-3.6       0x00000000010e54b3
> clang::EmitBackendOutput(clang::DiagnosticsEngine&,
> clang::CodeGenOptions const&, clang::TargetOptions const&,
> clang::LangOptions const&, llvm::StringRef, llvm::Module*,
> clang::BackendAction, llvm::raw_ostream*) + 6739
> 15 clang-3.6       0x00000000010d9fed
> 16 clang-3.6       0x000000000138a693 clang::ParseAST(clang::Sema&,
> bool, bool) + 483
> 17 clang-3.6       0x0000000000ea4999 clang::FrontendAction::Execute() + 57
> 18 clang-3.6       0x0000000000e7ae73
> clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 803
> 19 clang-3.6       0x0000000000f16a3a
> clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 3242
> 20 clang-3.6       0x00000000006630eb cc1_main(llvm::ArrayRef<char
> const*>, char const*, void*) + 555
> 21 clang-3.6       0x000000000065f8d1 main + 1633
> 22 libc.so.6       0x00007fa347265b45 __libc_start_main + 245
> 23 clang-3.6       0x000000000065f15b

Sure, just file a PR with the crasher:

[ 2149s] PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
[ 2149s] Preprocessed source(s) and associated run script(s) are located at:
[ 2149s] clang-3.6: note: diagnostic msg: /tmp/ItaniumMangle-8371c0.cpp
[ 2149s] clang-3.6: note: diagnostic msg: /tmp/ItaniumMangle-8371c0.sh
[ 2149s] clang-3.6: note: diagnostic msg: 






More information about the llvm-commits mailing list