https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111692
Bug ID: 111692 Summary: ICE in output_constant at varasm:cc:5267 during RTL "final" pass Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: other Assignee: unassigned at gcc dot gnu.org Reporter: fkastl at suse dot cz CC: jamborm at gcc dot gnu.org Target Milestone: --- Host: x86_64-linux Target: x86_64-linux Running gcc on a test from the testsuite with -Os and -frounding-math: gcc src/gcc/testsuite/gcc.target/x86_64/abi/avx512f/test_passing_structs.c -Os -frounding-math results in an ICE during RTL pass: final ../src/gcc/testsuite/gcc.target/x86_64/abi/avx512f/test_passing_structs.c: In function ‘avx512f_test’: ../src/gcc/testsuite/gcc.target/x86_64/abi/avx512f/test_passing_structs.c:65:1: internal compiler error: in output_constant, at varasm.cc:5267 65 | } | ^ 0x867e58 output_constant ../../src/gcc/varasm.cc:5267 0x1317655 output_constructor_regular_field ../../src/gcc/varasm.cc:5610 0x1317655 output_constructor ../../src/gcc/varasm.cc:5876 0x1317655 output_constructor_regular_field ../../src/gcc/varasm.cc:5610 0x1317655 output_constructor ../../src/gcc/varasm.cc:5876 0x13190e5 assemble_constant_contents ../../src/gcc/varasm.cc:3621 0x131a3f8 output_constant_def_contents ../../src/gcc/varasm.cc:3666 0x131a67c mark_constants_in_pattern ../../src/gcc/varasm.cc:4241 0x131ef07 mark_constants ../../src/gcc/varasm.cc:4273 0x131ef07 mark_constant_pool ../../src/gcc/varasm.cc:4289 0x131ef07 output_constant_pool ../../src/gcc/varasm.cc:4504 0x131ef07 assemble_start_function(tree_node*, char const*) ../../src/gcc/varasm.cc:1876 0xbfdaa1 rest_of_handle_final ../../src/gcc/final.cc:4236 0xbfdaa1 execute ../../src/gcc/final.cc:4318 This assert fails: 5265 5266 case REAL_TYPE: 5267 gcc_assert (size == thissize); 5268 if (TREE_CODE (exp) != REAL_CST) 5269 error ("initializer for floating value is not a floating constant");