http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59235
Bug ID: 59235 Summary: [4.9 regression] SEGV in sparc_output_scratch_registers Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap Assignee: unassigned at gcc dot gnu.org Reporter: ro at gcc dot gnu.org CC: ebotcazou at gcc dot gnu.org, law at gcc dot gnu.org Host: sparc-sun-solaris2.* Target: sparc-sun-solaris2.* Build: sparc-sun-solaris2.* Solaris/SPARC bootstrap got broken between rev 204842 and 205096: the stage2 sparcv9 libgcc fails to configure, as can be seen with the following testcase: $ cat conftest.c int main (void) { return 0; } $ ./cc1 -fpreprocessed conftest.c -mptr64 -mstack-bias -mno-v8plus -mcpu=v9 -quiet -m64 -o conftest.s conftest.c: In function 'main': Segmentation Fault The SEGV happens here: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1 (LWP 1)] 0x0069c314 in sparc_output_scratch_registers(__FILE*) [clone .part.32] () (gdb) where #0 0x0069c314 in sparc_output_scratch_registers(__FILE*) [clone .part.32] () #1 0x0069c3ac in sparc_asm_function_prologue(__FILE*, long long) () #2 0x00281df0 in final_start_function(rtx_def*, __FILE*, int) () #3 0x00282294 in (anonymous namespace)::pass_final::execute() () #4 0x003d3050 in execute_one_pass(opt_pass*) () #5 0x003d32e0 in execute_pass_list(opt_pass*) () #6 0x003d3304 in execute_pass_list(opt_pass*) () #7 0x003d3304 in execute_pass_list(opt_pass*) () #8 0x001c7bd4 in expand_function(cgraph_node*) () #9 0x001c9d74 in compile() () #10 0x001ca050 in finalize_compilation_unit() () #11 0x000d4f3c in c_write_global_declarations() () #12 0x004876a8 in compile_file() () #13 0x00489784 in toplev_main(int, char**) () #14 0x000c1074 in _start () A reghunt traced this to the following patch: 2013-11-19 Jeff Law <l...@redhat.com> * tree-ssa-threadedge.c (thread_across_edge): After threading through a joiner, allow threading a normal block requiring duplication. * tree-ssa-threadupdate.c (thread_block_1): Improve code to detect I'm currently running a bootstrap with the patch reverted to see if everything is ok without. Rainer