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.

Reply via email to