[llvm-bugs] [Bug 43945] New: Loop Vectorization pass segfaults.

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Nov 8 09:02:28 PST 2019


https://bugs.llvm.org/show_bug.cgi?id=43945

            Bug ID: 43945
           Summary: Loop Vectorization pass segfaults.
           Product: tools
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: opt
          Assignee: unassignedbugs at nondot.org
          Reporter: amy.zhuang at intel.com
                CC: llvm-bugs at lists.llvm.org

Clang-10 crashed when compiling mkldnn.

Stack dump:
0.      Program arguments: /usr/lib/llvm-10/bin/clang -cc1 -triple
x86_64-pc-linux-gnu -emit-obj -disable-free -disable-llvm-verifier
-discard-value-names -main-file-name pooling.cpp -mrelocation-model pic
-pic-level 2 -mthread-model posix -mframe-pointer=none -fmath-errno
-masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array
-target-cpu x86-64 -target-feature +sse4.1 -dwarf-column-info
-debugger-tuning=gdb -resource-dir /usr/lib/llvm-10/lib/clang/10.0.0 -D
DNNL_DLL -D DNNL_DLL_EXPORTS -D __STDC_CONSTANT_MACROS -D __STDC_LIMIT_MACROS
-I /amy/mkl-dnn/include -I /amy/mkl-dnn/build/include -I /amy/mkl-dnn/src -I
/amy/mkl-dnn/src/common -D NDEBUG -D _FORTIFY_SOURCE=2 -internal-isystem
/usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8
-internal-isystem
/usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/x86_64-linux-gnu/c++/8
-internal-isystem
/usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/x86_64-linux-gnu/c++/8
-internal-isystem
/usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/backward
-internal-isystem /usr/local/include -internal-isystem
/usr/lib/llvm-10/lib/clang/10.0.0/include -internal-externc-isystem
/usr/include/x86_64-linux-gnu -internal-externc-isystem /include
-internal-externc-isystem /usr/include -O3 -Wall -Wno-unknown-pragmas -Wformat
-Wformat-security -Wno-pass-failed -std=c++11 -fdeprecated-macro
-fdebug-compilation-dir /amy/mkl-dnn/build/src/common -ferror-limit 19
-fmessage-length 0 -fvisibility internal -fvisibility-inlines-hidden -fopenmp
-stack-protector 3 -fgnuc-version=4.2.1 -fobjc-runtime=gcc -fcxx-exceptions
-fexceptions -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops
-vectorize-slp -faddrsig -o CMakeFiles/dnnl_common.dir/pooling.cpp.o -x c++
/amy/mkl-dnn/src/common/pooling.cpp
1.      <eof> parser at end of file
2.      Per-module optimization passes
3.      Running pass 'Function Pass Manager' on module
'/amy/mkl-dnn/src/common/pooling.cpp'.
4.      Running pass 'Loop Vectorization' on function
'@_ZN12_GLOBAL__N_117pooling_desc_initEP19dnnl_pooling_desc_t16dnnl_prop_kind_t15dnnl_alg_kind_tPK18dnnl_memory_desc_tS6_PKlS8_S8_S8_'
 #0 0x00007f58b11050ff llvm::sys::PrintStackTrace(llvm::raw_ostream&)
(/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0xaff0ff)
 #1 0x00007f58b1102d80 llvm::sys::RunSignalHandlers()
(/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0xafcd80)
 #2 0x00007f58b1105501 (/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0xaff501)
 #3 0x00007f58b82bd730 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x12730)
 #4 0x00007f58b20595c7
llvm::LoopVectorizationPlanner::buildVPlanWithVPRecipes(llvm::VFRange&,
llvm::SmallPtrSetImpl<llvm::Value*>&,
llvm::SmallPtrSetImpl<llvm::Instruction*>&)
(/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0x1a535c7)
 #5 0x00007f58b205428f
llvm::LoopVectorizationPlanner::buildVPlansWithVPRecipes(unsigned int, unsigned
int) (/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0x1a4e28f)
 #6 0x00007f58b20537b2 llvm::LoopVectorizationPlanner::plan(unsigned int)
