../../xgcc -B../../ -c -g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmis sing-prototypes -fno-common -mdisable-indexing -gnatpg -gnata -I- -I../rts - I. -I/xxx/gnu/gcc-3.3/gcc/gcc/ada /xxx/gnu/gcc-3.3/gcc/gcc/ada/make.adb -o make. o raised STORAGE_ERROR : stack overflow or erroneous memory access make[3]: *** [make.o] Error 1 I've seen this both on hppa2.0w-hpux11.11 and hppa1.1-hp-hpux10.20. It appears to be a garbage collection problem.
On PowerPC, I get with tree checking: +===========================GNAT BUG DETECTED==============================+ | 4.1.0 20051123 (prerelease) (powerpc-apple-darwin8) GCC error: | | tree check: expected class 'expression', have 'exceptional' | | (constructor) in get_base_var, at ipa-utils.c:224 | | Error detected at make.adb:7541:23
Program received signal SIGSEGV, Segmentation fault. 0x003ea9cc in gt_ggc_mx_basic_block_def (x_p=0x0) at gtype-desc.c:446 446 gt_ggc_m_9tree_node ((*x).stmt_list); (gdb) (gdb) bt #0 0x003ea9cc in gt_ggc_mx_basic_block_def (x_p=0x0) at gtype-desc.c:446 #1 0x003ed11c in gt_ggc_mx_tree_ann_d (x_p=0x79f4e1c0) at gtype-desc.c:370 #2 0x000467c8 in gt_ggc_mx_lang_tree_node (x_p=0x7a6a8938) at ./gtype-ada.h:333 #3 0x003e70d0 in gt_ggc_mx_throw_stmt_node (x_p=0x7a245598) at gtype-desc.c:94 #4 0x003e7144 in gt_ggc_m_P15throw_stmt_node4htab (x_p=0x79ed0600) at gtype-desc.c:1527 #5 0x0037b53c in gt_ggc_mx_eh_status (x_p=0x7a6a3f78) at ./gt-except.h:119 #6 0x003ece74 in gt_ggc_mx_function (x_p=0x7a4cb000) at gtype-desc.c:607 #7 0x00046f10 in gt_ggc_mx_lang_tree_node (x_p=0x7a82af80) at ./gtype-ada.h:432 #8 0x00046824 in gt_ggc_mx_lang_tree_node (x_p=0x7a5174e0) at ./gtype-ada.h:342 #9 0x00046824 in gt_ggc_mx_lang_tree_node (x_p=0x7a516e10) at ./gtype-ada.h:342 #10 0x003e6a70 in gt_ggc_mx_tree_statement_list_node (x_p=0x7a59c420) at gtype-desc.c:311 #11 0x00046f58 in gt_ggc_mx_lang_tree_node (x_p=0x7a515888) at ./gtype-ada.h:403 #12 0x003ea95c in gt_ggc_mx_basic_block_def (x_p=0x0) at gtype-desc.c:446 #13 0x003ed11c in gt_ggc_mx_tree_ann_d (x_p=0x79f8a3f0) at gtype-desc.c:370 #14 0x000467c8 in gt_ggc_mx_lang_tree_node (x_p=0x7a516d70) at ./gtype-ada.h:333 ---Type <return> to continue, or q <return> to quit--- #15 0x003e6a70 in gt_ggc_mx_tree_statement_list_node (x_p=0x0) at gtype-desc.c:311 #16 0x00046f58 in gt_ggc_mx_lang_tree_node (x_p=0x79f865d0) at ./gtype-ada.h:403 #17 0x00046ecc in gt_ggc_mx_lang_tree_node (x_p=0x7a4f33c8) at ./gtype-ada.h:275 #18 0x0004662c in gt_ggc_mx_lang_tree_node (x_p=0x7ae36a98) at ./gtype-ada.h:423 #19 0x00046bec in gt_ggc_mx_lang_tree_node (x_p=0x7ae3c5a0) at ./gtype-ada.h:308 #20 0x00046dfc in gt_ggc_mx_lang_tree_node (x_p=0x7ae3a100) at ./gtype-ada.h:262 #21 0x00046e2c in gt_ggc_mx_lang_tree_node (x_p=0x7a6c3d80) at ./gtype-ada.h:265 #22 0x00046410 in gt_ggc_mx_lang_tree_node (x_p=0x7a5697e8) at ./gtype-ada.h:166 #23 0x003e6f9c in gt_ggc_mx_cgraph_varpool_node (x_p=0x79fbd8e8) at gtype-desc.c:104 #24 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79fbdd98) at gtype-desc.c:105 #25 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79dc8b10) at gtype-desc.c:105 #26 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79dc8b28) ---Type <return> to continue, or q <return> to quit--- at gtype-desc.c:105 #27 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79dc8b40) at gtype-desc.c:105 #28 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79dc8b58) at gtype-desc.c:105 #29 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79de1a98) at gtype-desc.c:105 #30 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79de1ab0) at gtype-desc.c:105 #31 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79de1ac8) at gtype-desc.c:105 #32 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79de1ae0) at gtype-desc.c:105 #33 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79de1af8) at gtype-desc.c:105 #34 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79de1b10) at gtype-desc.c:105 #35 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79dfa8a0) at gtype-desc.c:105 #36 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79dfa8b8) at gtype-desc.c:105 #37 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79dfa8d0) at gtype-desc.c:105 ---Type <return> to continue, or q <return> to quit--- #38 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79dfa8e8) at gtype-desc.c:105 #39 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79dfa900) at gtype-desc.c:105 #40 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79dfa918) at gtype-desc.c:105 #41 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e00d68) at gtype-desc.c:105 #42 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e00d80) at gtype-desc.c:105 #43 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e05cc0) at gtype-desc.c:105 #44 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e05cd8) at gtype-desc.c:105 #45 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e0bf30) at gtype-desc.c:105 #46 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e0bf48) at gtype-desc.c:105 #47 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e0bf60) at gtype-desc.c:105 #48 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e0bf78) at gtype-desc.c:105 #49 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e0bf90) ---Type <return> to continue, or q <return> to quit--- at gtype-desc.c:105 #50 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e0bfa8) at gtype-desc.c:105 #51 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e187b0) at gtype-desc.c:105 #52 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e187c8) at gtype-desc.c:105 #53 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e187e0) at gtype-desc.c:105 #54 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e187f8) at gtype-desc.c:105 #55 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e18810) at gtype-desc.c:105 #56 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e18828) at gtype-desc.c:105 #57 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e24030) at gtype-desc.c:105 #58 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e24048) at gtype-desc.c:105 #59 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e24060) at gtype-desc.c:105 #60 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e24078) at gtype-desc.c:105 ---Type <return> to continue, or q <return> to quit--- #61 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e24090) at gtype-desc.c:105 #62 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e240a8) at gtype-desc.c:105 #63 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e2b8a0) at gtype-desc.c:105 #64 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e2b8b8) at gtype-desc.c:105 #65 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e2b8d0) at gtype-desc.c:105 #66 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e2b8e8) at gtype-desc.c:105 #67 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e2b900) at gtype-desc.c:105 #68 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e2b918) at gtype-desc.c:105 #69 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e38120) at gtype-desc.c:105 #70 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e38138) at gtype-desc.c:105 #71 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e38150) at gtype-desc.c:105 #72 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e38168) ---Type <return> to continue, or q <return> to quit--- at gtype-desc.c:105 #73 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e38180) at gtype-desc.c:105 #74 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e38198) at gtype-desc.c:105 #75 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e3e990) at gtype-desc.c:105 #76 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e3e9a8) at gtype-desc.c:105 #77 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e3e9c0) at gtype-desc.c:105 #78 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e3e9d8) at gtype-desc.c:105 #79 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e3e9f0) at gtype-desc.c:105 #80 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e3ea08) at gtype-desc.c:105 #81 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e4b210) at gtype-desc.c:105 #82 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e4b228) at gtype-desc.c:105 #83 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e4b240) at gtype-desc.c:105 ---Type <return> to continue, or q <return> to quit--- #84 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e4b258) at gtype-desc.c:105 #85 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e4b270) at gtype-desc.c:105 #86 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e4b288) at gtype-desc.c:105 #87 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e51a80) at gtype-desc.c:105 #88 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e51a98) at gtype-desc.c:105 #89 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e51ab0) at gtype-desc.c:105 #90 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e51ac8) at gtype-desc.c:105 #91 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e51ae0) at gtype-desc.c:105 #92 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e51af8) at gtype-desc.c:105 #93 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e5d408) at gtype-desc.c:105 #94 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e5d420) at gtype-desc.c:105 #95 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e5d438) ---Type <return> to continue, or q <return> to quit--- at gtype-desc.c:105 #96 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e5d450) at gtype-desc.c:105 #97 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e5d468) at gtype-desc.c:105 #98 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e5d480) at gtype-desc.c:105 #99 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e70150) at gtype-desc.c:105 #100 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e70168) at gtype-desc.c:105 #101 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e70180) at gtype-desc.c:105 #102 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e70198) at gtype-desc.c:105 #103 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e701b0) at gtype-desc.c:105 #104 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e701c8) at gtype-desc.c:105 #105 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e779c0) at gtype-desc.c:105 #106 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e779d8) at gtype-desc.c:105 ---Type <return> to continue, or q <return> to quit--- #107 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e779f0) at gtype-desc.c:105 #108 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e77a08) at gtype-desc.c:105 #109 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e77a20) at gtype-desc.c:105 #110 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e77a38) at gtype-desc.c:105 #111 0x003e6fac in gt_ggc_mx_cgraph_varpool_node (x_p=0x79e86240) at gtype-desc.c:105 #112 0x003e0dc0 in ggc_mark_roots () at ../../gcc/gcc/ggc-common.c:118 #113 0x00452578 in ggc_collect () at ../../gcc/gcc/ggc-page.c:1884 #114 0x00453cc4 in execute_todo (pass=0x4001ca00, flags=3, use_required=4 '\004') at ../../gcc/gcc/passes.c:772 #115 0x00453ff8 in execute_one_pass (pass=0x4001ca00) at ../../gcc/gcc/passes.c:854 #116 0x00454074 in execute_pass_list (pass=0x4001ca00) at ../../gcc/gcc/passes.c:876 #117 0x00454088 in execute_pass_list (pass=0x4001642c) at ../../gcc/gcc/passes.c:877 #118 0x00454088 in execute_pass_list (pass=0x400163f8) at ../../gcc/gcc/passes.c:877 #119 0x0031762c in tree_rest_of_compilation (fndecl=0x7a82af80) ---Type <return> to continue, or q <return> to quit--- at ../../gcc/gcc/tree-optimize.c:419 #120 0x00041dfc in gnat_expand_body (gnu_decl=0x7a82af80) at ../../gcc/gcc/ada/misc.c:649 #121 0x0047cdac in cgraph_expand_function (node=0x7a65c880) at ../../gcc/gcc/cgraphunit.c:1055 #122 0x0047f74c in cgraph_optimize () at ../../gcc/gcc/cgraphunit.c:1121 #123 0x00042a00 in gnat_parse_file (set_yydebug=0) at ../../gcc/gcc/ada/misc.c:245 #124 0x00426b58 in toplev_main (argc=1078648120, argv=0x0) at ../../gcc/gcc/toplev.c:990 #125 0x0030df4c in main (argc=0, argv=0x0) at ../../gcc/gcc/main.c:35 (gdb) This is with 4.2.0 20051212 bootstrapped using 3.4.4. (gdb) p debug_tree (fndecl) <function_decl 7a82af80 make__collect_arguments type <function_type 7a83e720 type <void_type 7adf3720 void sizes-gimplified visited VOID align 8 symtab 10 alias set 355 pointer_to_this <pointer_type 7adf3780>> SI size <integer_cst 7ade62d0 constant invariant 32> unit size <integer_cst 7ade6060 constant invariant 4> align 32 symtab 0 alias set -1 arg-types <tree_list 7a838d50 value <integer_type 7ae33d80 types__file_name_type___XDLU_300000000__399999999> chain <tree_list 7a838d68 value <integer_type 7ae3c480 types__int> chain <tree_list 7a838d80 value <record_type 7ae33ea0 gnat__strings__string_list_access> chain <tree_list 7a838d98 value <void_type 7adf3720 void>>>>> pointer_to_this <pointer_type 7a64b2a0>> addressable asm_written static SI file /mnt/gnu/gcc-3.3/gcc/gcc/ada/make.adb line 1788 initial <block 7a689540> arguments <parm_decl 7a833c80 source_file type <integer_type 7ae33d80 types__file_name_type___XDLU_300000000__399999999 type <integer_type 7ae33d20 types__Tname_idB> readonly sizes-gimplified unsigned SI size <integer_cst 7ade62d0 32> unit size <integer_cst 7ade6060 4> user align 32 symtab 1292 alias set -1 precision 32 min <integer_cst 7ae367c8 300000000> max <integer_cst 7ae367f8 399999999> RM size <integer_cst 7ade62d0 32>> readonly used unsigned SI file /mnt/gnu/gcc-3.3/gcc/gcc/ada/make.adb line 714 size <integer_cst 7ade62d0 32> unit size <integer_cst 7ade6060 4> align 32 context <function_decl 7a82af80 make__collect_arguments> initial <integer_type 7ae33d80 types__file_name_type___XDLU_300000000__399999999> (mem/c/i:SI (plus:SI (reg/f:SI 3 %r3) (const_int -36 [0xffffffdc])) [357 source_file+0 S4 A32]) arg-type <integer_type 7ae33d80 types__file_name_type___XDLU_300000000__399999999> incoming-rtl (reg:SI 26 %r26 [ source_file ]) chain <parm_decl 7a833cd0 source_index type <integer_type 7ae3c480 types__int> readonly used SI file /mnt/gnu/gcc-3.3/gcc/gcc/ada/make.adb line 715 size <integer_cst 7ade62d0 32> unit size <integer_cst 7ade6060 4> align 32 context <function_decl 7a82af80 make__collect_arguments> initial <integer_type 7ae3c480 types__int> (mem/c/i:SI (plus:SI (reg/f:SI 3 %r3) (const_int -40 [0xffffffd8])) [197 source_index+0 S4 A32]) arg-type <integer_type 7ae3c480 types__int> incoming-rtl (reg:SI 25 %r25 [ source_index ]) chain <parm_decl 7a833d20 args>>> result <result_decl 7a833d70 D.5138 type <void_type 7adf3720 void> ignored VOID file /mnt/gnu/gcc-3.3/gcc/gcc/ada/make.adb line 713 align 8 context <function_decl 7a82af80 make__collect_arguments>> (mem:SI (symbol_ref/v:SI ("@make__collect_arguments") [flags 0x3] <function_decl 7a82af80 make__collect_arguments>) [0 S4 A32]) saved-insns 7a4cb000> From gtype-ada.h: case TS_EXP: gt_ggc_m_9tree_node ((*x).t.exp.common.chain); gt_ggc_m_9tree_node ((*x).t.exp.common.type); gt_ggc_m_10tree_ann_d ((*x).t.exp.common.ann);
Strangely, this didn't occur with using 4.1.0 and the same bootstrap version of gcc.
*** Bug 25436 has been marked as a duplicate of this bug. ***
From the dup bug, this is also reproducible on x86-linux-gnu too.
So, in the end, is this 4.1 or 4.2?
4.2, see PR25436 for last known working revision number
I suppose this is what I experience too on sparc/sparc64 linux, see also http://gcc.gnu.org/ml/gcc/2005-12/msg00491.html I get this on trunk Sat Dec 17 00:14:08 UTC 2005 (revision 108698): ../../xgcc -B../../ -c -O2 -g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -fno-common -gnatpg -gnata -I- -I../rts -I. -I/usr/local/src/trunk/gcc/gcc/ada /usr/local/src/trunk/gcc/gcc/ada/make.adb -o make.o +===========================GNAT BUG DETECTED==============================+ | 4.2.0 20051216 (experimental) (sparc64-unknown-linux-gnu) GCC error: | | Segmentation fault | | Error detected at make.adb:7541:23 | | Please submit a bug report; see http://gcc.gnu.org/bugs.html. | | Use a subject line meaningful to you and us to track the bug. | | Include the entire contents of this bug box in the report. | | Include the exact gcc or gnatmake command that you entered. | | Also include sources listed below in gnatchop format | | (concatenated together with no headers between files). | +==========================================================================+ Please include these source files with error report Note that list may not be accurate in some cases, so please double check that the problem can still be reproduced with the set of files listed. Is this some more wide spread problem, well-known, or would you rather I posted more debugging info on it? The system is this: Aurora SPARC Linux release 2.0b2 (Kashmir FC3) UltraSparc IIi (Sabre) sun4u: binutils-2.15.92.0.2-5.sparc bison-1.875c-2.sparc dejagnu-1.4.4-2.noarch expect-5.42.1-1.sparc gcc-3.4.2-6.fc3.sparc gcc4-4.0.0-0.8sparc.sparc glibc-2.3.3-99.sparcv9 glibc-2.3.3-99.sparc64 glibc-devel-2.3.3-99.sparc glibc-devel-2.3.3-99.sparc64 glibc-headers-2.3.3-99.sparc glibc-kernheaders-2.6-20sparc.sparc gmp-4.1.4-3sparc.sparc gmp-4.1.4-3sparc.sparc64 gmp-devel-4.1.4-3sparc.sparc gmp-devel-4.1.4-3sparc.sparc64 kernel-2.6.13-1.1603sp8.sparc64 package kernel-devel is not installed package kernel-smp is not installed libgcc-3.4.2-6.fc3.sparc libgcc-3.4.2-6.fc3.sparc64 libstdc++-3.4.2-6.fc3.sparc libstdc++-3.4.2-6.fc3.sparc64 libstdc++-devel-3.4.2-6.fc3.sparc libstdc++-devel-3.4.2-6.fc3.sparc64 make-3.80-5.sparc nptl-devel-2.3.3-99.sparcv9 tcl-8.4.7-2.sparc and configure was done like this: xgcc -v Using built-in specs. Target: sparc64-unknown-linux-gnu Configured with: ../gcc/configure --enable-__cxa_atexit --enable-shared --with-cpu=v7 --enable-languages=c,ada,c++,fortran,java,objc,obj-c++,treelang : (reconfigured) ../gcc/configure --enable-__cxa_atexit --enable-shared --with-cpu=v7 --enable-languages=c,ada,c++,fortran,java,objc,obj-c++,treelang --no-create --no-recursion Thread model: posix gcc version 4.2.0 20051216 (experimental)
../../xgcc -B../../ -c -O2 -g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -fno-common -gnatpg -gnata -I- -I../rts -I. -I/home/da ve/gcc-4.2/gcc/gcc/ada /home/dave/gcc-4.2/gcc/gcc/ada/make.adb -o make.o +===========================GNAT BUG DETECTED==============================+ | 4.2.0 20051217 (experimental) (hppa-unknown-linux-gnu) Segmentation fault| | Error detected at make.adb:7541:23 | | Please submit a bug report; see http://gcc.gnu.org/bugs.html. | | Use a subject line meaningful to you and us to track the bug. | | Include the entire contents of this bug box in the report. | | Include the exact gcc or gnatmake command that you entered. | | Also include sources listed below in gnatchop format | | (concatenated together with no headers between files). | +==========================================================================+ Please include these source files with error report Note that list may not be accurate in some cases, so please double check that the problem can still be reproduced with the set of files listed. /home/dave/gcc-4.2/gcc/gcc/ada/make.adb /home/dave/gcc-4.2/gcc/gcc/ada/make.ads /home/dave/gcc-4.2/gcc/gcc/ada/table.ads /home/dave/gcc-4.2/gcc/gcc/ada/types.ads /home/dave/gcc-4.2/gcc/gcc/ada/ali.ads /home/dave/gcc-4.2/gcc/gcc/ada/casing.ads /home/dave/gcc-4.2/gcc/gcc/ada/gnatvsn.ads /home/dave/gcc-4.2/gcc/gcc/ada/rident.ads /home/dave/gcc-4.2/gcc/gcc/ada/ali-util.ads /home/dave/gcc-4.2/gcc/gcc/ada/csets.ads /home/dave/gcc-4.2/gcc/gcc/ada/debug.ads /home/dave/gcc-4.2/gcc/gcc/ada/fmap.ads /home/dave/gcc-4.2/gcc/gcc/ada/fname.ads /home/dave/gcc-4.2/gcc/gcc/ada/fname-sf.ads /home/dave/gcc-4.2/gcc/gcc/ada/fname-uf.ads /home/dave/gcc-4.2/gcc/gcc/ada/hostparm.ads /home/dave/gcc-4.2/gcc/gcc/ada/makeusg.ads /home/dave/gcc-4.2/gcc/gcc/ada/makeutl.ads /home/dave/gcc-4.2/gcc/gcc/ada/osint.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj.ads /home/dave/gcc-4.2/gcc/gcc/ada/scans.ads /home/dave/gcc-4.2/gcc/gcc/ada/uintp.ads /home/dave/gcc-4.2/gcc/gcc/ada/alloc.ads /home/dave/gcc-4.2/gcc/gcc/ada/urealp.ads /home/dave/gcc-4.2/gcc/gcc/ada/mlib.ads /home/dave/gcc-4.2/gcc/gcc/ada/mlib-prj.ads /home/dave/gcc-4.2/gcc/gcc/ada/mlib-tgt.ads /home/dave/gcc-4.2/gcc/gcc/ada/mlib-utl.ads /home/dave/gcc-4.2/gcc/gcc/ada/namet.ads /home/dave/gcc-4.2/gcc/gcc/ada/opt.ads /home/dave/gcc-4.2/gcc/gcc/ada/osint-m.ads /home/dave/gcc-4.2/gcc/gcc/ada/output.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj-com.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj-env.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj-pars.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj-util.ads /home/dave/gcc-4.2/gcc/gcc/ada/sfn_scan.ads /home/dave/gcc-4.2/gcc/gcc/ada/sinput.ads /home/dave/gcc-4.2/gcc/gcc/ada/sinput-p.ads /home/dave/gcc-4.2/gcc/gcc/ada/snames.ads /home/dave/gcc-4.2/gcc/gcc/ada/switch.ads /home/dave/gcc-4.2/gcc/gcc/ada/switch-m.ads /home/dave/gcc-4.2/gcc/gcc/ada/targparm.ads /home/dave/gcc-4.2/gcc/gcc/ada/tempdir.ads /home/dave/gcc-4.2/gcc/gcc/ada/table.adb /home/dave/gcc-4.2/gcc/gcc/ada/tree_io.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj-env.adb raised TYPES.UNRECOVERABLE_ERROR : comperr.adb:380
Bootstrap started to fail after the following patch: Index: gcc/ChangeLog =================================================================== --- gcc/ChangeLog (revision 108421) +++ gcc/ChangeLog (revision 108425) @@ -1,3 +1,23 @@ +2005-12-12 Jeff Law <law@redhat.com> + + * tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Remove + reassociation code. + * passes.c (init_optimization_passes): Run reassociation again + after loop optimizations. + +2005-12-12 Daniel Berlin <dberlin@dberlin.org> + + * tree-ssa-dom.c (thread_across_edge): Canonicalize condition + if necessary. + (optimize_stmt): Ditto. + (canonicalize_comparison): New function. + * tree-ssa-operands.c (swap_tree_operands): Make external. + (get_expr_operands): Stop auto-canonicalization. + * tree-ssa-reassoc.c: Rewrite. + (init_optimization_passes): + * tree-flow.h (swap_tree_operands): Prototype. + * Makefile.in (tree-ssa-reassoc.o): Update dependencies. +
Subject: Bug 24994 Author: law Date: Wed Jan 4 16:29:32 2006 New Revision: 109335 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=109335 Log: PR ada/24994 * tree-cfg.c (bsi_replace): Remove the original statement from the EH throw statement table. Modified: trunk/gcc/ChangeLog trunk/gcc/tree-cfg.c
Fixed by attached patch. Would appreciate it if folks could verify ada is bootstrapping again on PPC, HPUX and any other platform reported as failing.
Sadly, a slightly different error now appears: ../../xgcc -B../../ -c -O2 -g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -fno-common -gnatpg -gnata -I- -I../rts -I. -I/home/da ve/gcc-4.2/gcc/gcc/ada /home/dave/gcc-4.2/gcc/gcc/ada/make.adb -o make.o +===========================GNAT BUG DETECTED==============================+ | 4.2.0 20060105 (experimental) (hppa-unknown-linux-gnu) Segmentation fault| | Error detected at make.adb:7541:23 | | Please submit a bug report; see http://gcc.gnu.org/bugs.html. | | Use a subject line meaningful to you and us to track the bug. | | Include the entire contents of this bug box in the report. | | Include the exact gcc or gnatmake command that you entered. | | Also include sources listed below in gnatchop format | | (concatenated together with no headers between files). | +==========================================================================+ Please include these source files with error report Note that list may not be accurate in some cases, so please double check that the problem can still be reproduced with the set of files listed. /home/dave/gcc-4.2/gcc/gcc/ada/make.adb /home/dave/gcc-4.2/gcc/gcc/ada/make.ads /home/dave/gcc-4.2/gcc/gcc/ada/table.ads /home/dave/gcc-4.2/gcc/gcc/ada/types.ads /home/dave/gcc-4.2/gcc/gcc/ada/ali.ads /home/dave/gcc-4.2/gcc/gcc/ada/casing.ads /home/dave/gcc-4.2/gcc/gcc/ada/gnatvsn.ads /home/dave/gcc-4.2/gcc/gcc/ada/rident.ads /home/dave/gcc-4.2/gcc/gcc/ada/ali-util.ads /home/dave/gcc-4.2/gcc/gcc/ada/csets.ads /home/dave/gcc-4.2/gcc/gcc/ada/debug.ads /home/dave/gcc-4.2/gcc/gcc/ada/fmap.ads /home/dave/gcc-4.2/gcc/gcc/ada/fname.ads /home/dave/gcc-4.2/gcc/gcc/ada/fname-sf.ads /home/dave/gcc-4.2/gcc/gcc/ada/fname-uf.ads /home/dave/gcc-4.2/gcc/gcc/ada/hostparm.ads /home/dave/gcc-4.2/gcc/gcc/ada/makeusg.ads /home/dave/gcc-4.2/gcc/gcc/ada/makeutl.ads /home/dave/gcc-4.2/gcc/gcc/ada/osint.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj.ads /home/dave/gcc-4.2/gcc/gcc/ada/scans.ads /home/dave/gcc-4.2/gcc/gcc/ada/uintp.ads /home/dave/gcc-4.2/gcc/gcc/ada/alloc.ads /home/dave/gcc-4.2/gcc/gcc/ada/urealp.ads /home/dave/gcc-4.2/gcc/gcc/ada/mlib.ads /home/dave/gcc-4.2/gcc/gcc/ada/mlib-prj.ads /home/dave/gcc-4.2/gcc/gcc/ada/mlib-tgt.ads /home/dave/gcc-4.2/gcc/gcc/ada/mlib-utl.ads /home/dave/gcc-4.2/gcc/gcc/ada/namet.ads /home/dave/gcc-4.2/gcc/gcc/ada/opt.ads /home/dave/gcc-4.2/gcc/gcc/ada/osint-m.ads /home/dave/gcc-4.2/gcc/gcc/ada/output.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj-com.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj-env.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj-pars.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj-util.ads /home/dave/gcc-4.2/gcc/gcc/ada/sfn_scan.ads /home/dave/gcc-4.2/gcc/gcc/ada/sinput.ads /home/dave/gcc-4.2/gcc/gcc/ada/sinput-p.ads /home/dave/gcc-4.2/gcc/gcc/ada/snames.ads /home/dave/gcc-4.2/gcc/gcc/ada/switch.ads /home/dave/gcc-4.2/gcc/gcc/ada/switch-m.ads /home/dave/gcc-4.2/gcc/gcc/ada/targparm.ads /home/dave/gcc-4.2/gcc/gcc/ada/tempdir.ads /home/dave/gcc-4.2/gcc/gcc/ada/table.adb /home/dave/gcc-4.2/gcc/gcc/ada/tree_io.ads /home/dave/gcc-4.2/gcc/gcc/ada/prj-env.adb raised TYPES.UNRECOVERABLE_ERROR : comperr.adb:380 make[3]: *** [make.o] Error 1 make[3]: Leaving directory `/home/dave/gcc-4.2/objdir/gcc/ada/tools' make[2]: *** [gnattools-native] Error 2 make[2]: Leaving directory `/home/dave/gcc-4.2/objdir/gnattools' make[1]: *** [all-gnattools] Error 2 make[1]: Leaving directory `/home/dave/gcc-4.2/objdir' make: *** [bootstrap] Error 2 Wed Jan 4 23:16:38 PST 2006
(gdb) r `cat xx.sh` Starting program: /home/dave/gcc-4.2/objdir/gcc/gnat1 `cat xx.sh` Program received signal SIGSEGV, Segmentation fault. 0x0042a09c in gt_ggc_mx_basic_block_def (x_p=Variable "x_p" is not available. ) at gtype-desc.c:460 460 while (x != xlimit) (gdb) bt #0 0x0042a09c in gt_ggc_mx_basic_block_def (x_p=Variable "x_p" is not available. ) at gtype-desc.c:460 #1 0x0042c5a4 in gt_ggc_mx_tree_ann_d (x_p=Variable "x_p" is not available. ) at gtype-desc.c:386 #2 0x0003ac64 in gt_ggc_mx_lang_tree_node (x_p=0x400bea50) at gtype-ada.h:333 #3 0x00426af8 in gt_ggc_m_P15throw_stmt_node4htab (x_p=Variable "x_p" is not available. ) at gtype-desc.c:1549 #4 0x0042c31c in gt_ggc_mx_function (x_p=Variable "x_p" is not available. ) at gtype-desc.c:623 #5 0x0003a52c in gt_ggc_mx_lang_tree_node (x_p=0x4157b700) at gtype-ada.h:279 #6 0x00039ef8 in gt_ggc_mx_lang_tree_node (x_p=0x419d12c0) at gtype-ada.h:166 #7 0x0042ab30 in gt_ggc_mx_rtx_def (x_p=0x42508790) at gtype-desc.c:1258 #8 0x00312dac in gt_ggc_ma_reg_known_value (x_p=Variable "x_p" is not available. ) at gt-alias.h:367 #9 0x004212a8 in ggc_mark_roots () at ../../gcc/gcc/ggc-common.c:118 #10 0x0050697c in ggc_collect () at ../../gcc/gcc/ggc-page.c:1880 #11 0x0036732c in cse_main (f=Variable "f" is not available. ) at ../../gcc/gcc/cse.c:6856 #12 0x00367408 in rest_of_handle_cse2 () at ../../gcc/gcc/cse.c:7856 #13 0x0050818c in execute_one_pass (pass=0x784bf4) at ../../gcc/gcc/passes.c:845 #14 0x005082b4 in execute_pass_list (pass=0x784bf4) at ../../gcc/gcc/passes.c:877 #15 0x005082c8 in execute_pass_list (pass=0x7858a0) at ../../gcc/gcc/passes.c:878 #16 0x002c3204 in tree_rest_of_compilation (fndecl=0x4157b700) at ../../gcc/gcc/tree-optimize.c:419 #17 0x00035de0 in gnat_expand_body (gnu_decl=0x4157b700) at ../../gcc/gcc/ada/misc.c:649 ---Type <return> to continue, or q <return> to quit--- #18 0x0054a22c in cgraph_expand_function (node=0x41a0a200) at ../../gcc/gcc/cgraphunit.c:1055 #19 0x0054c99c in cgraph_optimize () at ../../gcc/gcc/cgraphunit.c:1121 #20 0x00036828 in gnat_parse_file (set_yydebug=Variable "set_yydebug" is not available. ) at ../../gcc/gcc/ada/misc.c:245 #21 0x004d5f88 in toplev_main (argc=Variable "argc" is not available. ) at ../../gcc/gcc/toplev.c:990 #22 0x408326e4 in __libc_start_main () from /lib/libc.so.6 #23 0x0001b828 in _start () at ../sysdeps/hppa/elf/start.S:84 (gdb) disass 0x0042a07c 0x0042a0bc Dump of assembler code from 0x42a07c to 0x42a0bc: 0x0042a07c <gt_ggc_mx_basic_block_def+196>: b,l 0x40a884 <fold+2444>,rp 0x0042a080 <gt_ggc_mx_basic_block_def+200>: nop 0x0042a084 <gt_ggc_mx_basic_block_def+204>: ldw 2c(,r4),r26 0x0042a088 <gt_ggc_mx_basic_block_def+208>: cmpib,=,n 0,r26,0x42a094 <gt_ggc_mx_basic_block_def+220> 0x0042a08c <gt_ggc_mx_basic_block_def+212>: b,l 0x429f34 <gt_ggc_mx_edge_prediction>,rp 0x0042a090 <gt_ggc_mx_basic_block_def+216>: nop 0x0042a094 <gt_ggc_mx_basic_block_def+220>: ldw 20(,r4),r4 0x0042a098 <gt_ggc_mx_basic_block_def+224>: cmpb,<>,n r5,r4,0x42a020 <gt_ggc_mx_basic_block_def+104> 0x0042a09c <gt_ggc_mx_basic_block_def+228>: ldw 0(,r4),r26 0x0042a0a0 <gt_ggc_mx_basic_block_def+232>: ldw -54(,sp),rp 0x0042a0a4 <gt_ggc_mx_basic_block_def+236>: ldw -3c(,sp),r4 0x0042a0a8 <gt_ggc_mx_basic_block_def+240>: ldw -38(,sp),r3 0x0042a0ac <gt_ggc_mx_basic_block_def+244>: bv r0(rp) 0x0042a0b0 <gt_ggc_mx_basic_block_def+248>: ldw,mb -40(,sp),r5 0x0042a0b4 <gt_ggc_mx_basic_block_def+252>: b,l 0x40ae04 <fold+3852>,rp 0x0042a0b8 <gt_ggc_mx_basic_block_def+256>: copy r3,r26 End of assembler dump. (gdb) p/x $r4 $1 = 0x0
Dave, does the problem still exist on the 4.2 branch for the PA? I'm now seeing it (same backtrace) on a patched 4.1 branch for x86-64.
Subject: Re: raised STORAGE_ERROR : stack overflow or erroneous memory access > Dave, does the problem still exist on the 4.2 branch for the PA? I'm > now seeing it (same backtrace) on a patched 4.1 branch for x86-64. No. Ada builds successfully on all PA targets that support it on both 4.1 and 4.2. However, my 4.1 builds aren't very recent. All results are posted. Don't remember what fixed comment #13. Possibly, a change just made the issue latent. Dave
> Don't remember what fixed comment #13. Possibly, a change just > made the issue latent. OK, thanks. Here is what I needed on my 4.1 branch: Index: cfgexpand.c =================================================================== --- cfgexpand.c (revision 123291) +++ cfgexpand.c (working copy) @@ -1630,9 +1634,10 @@ tree_expand_cfg (void) /* We're done expanding trees to RTL. */ currently_expanding_to_rtl = 0; - /* Convert tree EH labels to RTL EH labels, and clean out any unreachable - EH regions. */ + /* Convert tree EH labels to RTL EH labels and zap the tree + EH table to avoid dangling references during GC. */ convert_from_eh_region_ranges (); + set_eh_throw_stmt_table (cfun, NULL); rebuild_jump_labels (get_insns ()); find_exception_handler_labels ();