#51478 closed defect (wontfix)
clang-3.7 compiler bug
Reported by: | mouse07410 (Mouse) | Owned by: | jeremyhu (Jeremy Huddleston Sequoia) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.3.4 |
Keywords: | Cc: | larryv (Lawrence Velázquez) | |
Port: | clang-3.7 |
Description
This bug has been submitted to http://llvm.org/bugs (as the bug message requested), but I don't know whether it's the upstream problem, or the one with the port.
Here's the URL to llvm report: https://llvm.org/bugs/show_bug.cgi?id=27841
This is what I'm getting on the screen:
clang++-mp-3.7 -maes -mpclmul -mrdrnd -msse2 -mssse3 -msse4.1 -msse4.2 -std=c++11 -ffunction-sections -fdata-sections -O3 -fPIC -march=native -pipe -c integer.cpp Assertion failed: (BB->getTerminator()->getNumSuccessors() == 1 && "Should have a single succ!"), function SplitEdge, file /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.7/llvm-3.7/work/llvm-3.7.1.src/lib/Transforms/Utils/BasicBlockUtils.cpp, line 262. 0 libLLVM-3.7.dylib 0x000000010ee3a6bf llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 57 1 libLLVM-3.7.dylib 0x000000010ee3ad0e SignalHandler(int) + 231 2 libsystem_platform.dylib 0x00007fff92c6952a _sigtramp + 26 3 libsystem_platform.dylib 0x00007fa9738024e8 _sigtramp + 3770257368 4 libsystem_c.dylib 0x00007fff8c8af6e7 abort + 129 5 libsystem_c.dylib 0x00007fff8c876df8 basename + 0 6 libLLVM-3.7.dylib 0x000000010eeb2d23 llvm::SplitBlock(llvm::BasicBlock*, llvm::Instruction*, llvm::DominatorTree*, llvm::LoopInfo*) + 0 7 libLLVM-3.7.dylib 0x000000010ebb253d (anonymous namespace)::JumpThreading::DuplicateCondBranchOnPHIIntoPred(llvm::BasicBlock*, llvm::SmallVectorImpl<llvm::BasicBlock*> const&) + 981 8 libLLVM-3.7.dylib 0x000000010ebad752 (anonymous namespace)::JumpThreading::runOnFunction(llvm::Function&) + 4938 9 libLLVM-3.7.dylib 0x000000010e7258e5 llvm::FPPassManager::runOnFunction(llvm::Function&) + 297 10 libLLVM-3.7.dylib 0x000000010f09f74e (anonymous namespace)::CGPassManager::runOnModule(llvm::Module&) + 1230 11 libLLVM-3.7.dylib 0x000000010e725dc0 llvm::legacy::PassManagerImpl::run(llvm::Module&) + 628 12 clang 0x000000010c911a6d clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::raw_pwrite_stream*) + 6301 13 clang 0x000000010ca28d0c clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) + 510 14 clang 0x000000010ca9ee7a clang::ParseAST(clang::Sema&, bool, bool) + 393 15 clang 0x000000010c7c63cf clang::FrontendAction::Execute() + 71 16 clang 0x000000010c79eebb clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 553 17 clang 0x000000010c7726f6 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 3822 18 clang 0x000000010c76adcd cc1_main(llvm::ArrayRef<char const*>, char const*, void*) + 1389 19 clang 0x000000010c770e67 main + 8505 20 libdyld.dylib 0x00007fff90a385ad start + 1 21 libdyld.dylib 0x0000000000000086 start + 1868331738 Stack dump: 0. Program arguments: /opt/local/libexec/llvm-3.7/bin/clang -cc1 -triple x86_64-apple-macosx10.11.0 -emit-obj -disable-free -main-file-name integer.cpp -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -masm-verbose -munwind-tables -target-cpu ivybridge -target-feature -sse4a -target-feature -avx512bw -target-feature +cx16 -target-feature -tbm -target-feature -adx -target-feature -fma4 -target-feature -avx512vl -target-feature -prfchw -target-feature -bmi2 -target-feature -avx512pf -target-feature +fsgsbase -target-feature +avx -target-feature -avx512cd -target-feature -rtm -target-feature +popcnt -target-feature -fma -target-feature -bmi -target-feature -avx2 -target-feature -avx512er -target-feature +sse -target-feature -lzcnt -target-feature -avx512f -target-feature +f16c -target-feature +mmx -target-feature +cmov -target-feature -xop -target-feature -rdseed -target-feature -movbe -target-feature -hle -target-feature -sha -target-feature +sse3 -target-feature -avx512dq -target-feature +aes -target-feature +pclmul -target-feature +rdrnd -target-feature +sse2 -target-feature +ssse3 -target-feature +sse4.1 -target-feature +sse4.2 -target-linker-version 253.3 -dwarf-column-info -ffunction-sections -fdata-sections -coverage-file /Users/ur20980/src/cryptopp/integer.cpp -resource-dir /opt/local/libexec/llvm-3.7/bin/../lib/clang/3.7.1 -stdlib=libc++ -O3 -std=c++11 -fdeprecated-macro -fdebug-compilation-dir /Users/ur20980/src/cryptopp -ferror-limit 19 -fmessage-length 113 -stack-protector 1 -mstackrealign -fblocks -fobjc-runtime=macosx-10.11.0 -fencode-extended-block-signature -fcxx-exceptions -fexceptions -fmax-type-align=16 -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-slp -o integer.o -x c++ integer.cpp 1. <eof> parser at end of file 2. Per-module optimization passes 3. Running pass 'CallGraph Pass Manager' on module 'integer.cpp'. 4. Running pass 'Jump Threading' on function '@_ZN8CryptoPPrsERNSt3__113basic_istreamIcNS0_11char_traitsIcEEEERNS_7IntegerE' clang: error: unable to execute command: Abort trap: 6 clang: error: clang frontend command failed due to signal (use -v to see invocation) clang version 3.7.1 (tags/RELEASE_371/final) Target: x86_64-apple-darwin15.4.0 Thread model: posix clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ 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/c6/lnc_0m093ys8w16md_fm1mnxhtfnj8/T/integer-953212.cpp clang: note: diagnostic msg: /var/folders/c6/lnc_0m093ys8w16md_fm1mnxhtfnj8/T/integer-953212.sh clang: note: diagnostic msg: ******************** make: *** [integer.o] Error 254
Attached are the files it asked to submit, plus the complete crash report from Mac OS X.
Attachments (5)
Change History (22)
Changed 8 years ago by mouse07410 (Mouse)
Attachment: | integer-953212.sh added |
---|
Changed 8 years ago by mouse07410 (Mouse)
Attachment: | integer-953212.cpp added |
---|
Pre-processed source file
Changed 8 years ago by mouse07410 (Mouse)
Attachment: | clang_2016-05-23-132408_502401-mitll.crash added |
---|
complete Mac OS X crash report
comment:1 Changed 8 years ago by mouse07410 (Mouse)
This bug only manifests itself when the optimizer is turned on (e.g., "-O3").
comment:2 Changed 8 years ago by mf2k (Frank Schima)
Cc: | jeremyhu@… removed |
---|---|
Owner: | changed from macports-tickets@… to jeremyhu@… |
comment:3 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Resolution: | → wontfix |
---|---|
Status: | new → closed |
clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
Does it happen with newer versions? If so, file a bug upstream. If not and you want the change that addresses this issue cherry-picked into 3.7, please indicate which revision includes the fix.
comment:4 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Oh, I scrolled down to fast and missed the link to https://llvm.org/bugs/show_bug.cgi?id=27841 ... following along upstream.
comment:5 Changed 8 years ago by mouse07410 (Mouse)
Upstream people seem to ignore it - I see no reaction there. Since there is no stable new version yet - I cannot tell whether the issue persists there or not. :-(
comment:6 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Not sure what you mean by that. clang-3.8 is a newer stable version. Does the issue exist with clang-3.8?
comment:7 Changed 8 years ago by mouse07410 (Mouse)
I mean that 3.8-rNNNN is not a stable version in my view. And Macports does not host a stable version yet:
$ port info clang-3.8 clang-3.8 @3.8-r262722_1 (lang) . . . . .
Compare with clang-3.7:
$ port info clang-3.7 clang-3.7 @3.7.1_2 (lang) . . . . .
comment:8 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Well sorry for the confusion, but 3.8-r262722_1 is actually 3.8.0 plus a few additional patches that we wanted that didn't get into 3.8.0, so it's "more stable" than 3.8.0. Please test with 3.8.
comment:9 Changed 8 years ago by mouse07410 (Mouse)
Well, I tested with Macports clang-3.8 - and the result is the same:
/opt/local/bin/clang++-mp-3.8 -maes -mpclmul -mrdrnd -msse2 -mssse3 -msse4.2 -mtune=native -Os -Ofast -std=c++11 -ffunction-sections -fdata-sections -fPIC -march=native -pipe -c integer.cpp Assertion failed: (BB->getTerminator()->getNumSuccessors() == 1 && "Should have a single succ!"), function SplitEdge, file /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.8/llvm-3.8/work/release_38/lib/Transforms/Utils/BasicBlockUtils.cpp, line 261. 0 libLLVM.dylib 0x0000000104f0ebb0 llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 43 1 libLLVM.dylib 0x0000000104f0e509 llvm::sys::RunSignalHandlers() + 44 2 libLLVM.dylib 0x0000000104f0f011 SignalHandler(int) + 164 3 libsystem_platform.dylib 0x00007fff9523b52a _sigtramp + 26 4 libsystem_platform.dylib 0x00007fd763eb9780 _sigtramp + 3469206128 5 libsystem_c.dylib 0x00007fff8ee696e7 abort + 129 6 libsystem_c.dylib 0x00007fff8ee30df8 basename + 0 7 libLLVM.dylib 0x000000010542d4e6 llvm::SplitBlock(llvm::BasicBlock*, llvm::Instruction*, llvm::DominatorTree*, llvm::LoopInfo*) + 0 8 libLLVM.dylib 0x0000000105585f94 (anonymous namespace)::JumpThreading::DuplicateCondBranchOnPHIIntoPred(llvm::BasicBlock*, llvm::SmallVectorImpl<llvm::BasicBlock*> const&) + 948 9 libLLVM.dylib 0x0000000105582176 (anonymous namespace)::JumpThreading::ProcessBlock(llvm::BasicBlock*) + 7954 10 libLLVM.dylib 0x000000010557fdda (anonymous namespace)::JumpThreading::runOnFunction(llvm::Function&) + 1218 11 libLLVM.dylib 0x0000000105034965 llvm::FPPassManager::runOnFunction(llvm::Function&) + 297 12 libLLVM.dylib 0x0000000105716f48 (anonymous namespace)::CGPassManager::runOnModule(llvm::Module&) + 1230 13 libLLVM.dylib 0x0000000105034e4e llvm::legacy::PassManagerImpl::run(llvm::Module&) + 630 14 clang 0x0000000103afb71e clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::raw_pwrite_stream*) + 7820 15 clang 0x0000000103c2e736 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) + 520 16 clang 0x0000000103f24291 clang::ParseAST(clang::Sema&, bool, bool) + 506 17 clang 0x0000000103d863bf clang::FrontendAction::Execute() + 73 18 clang 0x0000000103d5af4a clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 758 19 clang 0x0000000103db3c82 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 3818 20 clang 0x0000000103a97d00 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) + 1394 21 clang 0x0000000103a96bff main + 8501 22 libdyld.dylib 0x00007fff95acb5ad start + 1 23 libdyld.dylib 0x0000000000000099 start + 1783843565 Stack dump: 0. Program arguments: /opt/local/libexec/llvm-3.8/bin/clang -cc1 -triple x86_64-apple-macosx10.11.0 -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -emit-obj -disable-free -main-file-name integer.cpp -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -menable-no-infs -menable-no-nans -menable-unsafe-fp-math -fno-signed-zeros -freciprocal-math -ffp-contract=fast -ffast-math -masm-verbose -munwind-tables -target-cpu haswell -target-feature -sse4a -target-feature -avx512bw -target-feature +cx16 -target-feature -tbm -target-feature +xsave -target-feature -fma4 -target-feature -avx512vl -target-feature -prfchw -target-feature +bmi2 -target-feature -adx -target-feature -xsavec -target-feature +fsgsbase -target-feature +avx -target-feature -avx512cd -target-feature -avx512pf -target-feature +rtm -target-feature +popcnt -target-feature +fma -target-feature +bmi -target-feature -xsaves -target-feature +sse4.1 -target-feature +avx2 -target-feature -avx512er -target-feature +sse -target-feature +lzcnt -target-feature -avx512f -target-feature +f16c -target-feature +mmx -target-feature -pku -target-feature +cmov -target-feature -xop -target-feature -rdseed -target-feature +movbe -target-feature +hle -target-feature +xsaveopt -target-feature -sha -target-feature +sse3 -target-feature -avx512dq -target-feature +aes -target-feature +pclmul -target-feature +rdrnd -target-feature +sse2 -target-feature +ssse3 -target-feature +sse4.2 -target-linker-version 264.3.102 -dwarf-column-info -debugger-tuning=lldb -ffunction-sections -fdata-sections -coverage-file /Users/uri/src/cryptopp/integer.cpp -resource-dir /opt/local/libexec/llvm-3.8/bin/../lib/clang/3.8.0 -stdlib=libc++ -Ofast -std=c++11 -fdeprecated-macro -fdebug-compilation-dir /Users/uri/src/cryptopp -ferror-limit 19 -fmessage-length 84 -stack-protector 1 -fblocks -fobjc-runtime=macosx-10.11.0 -fencode-extended-block-signature -fcxx-exceptions -fexceptions -fmax-type-align=16 -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-slp -o integer.o -x c++ integer.cpp 1. <eof> parser at end of file 2. Per-module optimization passes 3. Running pass 'CallGraph Pass Manager' on module 'integer.cpp'. 4. Running pass 'Jump Threading' on function '@_ZN8CryptoPPrsERNSt3__113basic_istreamIcNS0_11char_traitsIcEEEERNS_7IntegerE' clang: error: unable to execute command: Abort trap: 6 clang: error: clang frontend command failed due to signal (use -v to see invocation) clang version 3.8.0 (branches/release_38 262722) Target: x86_64-apple-darwin15.5.0 Thread model: posix InstalledDir: /opt/local/libexec/llvm-3.8/bin clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ 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/pd/mxn5kp_55jg23x7jjd10gtwm0000gn/T/integer-040d12.cpp clang: note: diagnostic msg: /var/folders/pd/mxn5kp_55jg23x7jjd10gtwm0000gn/T/integer-040d12.sh clang: note: diagnostic msg: ********************
On a side-note, could you please explain how the version name/number of this port changes? I recall seeing clang-3.7 @3.7-rXXXX, which then changed to clang-3.7 @3.7.1_2. Now clang-3.8 is @3.8-r262722_1. At what point would it become @3.8.1_x?
Changed 8 years ago by mouse07410 (Mouse)
Attachment: | clang38crash.zip added |
---|
integer-040d12.cpp and integer-040d12.sh
comment:10 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)
clang-3.8 will become @3.8.1 at some point after upstream actually releases 3.8.1. Right now, it is at an svn revision between 3.8.0 and 3.8.1 because 3.8.0 was not good enough for our needs.
comment:11 Changed 8 years ago by mouse07410 (Mouse)
Understood, thanks!
Is there any way to make the upstream folks look at this? Bug report was submitted, with no reaction whatsoever.
Also, I noticed there is clang-3.9 @3.9-r271348 - is that one considered stable too? I.e., does it make sense for me to try it?
comment:12 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Clang 3.9 is in development, but for the most part, clang development builds are pretty stable. I use them fairly regularly without any issues. If you want to give it a go, that would be a good data point.
comment:13 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)
I moved the upstream bug report to an appropriate component for the crash, so maybe it'll get the appropriate attention now as well.
comment:14 Changed 8 years ago by mouse07410 (Mouse)
Thanks, will try and report.
Another side-note: could you tell me why I don't see "+polly" any more on llvm-3.8 and llvm-3.9? Has it been cut off?
comment:15 Changed 8 years ago by mouse07410 (Mouse)
In case it matters - same bug in clang-3.9:
/opt/local/bin/clang++-mp-3.9 -maes -mpclmul -mrdrnd -msse2 -mssse3 -msse4.2 -mtune=native -Os -Ofast -std=c++11 -ffunction-sections -fdata-sections -fPIC -march=native -pipe -c integer.cpp Assertion failed: (BB->getTerminator()->getNumSuccessors() == 1 && "Should have a single succ!"), function SplitEdge, file /opt/local/var/macports/build/_opt_mports_dports_lang_llvm-3.9/llvm-3.9/work/trunk/lib/Transforms/Utils/BasicBlockUtils.cpp, line 235. Stack dump: 0. Program arguments: /opt/local/libexec/llvm-3.9/bin/clang -cc1 -triple x86_64-apple-macosx10.11.0 -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -emit-obj -disable-free -main-file-name integer.cpp -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -menable-no-infs -menable-no-nans -menable-unsafe-fp-math -fno-signed-zeros -freciprocal-math -ffp-contract=fast -ffast-math -masm-verbose -munwind-tables -target-cpu haswell -target-feature +cx16 -target-feature -tbm -target-feature -avx512ifma -target-feature -avx512dq -target-feature -fma4 -target-feature -prfchw -target-feature +bmi2 -target-feature -xsavec -target-feature +fsgsbase -target-feature +popcnt -target-feature -pcommit -target-feature -xsaves -target-feature -avx512er -target-feature -clwb -target-feature -avx512f -target-feature -pku -target-feature -smap -target-feature +mmx -target-feature -xop -target-feature -rdseed -target-feature +hle -target-feature -sse4a -target-feature -avx512bw -target-feature -clflushopt -target-feature +xsave -target-feature -avx512vl -target-feature +invpcid -target-feature -avx512cd -target-feature +avx -target-feature +rtm -target-feature +fma -target-feature +bmi -target-feature -mwaitx -target-feature +sse4.1 -target-feature +avx2 -target-feature +sse -target-feature +lzcnt -target-feature -prefetchwt1 -target-feature +f16c -target-feature -sgx -target-feature +cmov -target-feature -avx512vbmi -target-feature +movbe -target-feature +xsaveopt -target-feature -sha -target-feature -adx -target-feature -avx512pf -target-feature +sse3 -target-feature +aes -target-feature +pclmul -target-feature +rdrnd -target-feature +sse2 -target-feature +ssse3 -target-feature +sse4.2 -target-linker-version 253.9 -dwarf-column-info -debugger-tuning=lldb -ffunction-sections -fdata-sections -coverage-file /Users/uri/src/cryptopp-tmp/integer.cpp -resource-dir /opt/local/libexec/llvm-3.9/bin/../lib/clang/3.9.0 -stdlib=libc++ -Ofast -std=c++11 -fdeprecated-macro -fdebug-compilation-dir /Users/uri/src/cryptopp-tmp -ferror-limit 19 -fmessage-length 84 -stack-protector 1 -fblocks -fobjc-runtime=macosx-10.11.0 -fencode-extended-block-signature -fcxx-exceptions -fexceptions -fmax-type-align=16 -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-slp -o integer.o -x c++ integer.cpp 1. <eof> parser at end of file 2. Per-module optimization passes 3. Running pass 'CallGraph Pass Manager' on module 'integer.cpp'. 4. Running pass 'Jump Threading' on function '@_ZN8CryptoPPrsERNSt3__113basic_istreamIcNS0_11char_traitsIcEEEERNS_7IntegerE' clang: error: unable to execute command: Abort trap: 6 clang: error: clang frontend command failed due to signal (use -v to see invocation) clang version 3.9.0 (trunk 271348) Target: x86_64-apple-darwin15.5.0 Thread model: posix InstalledDir: /opt/local/libexec/llvm-3.9/bin clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ 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/pd/mxn5kp_55jg23x7jjd10gtwm0000gn/T/integer-fbe845.cpp clang: note: diagnostic msg: /var/folders/pd/mxn5kp_55jg23x7jjd10gtwm0000gn/T/integer-fbe845.sh clang: note: diagnostic msg: ********************
comment:16 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Polly is certainly still there:
$ port info llvm-3.9 llvm-3.9 @3.9-r271348 (lang) Sub-ports: clang-3.9 Variants: [+]assertions, [+]debug, ocaml, (+)polly, universal Description: The LLVM Core libraries provide a modern source- and target-independent optimizer, along with code generation support for many popular CPUs (as well as some less common ones!) These libraries are built around a well specified code representation known as the LLVM intermediate representation ("LLVM IR"). Homepage: http://llvm.org/ Fetch Dependencies: subversion Build Dependencies: cmake Library Dependencies: libedit, libffi, ncurses, zlib, libcxx Runtime Dependencies: perl5, llvm_select Platforms: darwin License: NCSA Maintainers: jeremyhu@macports.org, larryv@macports.org
comment:17 Changed 8 years ago by mouse07410 (Mouse)
Well, no reaction from the upstream community so far. My tests showed that this bug persists in clang-3.8 and 3.9.
associated run script