(/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0x1a4d7b2)
 #7 0x00007f58b205c88f llvm::LoopVectorizePass::processLoop(llvm::Loop*)
(/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0x1a5688f)
 #8 0x00007f58b205f379 llvm::LoopVectorizePass::runImpl(llvm::Function&,
llvm::ScalarEvolution&, llvm::LoopInfo&, llvm::TargetTransformInfo&,
llvm::DominatorTree&, llvm::BlockFrequencyInfo&, llvm::TargetLibraryInfo*,
llvm::DemandedBits&, llvm::AAResults&, llvm::AssumptionCache&,
std::function<llvm::LoopAccessInfo const& (llvm::Loop&)>&,
llvm::OptimizationRemarkEmitter&, llvm::ProfileSummaryInfo*)
(/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0x1a59379)
 #9 0x00007f58b2061ddd (/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0x1a5bddd)
#10 0x00007f58b1246206 llvm::FPPassManager::runOnFunction(llvm::Function&)
(/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0xc40206)
#11 0x00007f58b1246643 llvm::FPPassManager::runOnModule(llvm::Module&)
(/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0xc40643)
#12 0x00007f58b1246ba5 llvm::legacy::PassManagerImpl::run(llvm::Module&)
(/usr/lib/x86_64-linux-gnu/libLLVM-10.so.1+0xc40ba5)
#13 0x00007f58b6a87f21 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/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x15fdf21)
#14 0x00007f58b6d21240 (/usr/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x1897240)
#15 0x00007f58b5c1cda5 clang::ParseAST(clang::Sema&, bool, bool)
(/usr/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x792da5)
#16 0x00007f58b765d876 clang::FrontendAction::Execute()
(/usr/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x21d3876)
#17 0x00007f58b7617d50
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&)
(/usr/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x218dd50)
#18 0x00007f58b76d3c33
clang::ExecuteCompilerInvocation(clang::CompilerInstance*)
(/usr/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x2249c33)
#19 0x000000000049a7d4 cc1_main(llvm::ArrayRef<char const*>, char const*,
void*) (/usr/lib/llvm-10/bin/clang+0x49a7d4)
#20 0x0000000000498d8b main (/usr/lib/llvm-10/bin/clang+0x498d8b)
#21 0x00007f58b014609b __libc_start_main
(/lib/x86_64-linux-gnu/libc.so.6+0x2409b)
#22 0x0000000000495e0a _start (/usr/lib/llvm-10/bin/clang+0x495e0a)
clang: error: unable to execute command: Segmentation fault (core dumped)
clang: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 10.0.0-+20191104111429+bc728d58424-1~exp1~20191104105700.384
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/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: /tmp/pooling-c20592.cpp
clang: note: diagnostic msg: /tmp/pooling-c20592.sh
clang: note: diagnostic msg:


