https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89919
Bug ID: 89919 Summary: internal compiler error when building MKL-DNN Product: gcc Version: 8.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: roman.s.dubtsov at intel dot com Target Milestone: --- Created attachment 46072 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46072&action=edit Reproducer (unpack before use) Disclaimer: I've built the gcc 8.3.0 (and gmp 6.1.2, mpc 1.1.0, mfpr 4.0.2) myself. The latter libraries were built using system's gcc 4.8.5. My system is RHEL 7.3. Here's full compiler output leading to the ICE: $ g++ -v -std=c++11 -fvisibility-inlines-hidden -Wall -Wno-unknown-pragmas -Werror -fvisibility=internal -march=native -mtune=native -fPIC -Wformat -Wformat-security -fstack-protector-strong -mtune=core-avx2 -march=core-avx2 -fopenmp -Wmissing-field-initializers -Wno-strict-overflow -O3 -c ref_rnn.ii Using built-in specs. COLLECT_GCC=g++ Target: x86_64-pc-linux-gnu Configured with: ../gcc-8.3.0/configure --prefix=/nfs/site/disks/hal9000/rsdubtso/work/tools/gcc/8.3.0 --with-gmp=/nfs/site/disks/hal9000/rsdubtso/work/tools/gmp/6.1.2 --with-mpfr=/nfs/site/disks/hal9000/rsdubtso/work/tools/mpfr/4.0.2 --with-mpc=/nfs/site/disks/hal9000/rsdubtso/work/tools/mpc/1.1.0 Thread model: posix gcc version 8.3.0 (GCC) COLLECT_GCC_OPTIONS='-v' '-std=c++11' '-fvisibility-inlines-hidden' '-Wall' '-Wno-unknown-pragmas' '-Werror' '-fvisibility=internal' '-march=native' '-mtune=native' '-fPIC' '-Wformat=1' '-Wformat-security' '-fstack-protector-strong' '-mtune=core-avx2' '-march=core-avx2' '-fopenmp' '-Wmissing-field-initializers' '-Wno-strict-overflow' '-O3' '-c' '-shared-libgcc' '-pthread' /nfs/site/disks/hal9000/rsdubtso/work/tools/gcc/8.3.0/libexec/gcc/x86_64-pc-linux-gnu/8.3.0/cc1plus -fpreprocessed ref_rnn.ii -march=broadwell -mmmx -mno-3dnow -msse -msse2 -msse3 -mssse3 -mno-sse4a -mcx16 -msahf -mmovbe -maes -mno-sha -mpclmul -mpopcnt -mabm -mno-lwp -mfma -mno-fma4 -mno-xop -mbmi -mno-sgx -mbmi2 -mno-pconfig -mno-wbnoinvd -mno-tbm -mavx -mavx2 -msse4.2 -msse4.1 -mlzcnt -mrtm -mhle -mrdrnd -mf16c -mfsgsbase -mrdseed -mprfchw -madx -mfxsr -mxsave -mxsaveopt -mno-avx512f -mno-avx512er -mno-avx512cd -mno-avx512pf -mno-prefetchwt1 -mno-clflushopt -mno-xsavec -mno-xsaves -mno-avx512dq -mno-avx512bw -mno-avx512vl -mno-avx512ifma -mno-avx512vbmi -mno-avx5124fmaps -mno-avx5124vnniw -mno-clwb -mno-mwaitx -mno-clzero -mno-pku -mno-rdpid -mno-gfni -mno-shstk -mno-avx512vbmi2 -mno-avx512vnni -mno-vaes -mno-vpclmulqdq -mno-avx512bitalg -mno-movdiri -mno-movdir64b --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=56320 -mtune=broadwell -quiet -dumpbase ref_rnn.ii -mtune=core-avx2 -march=core-avx2 -auxbase ref_rnn -O3 -Wall -Wno-unknown-pragmas -Werror -Wformat=1 -Wformat-security -Wmissing-field-initializers -Wno-strict-overflow -std=c++11 -version -fvisibility-inlines-hidden -fvisibility=internal -fPIC -fstack-protector-strong -fopenmp -o /tmp/ccYvBIFy.s GNU C++11 (GCC) version 8.3.0 (x86_64-pc-linux-gnu) compiled by GNU C version 8.3.0, GMP version 6.1.2, MPFR version 4.0.2, MPC version 1.1.0, isl version none GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 GNU C++11 (GCC) version 8.3.0 (x86_64-pc-linux-gnu) compiled by GNU C version 8.3.0, GMP version 6.1.2, MPFR version 4.0.2, MPC version 1.1.0, isl version none GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: 70d646653fc51eb1ee1071a26be406d8 /nfs/pdx/home/rsdubtso/work/ml/mkl-dnn/mkl-dnn/src/cpu/rnn/ref_rnn.cpp: In instantiation of ‘void mkldnn::impl::cpu::_ref_rnn_common_t<aprop, src_type, weights_type>::copy_init_iter(const mkldnn::impl::cpu::rnn_utils::rnn_conf_t&, mkldnn::impl::cpu::_ref_rnn_common_t<aprop, src_type, weights_type>::src_data_t*, float*, float*, const input_data_t*, const float*) const [with input_data_t = float; mkldnn_prop_kind_t aprop = (mkldnn_prop_kind_t)128; mkldnn_data_type_t src_type = (mkldnn_data_type_t)1; mkldnn_data_type_t weights_type = (mkldnn_data_type_t)1; mkldnn::impl::cpu::_ref_rnn_common_t<aprop, src_type, weights_type>::src_data_t = float]’: /nfs/pdx/home/rsdubtso/work/ml/mkl-dnn/mkl-dnn/src/cpu/rnn/ref_rnn.cpp:726:9: required from ‘void mkldnn::impl::cpu::_ref_rnn_common_t<aprop, src_type, weights_type>::execute_(const mkldnn::impl::exec_ctx_t&) const [with mkldnn_prop_kind_t aprop = (mkldnn_prop_kind_t)128; mkldnn_data_type_t src_type = (mkldnn_data_type_t)1; mkldnn_data_type_t weights_type = (mkldnn_data_type_t)1]’ /nfs/pdx/home/rsdubtso/work/ml/mkl-dnn/mkl-dnn/src/cpu/rnn/ref_rnn.cpp:763:17: required from here /nfs/pdx/home/rsdubtso/work/ml/mkl-dnn/mkl-dnn/src/cpu/rnn/ref_rnn.cpp:385:20: internal compiler error: in type_dependent_expression_p, at cp/pt.c:25191 parallel_nd(rnn.n_layer, rnn.n_dir, rnn.n_states, rnn.mb, ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [&](int lay, int dir, int state, int b) { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ array_copy(&(ws_diff_states( ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ lay, dir, state, rnn.n_iter, b, 0)), ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff_dst_iter_ ~~~~~~~~~~~~~~ + diff_dst_iter_d.blk_off( ~~~~~~~~~~~~~~~~~~~~~~~~~~ lay, dir, state, b), ~~~~~~~~~~~~~~~~~~~~ rnn.dic); ~~~~~~~~~ }); ~~ 0x58d918 type_dependent_expression_p(tree_node*) ../../gcc-8.3.0/gcc/cp/pt.c:25190 0x58d918 type_dependent_expression_p(tree_node*) ../../gcc-8.3.0/gcc/cp/pt.c:25029 0x6ab7c5 uses_template_parms(tree_node*) ../../gcc-8.3.0/gcc/cp/pt.c:10032 0x6b3eab tsubst_copy ../../gcc-8.3.0/gcc/cp/pt.c:15439 0x6bd700 tsubst_copy ../../gcc-8.3.0/gcc/cp/pt.c:18891 0x6bd700 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool, bool) ../../gcc-8.3.0/gcc/cp/pt.c:18891 0x6c61e3 tsubst_lambda_expr(tree_node*, tree_node*, int, tree_node*) ../../gcc-8.3.0/gcc/cp/pt.c:17591 0x6be6ef tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool, bool) ../../gcc-8.3.0/gcc/cp/pt.c:18971 0x6be1d1 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool, bool) ../../gcc-8.3.0/gcc/cp/pt.c:18313 0x6b17c2 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc-8.3.0/gcc/cp/pt.c:17446 0x6b15a5 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc-8.3.0/gcc/cp/pt.c:16644 0x6b0e18 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc-8.3.0/gcc/cp/pt.c:16630 0x6b0d03 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc-8.3.0/gcc/cp/pt.c:16930 0x6b2167 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc-8.3.0/gcc/cp/pt.c:16900 0x6b0e18 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc-8.3.0/gcc/cp/pt.c:16630 0x6b0d03 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc-8.3.0/gcc/cp/pt.c:16930 0x6af988 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc-8.3.0/gcc/cp/pt.c:16615 0x6af988 instantiate_decl(tree_node*, bool, bool) ../../gcc-8.3.0/gcc/cp/pt.c:24066 0x6cef73 instantiate_pending_templates(int) ../../gcc-8.3.0/gcc/cp/pt.c:24182 0x62eba8 c_parse_final_cleanups() ../../gcc-8.3.0/gcc/cp/decl2.c:4715 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.