Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

clang autoskeletonization segfault (clang segfault) with clang 7.0.0 #353

Closed
jpkenny opened this issue Jul 16, 2018 · 3 comments
Closed

Comments

@jpkenny
Copy link
Contributor

jpkenny commented Jul 16, 2018

Building lulesh-init.cc
SSTMAC_SKELETONIZE=1 SSTMAC_HEADERS=pwd/sstmac_headers
sst++ -DUSE_MPI=1 -Dsstmac_app_name=lulesh -O3 -c -I. -Wall -Wno-unknown-pragmas -fPIC -Wno-unused-function -Wno-unused-variable -Wno-uninitialized -o lulesh-init.o lulesh-init.cc
lulesh-init.cc:672:7: warning: if-stmt inside compute block has no prediction hint - assuming always false
lulesh-init.cc:680:7: warning: if-stmt inside compute block has no prediction hint - assuming always false
lulesh-init.cc:691:7: warning: if-stmt inside compute block has no prediction hint - assuming always false
lulesh-init.cc:699:7: warning: if-stmt inside compute block has no prediction hint - assuming always false
lulesh-init.cc:710:7: warning: if-stmt inside compute block has no prediction hint - assuming always false
lulesh-init.cc:718:7: warning: if-stmt inside compute block has no prediction hint - assuming always false
0 libLLVM.dylib 0x00000001083cad81 llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 37
1 libLLVM.dylib 0x00000001083ca476 llvm::sys::RunSignalHandlers() + 83
2 libLLVM.dylib 0x00000001083cb1f4 SignalHandler(int) + 193
3 libsystem_platform.dylib 0x00007fffa8611b3a _sigtramp + 26
4 libsystem_platform.dylib 0x0000000106054200 _sigtramp + 1571038944
5 libLLVM.dylib 0x0000000108d6ff72 llvm::slpvectorizer::BoUpSLP::buildTree(llvm::ArrayRefllvm::Value*, llvm::MapVector<llvm::Value*, llvm::SmallVector<llvm::Instruction*, 2u>, llvm::DenseMap<llvm::Value*, unsigned int, llvm::DenseMapInfollvm::Value*, llvm::detail::DenseMapPair<llvm::Value*, unsigned int> >, std::__1::vector<std::__1::pair<llvm::Value*, llvm::SmallVector<llvm::Instruction*, 2u> >, std::__1::allocator<std::__1::pair<llvm::Value*, llvm::SmallVector<llvm::Instruction*, 2u> > > > >&, llvm::ArrayRefllvm::Value*) + 70
6 libLLVM.dylib 0x0000000108d858d4 tryToVectorizeHorReductionOrInstOperands(llvm::PHINode*, llvm::Instruction*, llvm::BasicBlock*, llvm::slpvectorizer::BoUpSLP&, llvm::TargetTransformInfo*, llvm::function_ref<bool (llvm::Instruction*, llvm::slpvectorizer::BoUpSLP&)>) + 3131
7 libLLVM.dylib 0x0000000108d84c8a llvm::SLPVectorizerPass::vectorizeRootInstruction(llvm::PHINode*, llvm::Value*, llvm::BasicBlock*, llvm::slpvectorizer::BoUpSLP&, llvm::TargetTransformInfo*) + 128
8 libLLVM.dylib 0x0000000108d81d5f llvm::SLPVectorizerPass::vectorizeChainsInBlock(llvm::BasicBlock*, llvm::slpvectorizer::BoUpSLP&) + 2015
9 libLLVM.dylib 0x0000000108d80d29 llvm::SLPVectorizerPass::runImpl(llvm::Function&, llvm::ScalarEvolution*, llvm::TargetTransformInfo*, llvm::TargetLibraryInfo*, llvm::AAResults*, llvm::LoopInfo*, llvm::DominatorTree*, llvm::AssumptionCache*, llvm::DemandedBits*, llvm::OptimizationRemarkEmitter*) + 657
10 libLLVM.dylib 0x0000000108d8cdf4 (anonymous namespace)::SLPVectorizer::runOnFunction(llvm::Function&) + 260
11 libLLVM.dylib 0x0000000108497103 llvm::FPPassManager::runOnFunction(llvm::Function&) + 293
12 libLLVM.dylib 0x00000001084972bf llvm::FPPassManager::runOnModule(llvm::Module&) + 63
13 libLLVM.dylib 0x0000000108497606 llvm::legacy::PassManagerImpl::run(llvm::Module&) + 618
14 clang 0x0000000104488ce7 clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::DataLayout const&, llvm::Module*, clang::BackendAction, std::__1::unique_ptr<llvm::raw_pwrite_stream, std::__1::default_deletellvm::raw_pwrite_stream >) + 12737
15 clang 0x000000010462eca5 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) + 907
16 clang 0x0000000104bbf3e1 clang::ParseAST(clang::Sema&, bool, bool) + 437
17 clang 0x00000001047dd51e clang::FrontendAction::Execute() + 76
18 clang 0x00000001047aa8ba clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 892
19 clang 0x0000000104811676 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 1305
20 clang 0x000000010441e9ae cc1_main(llvm::ArrayRef<char const*>, char const*, void*) + 1298
21 clang 0x000000010441d728 main + 8078
22 libdyld.dylib 0x00007fffa8402235 start + 1
Stack dump:
0. Program arguments: /opt/local/libexec/llvm-devel/bin/clang -cc1 -triple x86_64-apple-macosx10.12.0 -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -emit-obj -disable-free -main-file-name sst.pp.lulesh-init.cc -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -masm-verbose -munwind-tables -faligned-alloc-unavailable -target-cpu penryn -dwarf-column-info -debugger-tuning=lldb -target-linker-version 274.2 -coverage-notes-file /Users/jpkenny/src/sst-macro-devel.build/tests/skeletons/lulesh2.0.3/tmp.lulesh-init.gcno -resource-dir /opt/local/libexec/llvm-devel/lib/clang/7.0.0 -O3 -Wall -Wno-unknown-pragmas -Wno-unused-function -Wno-unused-variable -Wno-uninitialized -fdeprecated-macro -fdebug-compilation-dir /Users/jpkenny/src/sst-macro-devel.build/tests/skeletons/lulesh2.0.3 -ferror-limit 19 -fmessage-length 168 -stack-protector 1 -fblocks -fencode-extended-block-signature -fobjc-runtime=macosx-10.12.0 -fcxx-exceptions -fexceptions -fmax-type-align=16 -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-slp -o tmp.lulesh-init.o -x c++-cpp-output /var/folders/gm/d8sqb8657v386pwgxl3_7z4m0000gp/T/sst-8f925a.ii

  1. parser at end of file
  2. Per-module optimization passes
  3. Running pass 'Function Pass Manager' on module 'sst.pp.lulesh-init.cc'.
  4. Running pass 'SLP Vectorizer' on function '@_ZN6Domain16SetupCommBuffersEi'
    clang: error: unable to execute command: Segmentation fault: 11
    clang: error: clang frontend command failed due to signal (use -v to see invocation)
    clang version 7.0.0 (trunk 329027)
    Target: x86_64-apple-darwin16.7.0
    Thread model: posix
    InstalledDir: /opt/local/libexec/llvm-devel/bin
    clang: note: diagnostic msg: PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script.
    clang: note: diagnostic msg:

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang: note: diagnostic msg: /var/folders/gm/d8sqb8657v386pwgxl3_7z4m0000gp/T/sst-3d102c.cpp
clang: note: diagnostic msg: /var/folders/gm/d8sqb8657v386pwgxl3_7z4m0000gp/T/sst-3d102c.sh
clang: note: diagnostic msg: Crash backtrace is located in
clang: note: diagnostic msg: /Users/jpkenny/Library/Logs/DiagnosticReports/clang__.crash
clang: note: diagnostic msg: (choose the .crash file that corresponds to your crash)
clang: note: diagnostic msg:


make[3]: *** [lulesh-init.o] Error 1
make[2]: *** [lulesh2.0.3] Error 2
make[1]: *** [installcheck-recursive] Error 1
make: *** [installcheck-recursive] Error 1

@jpkenny
Copy link
Contributor Author

jpkenny commented Jul 16, 2018

$ /opt/local/bin/clang --version
clang version 7.0.0 (trunk 329027)
Target: x86_64-apple-darwin16.7.0
Thread model: posix
InstalledDir: /opt/local/libexec/llvm-devel/bin

using macports clang, clang-devel, llvm-devel

@jpkenny
Copy link
Contributor Author

jpkenny commented Jul 18, 2018

On MacOS 10.12.6 make check/installcheck passes with the following ports installed:
llvm-5.0 @5.0.2_0 (active)
llvm-6.0 @6.0.0_0 (active)
llvm-devel @devel-r329027_0+assertions (active)
clang-6.0 @6.0.0_0+analyzer+libstdcxx (active)
clang-devel @devel-r329027_0+analyzer+assertions+libstdcxx (active)

The llvm and clang ports are actually subports within the same portfiles. It's unclear to me what the actual minimum set of working ports are. Other ports bring some of this stuff in (e.g. I believe llvm-5.0 is brought in by a gcc port).

@jjwilke
Copy link
Contributor

jjwilke commented Mar 17, 2020

This hasn't been an issue in any recent tests. Related to issue #410 and #477, we need to be doing weekly (or nightly) tests of several different combinations of compilers.

@jjwilke jjwilke closed this as completed Mar 17, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants