gcc-11.0.0-alpha20200823 snapshot (g:87c753ac241f25d222d46ba1ac66ceba89d6a200) ICEs when compiling gcc/testsuite/gcc.target/aarch64/target_attr_11.c: % x86_64-unknown-linux-gnu-gcc-11.0.0 -c gcc/testsuite/gcc.target/aarch64/target_attr_11.c gcc/testsuite/gcc.target/aarch64/target_attr_11.c:8:1: internal compiler error: in ix86_handle_option, at common/config/i386/i386-common.c:338 8 | { | ^ 0x7a563c ix86_handle_option(gcc_options*, gcc_options*, cl_decoded_option const*, unsigned int) /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/common/config/i386/i386-common.c:338 0x1152123 ix86_valid_target_attribute_inner_p /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/config/i386/i386-options.c:1200 0x1151fcf ix86_valid_target_attribute_inner_p /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/config/i386/i386-options.c:1088 0x1156d7d ix86_valid_target_attribute_tree(tree_node*, tree_node*, gcc_options*, gcc_options*, bool) /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/config/i386/i386-options.c:1302 0x1157064 ix86_valid_target_attribute_p(tree_node*, tree_node*, tree_node*, int) /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/config/i386/i386-options.c:1408 0x8a9382 handle_target_attribute /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/c-family/c-attribs.c:4379 0x7b2947 decl_attributes(tree_node**, tree_node*, int, tree_node*) /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/attribs.c:714 0x7cf96d start_function(c_declspecs*, c_declarator*, tree_node*) /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/c/c-decl.c:9184 0x82c920 c_parser_declaration_or_fndef /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/c/c-parser.c:2434 0x8364a3 c_parser_external_declaration /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/c/c-parser.c:1773 0x836fb9 c_parser_translation_unit /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/c/c-parser.c:1646 0x836fb9 c_parse_file() /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/c/c-parser.c:21819 0x890efd c_common_parse_file() /var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/c-family/c-opts.c:1188
Looks like fallout from recent general-regs-only function attribute addition. CC author.
A patch is posted at https://gcc.gnu.org/pipermail/gcc-patches/2020-August/552720.html
The master branch has been updated by H.J. Lu <hjl@gcc.gnu.org>: https://gcc.gnu.org/g:8f1ea8ddccc34c28f72910d9f61bacd35cc73270 commit r11-2890-g8f1ea8ddccc34c28f72910d9f61bacd35cc73270 Author: H.J. Lu <hjl.tools@gmail.com> Date: Wed Aug 26 12:37:05 2020 -0700 x86: Reject target("no-general-regs-only") Reject target("no-general-regs-only") pragma and attribute. gcc/ PR target/96802 * config/i386/i386-options.c (ix86_valid_target_attribute_inner_p): Reject target("no-general-regs-only"). gcc/testsuite/ PR target/96802 * gcc.target/i386/pr96802-1.c: New test. * gcc.target/i386/pr96802-2.c: Likewise.
Fixed for GCC 11.