https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102304
Bug ID: 102304 Summary: Internal compiler error: in gen_lowpart_general, rtlhooks.c: 57 Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: juergen.reuter at desy dot de Target Milestone: --- The compilation of gcc (using gcc-10.2.1 from Debian) fails with an Internal Compiler Error of .xgcc. I don't know whether this is an ICE problem inside gcc-10.2.1 or maybe a bootstrapping problem of the gcc trunk/master (v12). In any case, the problem didn't happen with the gcc trunk/master (v12) a week ago. This is the output: during RTL pass: expand In file included from /usr/src/gcc/libgcc/soft-fp/soft-fp.h:317, from /usr/src/gcc/libgcc/soft-fp/trunctfhf2.c:29: /usr/src/gcc/libgcc/soft-fp/trunctfhf2.c: In function '__trunctfhf2': /usr/src/gcc/libgcc/soft-fp/op-1.h:131:13: internal compiler error: in gen_lowpart_general, at rtlhooks.c:57 131 | (val) = _FP_PACK_RAW_1_flo.flt; \ | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ /usr/src/gcc/libgcc/soft-fp/half.h:146:7: note: in expansion of macro '_FP_PACK_RAW_1' 146 | _FP_PACK_RAW_1 (H, (val), X); \ | ^~~~~~~~~~~~~~ /usr/src/gcc/libgcc/soft-fp/trunctfhf2.c:48:3: note: in expansion of macro 'FP_PACK_SEMIRAW_H' 48 | FP_PACK_SEMIRAW_H (r, R); | ^~~~~~~~~~~~~~~~~ during RTL pass: expand In file included from /usr/src/gcc/libgcc/soft-fp/soft-fp.h:317, from /usr/src/gcc/libgcc/soft-fp/truncdfhf2.c:29: /usr/src/gcc/libgcc/soft-fp/truncdfhf2.c: In function '__truncdfhf2': /usr/src/gcc/libgcc/soft-fp/op-1.h:131:13: internal compiler error: in gen_lowpart_general, at rtlhooks.c:57 131 | (val) = _FP_PACK_RAW_1_flo.flt; \ | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ /usr/src/gcc/libgcc/soft-fp/half.h:146:7: note: in expansion of macro '_FP_PACK_RAW_1' 146 | _FP_PACK_RAW_1 (H, (val), X); \ | ^~~~~~~~~~~~~~ /usr/src/gcc/libgcc/soft-fp/truncdfhf2.c:48:3: note: in expansion of macro 'FP_PACK_SEMIRAW_H' 48 | FP_PACK_SEMIRAW_H (r, R); | ^~~~~~~~~~~~~~~~~ during RTL pass: expand In file included from /usr/src/gcc/libgcc/soft-fp/soft-fp.h:317, from /usr/src/gcc/libgcc/soft-fp/truncxfhf2.c:29: /usr/src/gcc/libgcc/soft-fp/truncxfhf2.c: In function '__truncxfhf2': /usr/src/gcc/libgcc/soft-fp/op-1.h:131:13: internal compiler error: in gen_lowpart_general, at rtlhooks.c:57 131 | (val) = _FP_PACK_RAW_1_flo.flt; \ | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ /usr/src/gcc/libgcc/soft-fp/half.h:146:7: note: in expansion of macro '_FP_PACK_RAW_1' 146 | _FP_PACK_RAW_1 (H, (val), X); \ | ^~~~~~~~~~~~~~ /usr/src/gcc/libgcc/soft-fp/truncxfhf2.c:48:3: note: in expansion of macro 'FP_PACK_SEMIRAW_H' 48 | FP_PACK_SEMIRAW_H (r, R); | ^~~~~~~~~~~~~~~~~ during RTL pass: expand In file included from /usr/src/gcc/libgcc/soft-fp/soft-fp.h:317, from /usr/src/gcc/libgcc/soft-fp/truncsfhf2.c:29: /usr/src/gcc/libgcc/soft-fp/truncsfhf2.c: In function '__truncsfhf2': /usr/src/gcc/libgcc/soft-fp/op-1.h:131:13: internal compiler error: in gen_lowpart_general, at rtlhooks.c:57 131 | (val) = _FP_PACK_RAW_1_flo.flt; \ | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ /usr/src/gcc/libgcc/soft-fp/half.h:146:7: note: in expansion of macro '_FP_PACK_RAW_1' 146 | _FP_PACK_RAW_1 (H, (val), X); \ | ^~~~~~~~~~~~~~ /usr/src/gcc/libgcc/soft-fp/truncsfhf2.c:44:3: note: in expansion of macro 'FP_PACK_SEMIRAW_H' 44 | FP_PACK_SEMIRAW_H (r, R); | ^~~~~~~~~~~~~~~~~ 0x12eea5d gen_lowpart_general(machine_mode, rtx_def*) /usr/src/gcc/gcc/rtlhooks.c:57 0xe06146 extract_bit_field_using_extv /usr/src/gcc/gcc/expmed.c:1581 0xe08a01 extract_integral_bit_field /usr/src/gcc/gcc/expmed.c:1993 0xe07ece extract_bit_field_1 /usr/src/gcc/gcc/expmed.c:1857 0xe0943b extract_bit_field(rtx_def*, poly_int<1u, unsigned long>, poly_int<1u, unsigned long>, int, rtx_def*, machine_mode, machine_mode, bool, rtx_def**) /usr/src/gcc/gcc/expmed.c:2129 0x12eea5d gen_lowpart_general(machine_mode, rtx_def*) /usr/src/gcc/gcc/rtlhooks.c:57 0x12eea5d gen_lowpart_general(machine_mode, rtx_def*) /usr/src/gcc/gcc/rtlhooks.c:57 0xe06146 extract_bit_field_using_extv /usr/src/gcc/gcc/expmed.c:1581 0xe49f54 expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /usr/src/gcc/gcc/expr.c:11413 0xe3d78e expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /usr/src/gcc/gcc/expr.c:8752 0xe08a01 extract_integral_bit_field /usr/src/gcc/gcc/expmed.c:1993 0xe07ece extract_bit_field_1 /usr/src/gcc/gcc/expmed.c:1857 0xe328bd store_expr(tree_node*, rtx_def*, int, bool, bool) /usr/src/gcc/gcc/expr.c:6103 0xe30dd9 expand_assignment(tree_node*, tree_node*, bool) /usr/src/gcc/gcc/expr.c:5835 0xe0943b extract_bit_field(rtx_def*, poly_int<1u, unsigned long>, poly_int<1u, unsigned long>, int, rtx_def*, machine_mode, machine_mode, bool, rtx_def**) /usr/src/gcc/gcc/expmed.c:2129 0x12eea5d gen_lowpart_general(machine_mode, rtx_def*) /usr/src/gcc/gcc/rtlhooks.c:57 0xe06146 extract_bit_field_using_extv /usr/src/gcc/gcc/expmed.c:1581 0xe08a01 extract_integral_bit_field /usr/src/gcc/gcc/expmed.c:1993 0xe07ece extract_bit_field_1 /usr/src/gcc/gcc/expmed.c:1857 0xe0943b extract_bit_field(rtx_def*, poly_int<1u, unsigned long>, poly_int<1u, unsigned long>, int, rtx_def*, machine_mode, machine_mode, bool, rtx_def**) /usr/src/gcc/gcc/expmed.c:2129 0xe06146 extract_bit_field_using_extv /usr/src/gcc/gcc/expmed.c:1581 0xe08a01 extract_integral_bit_field /usr/src/gcc/gcc/expmed.c:1993 0xe07ece extract_bit_field_1 /usr/src/gcc/gcc/expmed.c:1857 0xe0943b extract_bit_field(rtx_def*, poly_int<1u, unsigned long>, poly_int<1u, unsigned long>, int, rtx_def*, machine_mode, machine_mode, bool, rtx_def**) /usr/src/gcc/gcc/expmed.c:2129 0xc8fa43 expand_gimple_stmt_1 /usr/src/gcc/gcc/cfgexpand.c:3942 0xc8fe38 expand_gimple_stmt /usr/src/gcc/gcc/cfgexpand.c:4040 0xc98186 expand_gimple_basic_block /usr/src/gcc/gcc/cfgexpand.c:6082 0xc9a61d execute /usr/src/gcc/gcc/cfgexpand.c:6808 0xe49f54 expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /usr/src/gcc/gcc/expr.c:11413 0xe3d78e expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /usr/src/gcc/gcc/expr.c:8752 0xe328bd store_expr(tree_node*, rtx_def*, int, bool, bool) /usr/src/gcc/gcc/expr.c:6103 0xe30dd9 expand_assignment(tree_node*, tree_node*, bool) /usr/src/gcc/gcc/expr.c:5835 0xe49f54 expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /usr/src/gcc/gcc/expr.c:11413 0xe3d78e expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /usr/src/gcc/gcc/expr.c:8752 0xe328bd store_expr(tree_node*, rtx_def*, int, bool, bool) /usr/src/gcc/gcc/expr.c:6103 0xe30dd9 expand_assignment(tree_node*, tree_node*, bool) /usr/src/gcc/gcc/expr.c:5835 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. make[3]: *** [/usr/src/gcc/libgcc/shared-object.mk:17: trunctfhf2_s.o] Error 1 make[3]: *** Waiting for unfinished jobs.... 0xe49f54 expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /usr/src/gcc/gcc/expr.c:11413 0xe3d78e expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /usr/src/gcc/gcc/expr.c:8752 0xe328bd store_expr(tree_node*, rtx_def*, int, bool, bool) /usr/src/gcc/gcc/expr.c:6103 0xe30dd9 expand_assignment(tree_node*, tree_node*, bool) /usr/src/gcc/gcc/expr.c:5835 0xc8fa43 expand_gimple_stmt_1 /usr/src/gcc/gcc/cfgexpand.c:3942 0xc8fe38 expand_gimple_stmt /usr/src/gcc/gcc/cfgexpand.c:4040 0xc98186 expand_gimple_basic_block /usr/src/gcc/gcc/cfgexpand.c:6082 0xc9a61d execute /usr/src/gcc/gcc/cfgexpand.c:6808 0xc8fa43 expand_gimple_stmt_1 /usr/src/gcc/gcc/cfgexpand.c:3942 0xc8fe38 expand_gimple_stmt /usr/src/gcc/gcc/cfgexpand.c:4040 0xc98186 expand_gimple_basic_block /usr/src/gcc/gcc/cfgexpand.c:6082 0xc9a61d execute /usr/src/gcc/gcc/cfgexpand.c:6808 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. make[3]: *** [/usr/src/gcc/libgcc/shared-object.mk:17: truncdfhf2_s.o] Error 1 0xc8fa43 expand_gimple_stmt_1 /usr/src/gcc/gcc/cfgexpand.c:3942 0xc8fe38 expand_gimple_stmt /usr/src/gcc/gcc/cfgexpand.c:4040 0xc98186 expand_gimple_basic_block /usr/src/gcc/gcc/cfgexpand.c:6082 0xc9a61d execute /usr/src/gcc/gcc/cfgexpand.c:6808 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. make[3]: *** [/usr/src/gcc/libgcc/shared-object.mk:17: truncxfhf2_s.o] Error 1 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. make[3]: *** [/usr/src/gcc/libgcc/shared-object.mk:17: truncsfhf2_s.o] Error 1 make[3]: Leaving directory '/tmp/tmp.iOtetkbuue/x86_64-pc-linux-gnu/libgcc' make[2]: *** [Makefile:24079: all-stage1-target-libgcc] Error 2 make[2]: Leaving directory '/tmp/tmp.iOtetkbuue' make[1]: *** [Makefile:28993: stage1-bubble] Error 2 make[1]: Leaving directory '/tmp/tmp.iOtetkbuue' make: *** [Makefile:1021: all] Error 2 The command '/bin/sh -c buildDeps='flex' && apt-get update && apt-get install -y $buildDeps --no-install-recommends && rm -r /var/lib/apt/lists/* && mkdir -p /usr/src/gcc && git clone git://gcc.gnu.org/git/gcc.git /usr/src/gcc && cd /usr/src/gcc && ./contrib/download_prerequisites && { rm *.tar.* || true; } && dir="$(mktemp -d)" && cd "$dir" && /usr/src/gcc/configure --disable-multilib --enable-languages=c,c++,fortran && make -j4 && make install-strip && cd .. && rm -rf "$dir" && apt-get purge -y --auto-remove $buildDeps' returned a non-zero code: 2