llvm-7.0.0rc2: Segmentation fault with a certain combination of options

Hi,

today I've installed llvm-7.0.0rc2. Unfortunately, I still get the error that
I've reported in Bug 38073 and for llvm-7.0.0rc1 (I'm still waiting for an
approval or disapproval from the llvm-bugs list moderator). Therefore, I try
this list today.

loki introduction 108 clang -v
clang version 7.0.0 (tags/RELEASE_700/rc2 340514)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/local/llvm-7.0.0/bin
Found candidate GCC installation: /usr/lib64/gcc/x86_64-suse-linux/4.8
Selected GCC installation: /usr/lib64/gcc/x86_64-suse-linux/4.8
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Selected multilib: .;@m64
Found CUDA installation: /usr/local/cuda-9.0, version 9.0
loki introduction 109

The problem occurs with a certain combination of options (-mllvm -polly-parallel
-mllvm -polly-vectorizer=stripmine). I didn't get the error with llvm-6.0.0.

loki introduction 109 \clang -m64 -std=c11 -O2 -mllvm -polly-vectorizer=stripmine mat_mult_block_ikj.c -lomp -lm

loki introduction 110 \clang -m64 -std=c11 -O2 -mllvm -polly -mllvm -polly-vectorizer=stripmine mat_mult_block_ikj.c -lomp -lm

loki introduction 111 \clang -m64 -std=c11 -O2 -mllvm -polly -mllvm -polly-parallel mat_mult_block_ikj.c -lomp -lm

