https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103787
Bug ID: 103787 Summary: [12 regression] SEGV in gnat1 breaks i?86 bootstrap Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: ro at gcc dot gnu.org CC: sayle at gcc dot gnu.org, ubizjak at gmail dot com Target Milestone: --- Target: i?86-pc-solaris2.11, i686-pc-linux-gnu Between 20211218 (31048012db98f5ec9c2ba537bfd850374bdd771f) and 20211220 (c9c466ea33dd2110fd9b73b05c30dacabff8f85a), 32-bit Solaris/x86 bootstrap with Ada got broken: in stage 3, gnat1 SEGVs, e.g. +===========================GNAT BUG DETECTED==============================+ | 12.0.0 20211220 (experimental) [master revision c9c466ea33dd2110fd9b73b05c30dacabff8f85a] (i386-pc-solaris2.11) | | Constraint_Error SIGSEGV | | Error detected at system.ads:106:30 | | Compiling /vol/gcc/src/hg/master/local/gcc/ada/backend_utils.adb | +===========================GNAT BUG DETECTED==============================+ | 12.0.0 20211220 (experimental) [master revision c9c466ea33dd2110fd9b73b05c30dacabff8f85a] (i386-pc-solaris2.11) | gnat1 -I - -I . -I ada/generated -I ada -I /vol/gcc/src/hg/master/local/gcc/ada -I ada/libgnat -I /vol/gcc/src/hg/master/local/gcc/ada/libgnat -I ada/gcc-interface -I /vol/gcc/src/hg/master/local/gcc/ada/gcc-interface -quiet -nostdinc -gnatwa -gnatpg -gnatwns -gnata -mtune=generic -march=pentium4 -gnatO ada/backend_utils.o /vol/gcc/src/hg/master/local/gcc/ada/backend_utils.adb -o backend_utils.s Thread 2 received signal SIGSEGV, Segmentation fault. [Switching to Thread 1 (LWP 1)] 0x0915bcba in sem_type.interp_map.set () (gdb) where #0 0x0915bcba in sem_type.interp_map.set () #1 0x0915c8f0 in sem_type.new_interps () #2 0x0915dee1 in sem_type.collect_interps () #3 0x090c74fe in sem_ch8.find_direct_name () #4 0x08fe4646 in sem.analyze () #5 0x0911bf61 in sem_prag.analyze_pragma.check_arg_is_local_name () #6 0x0912467e in sem_prag.analyze_pragma.process_convention () #7 0x0912fd9a in sem_prag.analyze_pragma.process_import_or_interface () #8 0x09138d76 in sem_prag.analyze_pragma () #9 0x08fe4769 in sem.analyze () #10 0x0905e1f3 in sem_ch3.analyze_declarations () #11 0x090b864b in sem_ch7.analyze_package_specification () #12 0x08fe478b in sem.analyze () #13 0x090bb12e in sem_ch7.analyze_package_declaration () #14 0x08fe40bf in sem.analyze () #15 0x0901325a in sem_ch10.analyze_compilation_unit () #16 0x08fe4402 in sem.analyze () #17 0x08fe5931 in sem.semantics () #18 0x0900f8af in sem_ch10.analyze_with_clause () #19 0x08fe4600 in sem.analyze () #20 0x0900bd9b in sem_ch10.analyze_context () #21 0x090131b7 in sem_ch10.analyze_compilation_unit () #22 0x08fe4402 in sem.analyze () #23 0x08fe5931 in sem.semantics () #24 0x0900f8af in sem_ch10.analyze_with_clause () #25 0x08fe4600 in sem.analyze () #26 0x0900bd9b in sem_ch10.analyze_context () #27 0x090131b7 in sem_ch10.analyze_compilation_unit () #28 0x08fe4402 in sem.analyze () #29 0x08fe5931 in sem.semantics () #30 0x0900f8af in sem_ch10.analyze_with_clause () #31 0x08fe4600 in sem.analyze () #32 0x0900bd9b in sem_ch10.analyze_context () #33 0x090131b7 in sem_ch10.analyze_compilation_unit () #34 0x08fe4402 in sem.analyze () #35 0x08fe5931 in sem.semantics () #36 0x0900f8af in sem_ch10.analyze_with_clause () #37 0x08fe4600 in sem.analyze () #38 0x0900bd9b in sem_ch10.analyze_context () #39 0x090131b7 in sem_ch10.analyze_compilation_unit () #40 0x08fe4402 in sem.analyze () #41 0x08fe5931 in sem.semantics () #42 0x0900f8af in sem_ch10.analyze_with_clause () #43 0x08fe4600 in sem.analyze () #44 0x0900bd9b in sem_ch10.analyze_context () #45 0x090131b7 in sem_ch10.analyze_compilation_unit () #46 0x08fe4402 in sem.analyze () #47 0x08fe5931 in sem.semantics () #48 0x08f5b831 in frontend () #49 0x09206f9d in gnat1drv () #50 0x08d7b5b2 in gnat_parse_file() () #51 0x097d5dfd in compile_file() () #52 0x097d9242 in toplev::main(int, char**) () #53 0x0a82f7d1 in main () I'm seeing the same failure on 32-bit Linux/x86. A reghunt identified commit c9c466ea33dd2110fd9b73b05c30dacabff8f85a Author: Roger Sayle <ro...@nextmovesoftware.com> Date: Mon Dec 20 15:22:18 2021 +0000 x86_64: Improve code expanded for highpart multiplications.