pooling-c20592.sh:
# Crash reproducer for clang version
10.0.0-+20191104111429+bc728d58424-1~exp1~20191104105700.384
# Driver args: "--driver-mode=g++" "-D" "DNNL_DLL" "-D" "DNNL_DLL_EXPORTS" "-D"
"__STDC_CONSTANT_MACROS" "-D" "__STDC_LIMIT_MACROS" "-I" "/amy/mkl-dnn/include"
"-I" "/amy/mkl-dnn/build/include" "-I" "/amy/mkl-dnn/src" "-I"
"/amy/mkl-dnn/src/common" "-std=c++11" "-fvisibility-inlines-hidden" "-Wall"
"-Wno-unknown-pragmas" "-fvisibility=internal" "-msse4.1" "-fPIC" "-Wformat"
"-Wformat-security" "-fstack-protector-all" "-fopenmp=libomp"
"-Wno-pass-failed" "-O3" "-D" "NDEBUG" "-D" "_FORTIFY_SOURCE=2" "-o"
"CMakeFiles/dnnl_common.dir/pooling.cpp.o" "-c"
"/amy/mkl-dnn/src/common/pooling.cpp"
# Original command:  "/usr/lib/llvm-10/bin/clang" "-cc1" "-triple"
"x86_64-pc-linux-gnu" "-emit-obj" "-disable-free" "-disable-llvm-verifier"
"-discard-value-names" "-main-file-name" "pooling.cpp" "-mrelocation-model"
"pic" "-pic-level" "2" "-mthread-model" "posix" "-mframe-pointer=none"
"-fmath-errno" "-masm-verbose" "-mconstructor-aliases" "-munwind-tables"
"-fuse-init-array" "-target-cpu" "x86-64" "-target-feature" "+sse4.1"
"-dwarf-column-info" "-debugger-tuning=gdb" "-resource-dir"
"/usr/lib/llvm-10/lib/clang/10.0.0" "-D" "DNNL_DLL" "-D" "DNNL_DLL_EXPORTS"
"-D" "__STDC_CONSTANT_MACROS" "-D" "__STDC_LIMIT_MACROS" "-I"
"/amy/mkl-dnn/include" "-I" "/amy/mkl-dnn/build/include" "-I"
"/amy/mkl-dnn/src" "-I" "/amy/mkl-dnn/src/common" "-D" "NDEBUG" "-D"
"_FORTIFY_SOURCE=2" "-internal-isystem"
"/usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8"
"-internal-isystem"
"/usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/x86_64-linux-gnu/c++/8"
"-internal-isystem"
"/usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/x86_64-linux-gnu/c++/8"
"-internal-isystem"
"/usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/backward"
"-internal-isystem" "/usr/local/include" "-internal-isystem"
"/usr/lib/llvm-10/lib/clang/10.0.0/include" "-internal-externc-isystem"
"/usr/include/x86_64-linux-gnu" "-internal-externc-isystem" "/include"
"-internal-externc-isystem" "/usr/include" "-O3" "-Wall" "-Wno-unknown-pragmas"
"-Wformat" "-Wformat-security" "-Wno-pass-failed" "-std=c++11"
"-fdeprecated-macro" "-fdebug-compilation-dir" "/amy/mkl-dnn/build/src/common"
"-ferror-limit" "19" "-fmessage-length" "0" "-fvisibility" "internal"
"-fvisibility-inlines-hidden" "-fopenmp" "-stack-protector" "3"
"-fgnuc-version=4.2.1" "-fobjc-runtime=gcc" "-fcxx-exceptions" "-fexceptions"
"-fdiagnostics-show-option" "-fcolor-diagnostics" "-vectorize-loops"
"-vectorize-slp" "-faddrsig" "-o" "CMakeFiles/dnnl_common.dir/pooling.cpp.o"
"-x" "c++" "/amy/mkl-dnn/src/common/pooling.cpp"
 "/usr/lib/llvm-10/bin/clang" "-cc1" "-triple" "x86_64-pc-linux-gnu"
"-emit-obj" "-disable-free" "-disable-llvm-verifier" "-discard-value-names"
"-main-file-name" "pooling.cpp" "-mrelocation-model" "pic" "-pic-level" "2"
"-mthread-model" "posix" "-mframe-pointer=none" "-fmath-errno" "-masm-verbose"
"-mconstructor-aliases" "-munwind-tables" "-fuse-init-array" "-target-cpu"
"x86-64" "-target-feature" "+sse4.1" "-dwarf-column-info"
"-debugger-tuning=gdb" "-D" "DNNL_DLL" "-D" "DNNL_DLL_EXPORTS" "-D"
"__STDC_CONSTANT_MACROS" "-D" "__STDC_LIMIT_MACROS" "-D" "NDEBUG" "-D"
"_FORTIFY_SOURCE=2" "-O3" "-Wall" "-Wno-unknown-pragmas" "-Wformat"
"-Wformat-security" "-Wno-pass-failed" "-std=c++11" "-fdeprecated-macro"
"-ferror-limit" "19" "-fmessage-length" "0" "-fvisibility" "internal"
"-fvisibility-inlines-hidden" "-fopenmp" "-stack-protector" "3"
"-fgnuc-version=4.2.1" "-fobjc-runtime=gcc" "-fcxx-exceptions" "-fexceptions"
"-fdiagnostics-show-option" "-fcolor-diagnostics" "-vectorize-loops"
"-vectorize-slp" "-faddrsig" "-x" "c++" "pooling-c20592.cpp"

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20191108/36b63a96/attachment.html>


More information about the llvm-bugs mailing list