loki introduction 112 \clang -m64 -std=c11 -O2 -mllvm -polly -mllvm -polly-parallel -mllvm -polly-vectorizer=stripmine mat_mult_block_ikj.c -lomp -lm
Stack dump:
0. Program arguments: /usr/local/llvm-7.0.0/bin/clang-7 -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -disable-free -disable-llvm-verifier -discard-value-names -main-file-name mat_mult_block_ikj.c -mrelocation-model static -mthread-model posix -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -momit-leaf-frame-pointer -resource-dir /usr/local/llvm-7.0.0/lib64/clang/7.0.0 -I/usr/local/intel_xe_2019beta/compilers_and_libraries_2019.0.070/linux/ipp/include -I/usr/local/intel_xe_2019beta/compilers_and_libraries_2019.0.070/linux/mkl/include -I/usr/local/intel_xe_2019beta/compilers_and_libraries_2019.0.070/linux/pstl/include -I/usr/local/intel_xe_2019beta/compilers_and_libraries_2019.0.070/linux/tbb/include -I/usr/local/intel_xe_2019beta/compilers_and_libraries_2019.0.070/linux/tbb/include -I/usr/local/intel_xe_2019beta/compilers_and_libraries_2019.0.070/linux/daal/include -c-isystem /usr/local/valgrind-3.12.0/include -c-isystem /usr/local/llvm-7.0.0/include -c-isystem /usr/local/include -c-isystem /usr/include -c-isystem /usr/local/cuda-9.0/include -c-isystem /usr/local/hwloc-2.0.1/include -c-isystem /home/fd1026/Linux/x86_64/include -internal-isystem /usr/local/include -internal-isystem /usr/local/llvm-7.0.0/lib64/clang/7.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -O2 -std=c11 -fdebug-compilation-dir /home/fd1026/work/skripte/master/parallel/prog/introduction -ferror-limit 19 -fmessage-length 100 -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-slp -mllvm -polly -mllvm -polly-parallel -mllvm -polly-vectorizer=stripmine -o /tmp/mat_mult_block_ikj-e025b7.o -x c mat_mult_block_ikj.c -faddrsig
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module 'mat_mult_block_ikj.c'.
4. Running pass 'Live Variable Analysis' on function '@main_polly_subfn_polly_subfn'
#0 0x00007fceab261a8a llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/usr/local/llvm-7.0.0/lib64/libLLVMSupport.so.7+0x115a8a)
#1 0x00007fceab2600b5 llvm::sys::RunSignalHandlers() (/usr/local/llvm-7.0.0/lib64/libLLVMSupport.so.7+0x1140b5)
#2 0x00007fceab2601cc SignalHandler(int) (/usr/local/llvm-7.0.0/lib64/libLLVMSupport.so.7+0x1141cc)
#3 0x00007fceae64ac10 __restore_rt (/lib64/libpthread.so.0+0x10c10)
#4 0x00007fceaf31420e llvm::LiveVariables::HandleVirtRegUse(unsigned int, llvm::MachineBasicBlock*, llvm::MachineInstr&) (/usr/local/llvm-7.0.0/lib64/libLLVMCodeGen.so.7+0x1a120e)
#5 0x00007fceaf3147df llvm::LiveVariables::runOnInstr(llvm::MachineInstr&, llvm::SmallVectorImpl<unsigned int>&) (/usr/local/llvm-7.0.0/lib64/libLLVMCodeGen.so.7+0x1a17df)
#6 0x00007fceaf315123 llvm::LiveVariables::runOnBlock(llvm::MachineBasicBlock*, unsigned int) (/usr/local/llvm-7.0.0/lib64/libLLVMCodeGen.so.7+0x1a2123)
#7 0x00007fceaf317a40 llvm::LiveVariables::runOnMachineFunction(llvm::MachineFunction&) (/usr/local/llvm-7.0.0/lib64/libLLVMCodeGen.so.7+0x1a4a40)
#8 0x00007fceaf3756d1 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/usr/local/llvm-7.0.0/lib64/libLLVMCodeGen.so.7+0x2026d1)
#9 0x00007fceac5d7697 llvm::FPPassManager::runOnFunction(llvm::Function&) (/usr/local/llvm-7.0.0/lib64/libLLVMCore.so.7+0x180697)
#10 0x00007fceac5d7883 llvm::FPPassManager::runOnModule(llvm::Module&) (/usr/local/llvm-7.0.0/lib64/libLLVMCore.so.7+0x180883)
#11 0x00007fceac5d7f60 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/usr/local/llvm-7.0.0/lib64/libLLVMCore.so.7+0x180f60)
#12 0x00007fceadba649a clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::DataLayout const&, llvm::Module*, clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream> >) (/usr/local/llvm-7.0.0/lib64/libclangCodeGen.so.7+0xbf49a)
#13 0x00007fceaddbd6c4 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/usr/local/llvm-7.0.0/lib64/libclangCodeGen.so.7+0x2d66c4)
#14 0x00007fcea6382679 clang::ParseAST(clang::Sema&, bool, bool) (/usr/local/llvm-7.0.0/lib64/libclangParse.so.7+0x2f679)
#15 0x00007fceaddbca81 clang::CodeGenAction::ExecuteAction() (/usr/local/llvm-7.0.0/lib64/libclangCodeGen.so.7+0x2d5a81)
#16 0x00007fcead4a4a36 clang::FrontendAction::Execute() (/usr/local/llvm-7.0.0/lib64/libclangFrontend.so.7+0xc2a36)
#17 0x00007fcead4648d6 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/local/llvm-7.0.0/lib64/libclangFrontend.so.7+0x828d6)
#18 0x00007fcead1df509 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/usr/local/llvm-7.0.0/lib64/libclangFrontendTool.so.7+0x4509)
#19 0x00000000004124b8 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/local/llvm-7.0.0/bin/clang-7+0x4124b8)
#20 0x000000000040dfe1 main (/usr/local/llvm-7.0.0/bin/clang-7+0x40dfe1)
#21 0x00007fcea89e4725 __libc_start_main (/lib64/libc.so.6+0x20725)
#22 0x000000000040fbd9 _start /home/abuild/rpmbuild/BUILD/glibc-2.22/csu/../sysdeps/x86_64/start.S:121:0
clang-7: error: unable to execute command: Segmentation fault (core dumped)
clang-7: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 7.0.0 (tags/RELEASE_700/rc2 340514)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/local/llvm-7.0.0/bin
clang-7: 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-7: note: diagnostic msg:

mat_mult_block_ikj-548141.c (358 KB)

mat_mult_block_ikj-548141.sh (3.15 KB)

I've replied on the bug: https://bugs.llvm.org/show_bug.cgi?id=38073