[Bug c/25732] New: Compiling GCC 3.3 per Definitive Guide to GCC book; directory layout per book
Halts compile with In file included from ../../gcc-3.3/gcc/read-rtl.c:24: ../../gcc-3.3/gcc/rtl.h:132: warning: type of bit-field code is a GCC extension ../../gcc-3.3/gcc/rtl.h:135: warning: type of bit-field mode is a GCC extension ../../gcc-3.3/gcc/read-rtl.c: In function fatal_with_file_and_line: ../../gcc-3.3/gcc/read-rtl.c:53: warning: traditional C rejects ISO C style function definitions ../../gcc-3.3/gcc/read-rtl.c: In function read_rtx: ../../gcc-3.3/gcc/read-rtl.c:653: error: invalid lvalue in increment make[2]: *** [read-rtl.o] Error 1 make[2]: Leaving directory `/home/ldmiller/ldmiller/src/gccbuild/gcc' make[1]: *** [stage1_build] Error 2 make[1]: Leaving directory `/home/ldmiller/ldmiller/src/gccbuild/gcc' make: *** [bootstrap] Error 2 [EMAIL PROTECTED]:~/ldmiller/src/gccbuild$ File rtl.c reads: case 'E': { /* Obstack to store scratch vector in. */ struct obstack vector_stack; int list_counter = 0; rtvec return_vec = NULL_RTVEC; c = read_skip_spaces (infile); if (c != '[') fatal_expected_char (infile, '[', c); /* add expressions to a list, while keeping a count */ obstack_init (&vector_stack); while ((c = read_skip_spaces (infile)) && c != ']') { ungetc (c, infile); list_counter++; obstack_ptr_grow (&vector_stack, (PTR) read_rtx (infile)); <<>> } if (list_counter > 0) { return_vec = rtvec_alloc (list_counter); memcpy (&return_vec->elem[0], obstack_finish (&vector_stack), list_counter * sizeof (rtx)); } XVEC (return_rtx, i) = return_vec; obstack_free (&vector_stack, NULL); /* close bracket gotten */ } break; -- Summary: Compiling GCC 3.3 per Definitive Guide to GCC book; directory layout per book Product: gcc Version: 3.3 Status: UNCONFIRMED Severity: blocker Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ldmiller at rcn dot com GCC build triplet: powerpc_unknown GCC host triplet: powerpc_unknown GCC target triplet: powerpc_unknown http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25732
[Bug c/25733] New: missed diagnostic about assignment used as truth value.
int foo(int a, int b) { return ((a = b) ? 1 : 0); // <= missed warning. } int bar(int a, int b) { if (a = b) // warning present. return 1; else return 0; } -- Summary: missed diagnostic about assignment used as truth value. Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pluto at agmk dot net GCC build triplet: i686-pld-linux GCC host triplet: i686-pld-linux GCC target triplet: i686-pld-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25733
[Bug middle-end/25724] Emits call to __cmpdi2 for long long comparison
--- Comment #7 from rguenth at gcc dot gnu dot org 2006-01-10 09:27 --- Yes, this sounds like the way to go. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25724
[Bug fortran/25730] [4.1/4.2 Regression] ICE in gfc_conv_component_ref
--- Comment #6 from paul dot richard dot thomas at cea dot fr 2006-01-10 09:59 --- (In reply to comment #5) > This is a regression as it worked on "4.2.0 20051219" though it did not work > with "4.2.0 20051231". Mea culpa - my patch fails to copy the character length backend declarations of components when it has found a matching derived type declaration. A patch is just now regtesting. Paul -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25730
[Bug c/25733] missed diagnostic about assignment used as truth value.
--- Comment #1 from rguenth at gcc dot gnu dot org 2006-01-10 10:17 --- Confirmed. Same in the C++ frontend. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Severity|normal |enhancement Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 GCC build triplet|i686-pld-linux | GCC host triplet|i686-pld-linux | GCC target triplet|i686-pld-linux | Keywords||diagnostic Known to fail|3.4.5 4.1.0 |2.95.3 3.3.6 3.4.5 4.0.2 ||4.1.0 Last reconfirmed|-00-00 00:00:00 |2006-01-10 10:17:07 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25733
[Bug c/25732] Compiling GCC 3.3 per Definitive Guide to GCC book; directory layout per book
--- Comment #1 from rguenth at gcc dot gnu dot org 2006-01-10 10:19 --- You need an older gcc to build this version of gcc. Or you need to build at least gcc 3.3.6. gcc < 3.3.6 contain invalid C code that is now rejected. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25732
[Bug libstdc++/25306] fill_n, generate_n assume Size is modifiable
--- Comment #2 from chris at bubblescope dot net 2006-01-10 10:37 --- I'm unclear on why it should be convertable to one of the built-in integral types at all.. surely saying that iterator_traits<_OutputIterator>::difference_type (where _OutputIterator is the first parameter to the function) would make more sense? -- chris at bubblescope dot net changed: What|Removed |Added CC||chris at bubblescope dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25306
[Bug c++/25723] Segmentation Fault
--- Comment #3 from ebotcazou at gcc dot gnu dot org 2006-01-10 11:24 --- Confirmed at -O0, but I cannot reproduce it with a cross-compiler. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added CC||ebotcazou at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Known to fail||3.4.2 3.4.3 3.4.5 Known to work||3.2.2 4.0.2 Last reconfirmed|-00-00 00:00:00 |2006-01-10 11:24:47 date|| Summary|g++-3.4.5: Internal error: |Segmentation Fault |Segmentation Fault (program | |cc1plus)| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25723
[Bug c/25734] New: ice for legal kernel code with -Os
just tried to compile a recent Linux kernel [ 2.6.15] with a recent GNU C compiler version 4.2 snapshot 20060107. It said fs/sysfs/inode.c:227: error: missing definition for SSA_NAME: entry_36 in statement: # sysfs_dir_cachep_65 = V_MAY_DEF ; sd_31->s_sibling.next = entry_36; fs/sysfs/inode.c:227: internal compiler error: verify_ssa failed Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. make[2]: *** [fs/sysfs/inode.o] Error 1 It seems the crash only appears when -Os flag is used. Preprocessed source code available on request. -- Summary: ice for legal kernel code with -Os Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dcb314 at hotmail dot com GCC host triplet: x86_x64-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25734
[Bug rtl-optimization/25367] -O1 -funroll-loops leads to segfault
--- Comment #3 from ebotcazou at gcc dot gnu dot org 2006-01-10 11:58 --- Testing a fix. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25367
[Bug rtl-optimization/25367] -O1 -funroll-loops leads to segfault
--- Comment #4 from ebotcazou at gcc dot gnu dot org 2006-01-10 11:58 --- Testing a fix. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |ebotcazou at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED Last reconfirmed|2005-12-13 11:36:07 |2006-01-10 11:58:26 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25367
[Bug bootstrap/24562] makebootstrap failed: make[3]: *** No rule to make target `../zlib/libz.a'
--- Comment #11 from ebotcazou at gcc dot gnu dot org 2006-01-10 11:59 --- Not a GCC issue. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added Status|WAITING |RESOLVED Resolution||WORKSFORME http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24562
[Bug c++/25735] New: Assignment operator broken with multidimensional array strings.
I am not sure if this is correct C++ code anyway, (so please correct me if not) #include #include using namespace std; struct TestStruct { string testStr[2][2]; /* TestStruct &operator= (const TestStruct &src) { testStr[0][0] = src.testStr[0][0]; testStr[0][1] = src.testStr[0][1]; testStr[1][0] = src.testStr[1][0]; testStr[1][1] = src.testStr[1][1]; return *this; } */ }; int main() { TestStruct a, b; a.testStr[0][0] = "1234567890"; b = a; printf("Done \n %s", b.testStr[0][0].c_str()); return 0; } With no assignment operator, the default generated one causes a "double free or corruption" error. Single arrays work fine, but I am also unsure what the correct C++ behaviour should be in this case. -- Summary: Assignment operator broken with multidimensional array strings. Product: gcc Version: 3.4.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dtrebilco at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25735
[Bug c/25645] gcc search for header files in /usr/local/include before command-line specified directories
--- Comment #2 from ebotcazou at gcc dot gnu dot org 2006-01-10 12:28 --- That's the documented behaviour of -I. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added CC||ebotcazou at gcc dot gnu dot ||org Status|UNCONFIRMED |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25645
[Bug fortran/25716] FAIL: gfortran.dg/char_result_11.f90 -O (test for excess errors)
--- Comment #1 from eedelman at gcc dot gnu dot org 2006-01-10 12:32 --- According to the mail http://gcc.gnu.org/ml/fortran/2006-01/msg00123.html, it fails on x86-64 and SPARC64 too. I don't see the error on Linux/x86. -- eedelman at gcc dot gnu dot org changed: What|Removed |Added CC||eedelman at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25716
[Bug c++/10349] testsuite failure in g++.dg/parse/stack1.C
--- Comment #15 from ebotcazou at gcc dot gnu dot org 2006-01-10 12:35 --- Not really a GCC problem. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||WONTFIX http://gcc.gnu.org/bugzilla/show_bug.cgi?id=10349
[Bug tree-optimization/25734] ice for legal kernel code with -Os
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-10 12:38 --- Can you attach the preprocessed source? -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Component|c |tree-optimization Keywords||ice-on-valid-code http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25734
[Bug c++/25735] Assignment operator broken with multidimensional array strings.
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-10 12:45 --- I cannot reproduce this in 3.4.0, 3.4.5 or 4.1.0. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25735
[Bug fortran/25716] FAIL: gfortran.dg/char_result_11.f90 -O (test for excess errors)
--- Comment #2 from ebotcazou at gcc dot gnu dot org 2006-01-10 12:48 --- I see it on SPARC64 and x86-64. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added CC||ebotcazou at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 GCC build triplet|hppa64-hp-hpux11.11 |64-bit platform GCC host triplet|hppa64-hp-hpux11.11 |64-bit platform GCC target triplet|hppa64-hp-hpux11.11 |64-bit platform Last reconfirmed|-00-00 00:00:00 |2006-01-10 12:48:29 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25716
[Bug rtl-optimization/25489] Suboptimal code generated for comparisons
--- Comment #1 from ebotcazou at gcc dot gnu dot org 2006-01-10 13:03 --- Not very pretty indeed. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-01-10 13:03:25 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25489
[Bug fortran/25716] FAIL: gfortran.dg/char_result_11.f90 -O (test for excess errors)
--- Comment #3 from toon at moene dot indiv dot nluug dot nl 2006-01-10 13:04 --- Also, very telling, it fails for s390x-ibm-linux-gnu (64 bits) and *not* for s390-ibm-linux-gnu (32 bits). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25716
[Bug tree-optimization/25736] New: ACATS tests c45342a, c52102b and c52102d fail with struct aliasing enabled
,.,. C45342A ACATS 2.5 06-01-10 12:41:40 C45342A CHECK THAT CATENATION OF NON-NULL OPERANDS YIELDS CORRECT RESULT WITH CORRECT BOUNDS. raised CONSTRAINT_ERROR : c45342a.adb:83 length check failed ,.,. C52102B ACATS 2.5 06-01-10 12:43:29 C52102B CHECK THAT THE ASSIGNMENT OF OVERLAPPING SOURCE AND TARGET VARIABLES (INCLUDING ARRAYS AND SLICES IN VARIOUS COMBINATIONS) SATISFIES THE SEMANTICS OF "COPY" ASSIGNMENT (PART 2: DYNAMIC BOUNDS). raised CONSTRAINT_ERROR : c52102b.adb:114 length check failed ,.,. C52102D ACATS 2.5 06-01-10 12:43:34 C52102D CHECK THAT THE ASSIGNMENT OF OVERLAPPING SOURCE AND TARGET VARIABLES (INCLUDING ARRAYS AND SLICES IN VARIOUS COMBINATIONS) SATISFIES THE SEMANTICS OF "COPY" ASSIGNMENT WHEN INITIAL ASSIGNMENT VALUES ARE DYNAMIC (PART 2: DYNAMIC BOUNDS). raised CONSTRAINT_ERROR : c52102d.adb:122 length check failed -- Summary: ACATS tests c45342a, c52102b and c52102d fail with struct aliasing enabled Product: gcc Version: 4.2.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rguenth at gcc dot gnu dot org GCC target triplet: x86_64-*-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25736
[Bug c++/25735] Assignment operator broken with multidimensional array strings.
--- Comment #2 from pcarlini at suse dot de 2006-01-10 13:07 --- (In reply to comment #1) > I cannot reproduce this in 3.4.0, 3.4.5 or 4.1.0. Same here, mainline too. Valgrind is also fine, on x86. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25735
[Bug tree-optimization/25737] New: ACATS tests c974001 and c974013 do not terminate with struct aliasing enabled
,.,. C974001 ACATS 2.5 06-01-10 12:54:17 C974001 Asynchronous Select: Trigger is delay_relative which completes before abortable part. (killed) ,.,. C974013 ACATS 2.5 06-01-10 13:57:39 C974013 Asynchronous Select: Trigger is delay_until which completes before abortable part. (killed) -- Summary: ACATS tests c974001 and c974013 do not terminate with struct aliasing enabled Product: gcc Version: 4.2.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rguenth at gcc dot gnu dot org GCC target triplet: x86_64-*-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25737
[Bug fortran/25716] FAIL: gfortran.dg/char_result_11.f90 -O (test for excess errors)
--- Comment #4 from pinskia at gcc dot gnu dot org 2006-01-10 13:08 --- I can reproduce it with a native compiler for powerpc-darwin but with -m64 which enables LP64 powerpc-Darwin. It is a segfault writting out the module. Backtrace: #0 0x00052ce0 in mio_symtree_ref (stp=0x42909e3c) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:2115 #1 0x00053898 in mio_expr (ep=0x42909ef0) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:2546 #2 0x00052424 in mio_array_ref (ar=0x42909ea4) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:1809 #3 0x0005310c in mio_ref (rp=0xb4a0) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:2257 #4 0x000531e0 in mio_ref_list (rp=0x42909df0) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:2286 #5 0x000539e4 in mio_expr (ep=0x42909bb0) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:2582 #6 0x00052054 in mio_charlen (clp=0x4290873c) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:1668 #7 0x00052200 in mio_typespec (ts=0x42908730) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:1726 #8 0x00053fc4 in mio_symbol (sym=0x42908720) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:2802 #9 0x00055270 in write_symbol (n=13, sym=0x42908720) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:3468 #10 0x000553dc in write_symbol0 (st=0x429087a0) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:3507 #11 0x000552c8 in write_symbol0 (st=0x42908840) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:3486 #12 0x000552d4 in write_symbol0 (st=0x429085f0) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:3487 #13 0x000552c8 in write_symbol0 (st=0x429016c0) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:3486 #14 0x000552c8 in write_symbol0 (st=0x42907780) at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:3486 #15 0x000558e4 in write_module () at /Users/pinskia/src/gcc/alias/gcc/gcc/fortran/module.c:3653 -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org GCC build triplet|64-bit platform | GCC host triplet|64-bit platform | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25716
[Bug tree-optimization/25738] New: ACATS test cc50a01 fails with struct aliasing enabled
,.,. CC50A01 ACATS 2.5 06-01-10 14:03:59 CC50A01 Check that a formal parameter of a library-level generic unit may be a formal tagged private type. - CC50A01 Testing definite tagged type... * CC50A01Wrong result after Pop of empty stack. - CC50A01 Testing indefinite tagged type... CC50A01 FAILED . -- Summary: ACATS test cc50a01 fails with struct aliasing enabled Product: gcc Version: 4.2.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rguenth at gcc dot gnu dot org GCC target triplet: x86_64-*-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25738
[Bug rtl-optimization/24376] wrong-code unless -fno-sched-interblock
--- Comment #5 from nickc at redhat dot com 2006-01-10 13:15 --- Created an attachment (id=10605) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10605&action=view) When computing region not to schedule, include earlier cc0 setters -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24376
[Bug ada/23519] Dividing fixed point number by zero returns zero.
--- Comment #10 from pinskia at gcc dot gnu dot org 2006-01-10 13:16 --- No feedback in 3 months. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|WAITING |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23519
[Bug rtl-optimization/24376] wrong-code unless -fno-sched-interblock
--- Comment #6 from nickc at redhat dot com 2006-01-10 13:19 --- Hi Libor, I have uploaded a patch which should fix the problem. It is not the most elegant solution but I believe that it should work for now. The patch amends the code in add_branch_dependencies() which searches back from the end of a block to the first instruction which is not a branch. call, cc0 setter, clobber or use. The amendment is that once such an instruction is found, the search is continued backwards until all cc0 setters have been found. In this way none of the cc0 setter/user pairs in the block are disturbed. Please let me know how you get on with this patch and if it solves the problem for you. Cheers Nick -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24376
[Bug c++/25735] Assignment operator broken with multidimensional array strings.
--- Comment #3 from dtrebilco at gmail dot com 2006-01-10 13:33 --- (In reply to comment #2) > (In reply to comment #1) > > I cannot reproduce this in 3.4.0, 3.4.5 or 4.1.0. > > Same here, mainline too. Valgrind is also fine, on x86. > If it helps I am using compile options: -O0 -g3 -Wall -c -fmessage-length=0 with Compiler 3.4.2 20041017 (Red Hat 3.4.2-6.fc3) - Fedora Core 3 (x86) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25735
[Bug tree-optimization/25739] New: Memory leak in bt_load.c(augment_live_range)
As reported on gcc ml by Christophe Jaillet <[EMAIL PROTECTED]>: gcc leaks memory augment_live_range static void augment_live_range (bitmap live_range, HARD_REG_SET *btrs_live_in_range, basic_block head_bb, basic_block new_bb, int full_range) { basic_block *worklist, *tos; tos = worklist = xmalloc (sizeof (basic_block) * (n_basic_blocks + 1)); if (dominated_by_p (CDI_DOMINATORS, new_bb, head_bb)) { if (new_bb == head_bb) { if (full_range) IOR_HARD_REG_SET (*btrs_live_in_range, btrs_live[new_bb->index]); return; < Here we leak -- Summary: Memory leak in bt_load.c(augment_live_range) Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pth at suse dot de GCC build triplet: x86_64-suse-linux GCC host triplet: x86_64-suse-linux GCC target triplet: x86_64-suse-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25739
[Bug rtl-optimization/25739] Memory leak in bt_load.c(augment_live_range)
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-10 14:06 --- I should note that bt-load.c is only invoked by default on sh-*. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added GCC build triplet|x86_64-suse-linux | GCC host triplet|x86_64-suse-linux | GCC target triplet|x86_64-suse-linux | Keywords||memory-hog http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25739
[Bug rtl-optimization/25739] Memory leak in bt_load.c(augment_live_range)
--- Comment #2 from rguenth at gcc dot gnu dot org 2006-01-10 14:25 --- Confirmed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-01-10 14:25:04 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25739
[Bug rtl-optimization/25739] Memory leak in bt_load.c(augment_live_range)
--- Comment #3 from rguenth at gcc dot gnu dot org 2006-01-10 14:26 --- Created an attachment (id=10607) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10607&action=view) patch patch, untested but obvious. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25739
[Bug c/25645] gcc search for header files in /usr/local/include before command-line specified directories
--- Comment #3 from ebotcazou at gcc dot gnu dot org 2006-01-10 14:28 --- I was a bit terse: -I is ignored for $(prefix)/include. See the entry for --with-local-prefix in http://gcc.gnu.org/install/configure.html . If you don't want /usr/local/include to be searched, "configure it away" by specifying --with-local-prefix. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25645
[Bug bootstrap/25740] New: Bus Error compiling gcc/config/sparc/sol2-c1.asm
Building GCC 3.4.5 on Solaris 2.10 Configure line: configure --prefix=/usr/local --enable-languages=c,c++ Directory: gcc-3.4.5/build/gcc Triggering line: /opt/apps/src/gcc-3.4.5/build/gcc/xgcc -B/opt/apps/src/gcc-3.4.5/build/gcc/ -B/usr/local/sparc-sun-solaris2.10/bin/ -B/usr/local/sparc-sun-solaris2.10/lib/ -isystem /usr/local/sparc-sun-solaris2.10/include -isystem /usr/local/sparc-sun-solaris2.10/sys-include -c -o crt1.o -x assembler-with-cpp ../../gcc/config/sparc/sol2-c1.asm Compiler Output: cc1: internal compiler error: Bus Error Please submit a full bug report, with preprocessed source if appropriate. Preprocessed source: None available from -save-temps -- Summary: Bus Error compiling gcc/config/sparc/sol2-c1.asm Product: gcc Version: 3.4.5 Status: UNCONFIRMED Severity: major Priority: P3 Component: bootstrap AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: darren at mambo dot net GCC build triplet: sparc-sun-solaris2.10 GCC host triplet: sparc-sun-solaris2.10 GCC target triplet: sparc-sun-solaris2.10 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25740
[Bug testsuite/25741] New: Gcc testsuite isn't parallel build safe
Same filename is used in different tests. When "make -j4 check" was used, I got FAIL: g++.dg/debug/trivial.C -gstabs+1 execution test FAIL: gcc.dg/debug/trivial.c -gdwarf-2 execution test FAIL: gcc.dg/debug/trivial.c -gdwarf-2 -O3 execution test FAIL: g++.dg/debug/trivial.C -gstabs+1 -O3 execution test FAIL: gcc.dg/debug/trivial.c -gdwarf-23 execution test FAIL: g++.dg/debug/trivial.C -gstabs+ execution test FAIL: gcc.dg/debug/trivial.c -gdwarf-23 -O3 execution test FAIL: g++.dg/debug/trivial.C -gstabs+ -O2 execution test FAIL: gcc.dg/debug/trivial.c -gstabs1 execution test FAIL: gcc.dg/debug/trivial.c -gstabs1 -O (test for excess errors) FAIL: g++.dg/debug/trivial.C -gstabs+ -O3 execution test FAIL: gcc.dg/debug/trivial.c -gstabs1 -O3 execution test FAIL: g++.dg/debug/trivial.C -gstabs+3 execution test FAIL: gcc.dg/debug/trivial.c -gstabs -O execution test FAIL: g++.dg/debug/trivial.C -gstabs+3 -O2 execution test FAIL: gcc.dg/debug/trivial.c -gstabs -O3 execution test FAIL: gcc.dg/debug/trivial.c -gstabs3 (test for excess errors) Executing on host: /export/build/gnu/gcc-4.1/build-x86_64-linux/gcc/xgcc -B/export/build/gnu/gcc-4.1/build-x86_64-linux/gcc/ /net/gnu-13/export/gnu/src/gcc-4.1/gcc/gcc/testsuite/gcc.dg/debug/trivial.c -gstabs1 -O -fno-show-column -lm -o ./trivial.exe(timeout = 300) /usr/local/bin/ld: reopening ./trivial.exe: Text file busy^M ^M /usr/local/bin/ld: final link failed: Text file busy^M collect2: ld returned 1 exit status^M compiler exited with status 1 -- Summary: Gcc testsuite isn't parallel build safe Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: testsuite AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: hjl at lucon dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25741
[Bug bootstrap/25740] Bus Error compiling gcc/config/sparc/sol2-c1.asm
--- Comment #1 from ebotcazou at gcc dot gnu dot org 2006-01-10 16:05 --- Please try again, GCC 3.4.5 is known to bootstrap fine on SPARC/Solaris 10. If it's reproducible, post a backtrace at the crashpoint. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added CC||ebotcazou at gcc dot gnu dot ||org Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25740
[Bug bootstrap/25740] Bus Error compiling gcc/config/sparc/sol2-c1.asm
--- Comment #2 from darren at mambo dot net 2006-01-10 16:12 --- Backtrace will take a few days - I'm on a deadline to get this system installed, so right now I'm compiling 3.4.4 and hoping it doesn't have the same bug. Once the system's ready, I'll re-try compiling 3.4.5 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25740
[Bug libstdc++/25306] fill_n, generate_n assume Size is modifiable
--- Comment #3 from sebor at roguewave dot com 2006-01-10 16:14 --- (In reply to comment #2) I'm not sure what you mean. Could you show what one of the algorithms would look like with a Size that's not convertible to an integer? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25306
[Bug target/25722] Stackpointer is not restored correct at end of function
--- Comment #2 from berndtrog at yahoo dot com 2006-01-10 16:56 --- Only 3.4.x seems allocate a frame pointer in the function 'Evaluate'. It would be interesting if this bug can be triggered in 4.x! -- berndtrog at yahoo dot com changed: What|Removed |Added CC||berndtrog at yahoo dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25722
[Bug bootstrap/25740] Bus Error compiling gcc/config/sparc/sol2-c1.asm
--- Comment #3 from ebotcazou at gcc dot gnu dot org 2006-01-10 16:58 --- > Backtrace will take a few days - I'm on a deadline to get this system > installed, so right now I'm compiling 3.4.4 and hoping it doesn't have > the same bug. Well, unless proven otherwise, GCC 3.4.5 has no bug either. hikaru% uname -a SunOS hikaru 5.10 Generic sun4u sparc SUNW,Sun-Fire-V240 hikaru% gcc/xgcc -v Using built-in specs. Configured with: /home/eric/gcc-3.4.5/configure --prefix=/usr/local --enable-languages=c Thread model: posix gcc version 3.4.5 > Once the system's ready, I'll re-try compiling 3.4.5 Thanks. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25740
[Bug libstdc++/25306] fill_n, generate_n assume Size is modifiable
--- Comment #4 from chris at bubblescope dot net 2006-01-10 17:00 --- For the record, I was thinking of: template _OutputIterator fill_n(_OutputIterator __first, _Size __n, const _Tp& __value) { iterator_traits<_OutputIterator>::difference_type __count(__n) for (; __count > 0; --__count, ++__first) *__first = __value; return __first; } But now I've decided thats no good, as difference_type isn't designed for OutputIterators. Sorry. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25306
[Bug libstdc++/25306] fill_n, generate_n assume Size is modifiable
--- Comment #5 from gdr at cs dot tamu dot edu 2006-01-10 17:13 --- Subject: Re: fill_n, generate_n assume Size is modifiable "chris at bubblescope dot net" <[EMAIL PROTECTED]> writes: | But now I've decided thats no good, as difference_type isn't designed for | OutputIterators. Indeed; and that is arguably a bug in the standard specification. -- Gaby -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25306
[Bug libstdc++/23591] exceptions in plugins in threads cause segmentation violation by leaving bad exit handler for the pthread
--- Comment #7 from bkoz at gcc dot gnu dot org 2006-01-10 17:14 --- Subject: Bug 23591 Author: bkoz Date: Tue Jan 10 17:14:00 2006 New Revision: 109545 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=109545 Log: 2006-01-10 Benjamin Kosnik <[EMAIL PROTECTED]> Ulrich Drepper <[EMAIL PROTECTED]> PR libstdc++/23591 * scripts/create_testsuite_files: Support for "C" test files. * testsuite/lib/libstdc++.exp: Same. * testsuite/libstdc++-dg/normal.exp: Same. * testsuite/ext/mt_allocator/22309_thread.cc: Update names. * testsuite/19_diagnostics/23591_thread-1.c: New. * testsuite/testsuite_shared.cc: Add tests, rename existing functions. * libsupc++/eh_globals.cc: Make global thread local if possible. * configure.ac: Use GCC_CHECK_TLS. * acinclude.m4: Include tls.m4. * configure: Regenerate. * config.h.in: Same. Added: branches/gcc-4_1-branch/libstdc++-v3/testsuite/19_diagnostics/23591_thread-1.c Modified: branches/gcc-4_1-branch/libstdc++-v3/ChangeLog branches/gcc-4_1-branch/libstdc++-v3/Makefile.in branches/gcc-4_1-branch/libstdc++-v3/acinclude.m4 branches/gcc-4_1-branch/libstdc++-v3/aclocal.m4 branches/gcc-4_1-branch/libstdc++-v3/config.h.in branches/gcc-4_1-branch/libstdc++-v3/configure branches/gcc-4_1-branch/libstdc++-v3/configure.ac branches/gcc-4_1-branch/libstdc++-v3/include/Makefile.in branches/gcc-4_1-branch/libstdc++-v3/libmath/Makefile.in branches/gcc-4_1-branch/libstdc++-v3/libsupc++/Makefile.in branches/gcc-4_1-branch/libstdc++-v3/libsupc++/eh_globals.cc branches/gcc-4_1-branch/libstdc++-v3/po/Makefile.in branches/gcc-4_1-branch/libstdc++-v3/scripts/create_testsuite_files branches/gcc-4_1-branch/libstdc++-v3/src/Makefile.in branches/gcc-4_1-branch/libstdc++-v3/testsuite/Makefile.in branches/gcc-4_1-branch/libstdc++-v3/testsuite/ext/mt_allocator/22309_thread.cc branches/gcc-4_1-branch/libstdc++-v3/testsuite/lib/libstdc++.exp branches/gcc-4_1-branch/libstdc++-v3/testsuite/libstdc++-dg/normal.exp branches/gcc-4_1-branch/libstdc++-v3/testsuite/testsuite_shared.cc -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23591
[Bug tree-optimization/25734] ice for legal kernel code with -Os
-- steven at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25734
[Bug target/20016] Compiling libgcc2.c with -Os for avr-gcc?
--- Comment #4 from berndtrog at yahoo dot com 2006-01-10 17:19 --- Roger Sayle commited the patch on 2005-12-17. Thanks! -- berndtrog at yahoo dot com changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.2.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20016
[Bug libstdc++/24345] libstdc++ build failure with IRIX ld(1)
--- Comment #5 from bkoz at gcc dot gnu dot org 2006-01-10 17:22 --- I'd like to either close this or change it to bootstrap, in the attempt to flag the attention of the top-level build people for this bug. I don't consider this a libstdc++ problem. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24345
[Bug testsuite/25741] Gcc testsuite isn't parallel build safe
--- Comment #1 from steven at gcc dot gnu dot org 2006-01-10 17:25 --- One of trivial.[cC] has to be renamed. -- steven at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-01-10 17:25:32 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25741
[Bug libstdc++/23591] exceptions in plugins in threads cause segmentation violation by leaving bad exit handler for the pthread
--- Comment #8 from bkoz at gcc dot gnu dot org 2006-01-10 17:25 --- Fixed in 4.1.x and mainline. There is another found while looking at this bug, in that multi-threaded apps with multiple, pending exceptions will leak active and in-flight exceptions at termination. I'll open a separate bug report for that. -- bkoz at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23591
[Bug libstdc++/23591] exceptions in plugins in threads cause segmentation violation by leaving bad exit handler for the pthread
--- Comment #9 from bkoz at gcc dot gnu dot org 2006-01-10 17:26 --- Fixed. -- bkoz at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23591
[Bug libstdc++/24345] libstdc++ build failure with IRIX ld(1)
--- Comment #6 from bugzilla-gcc at thewrittenword dot com 2006-01-10 17:32 --- (In reply to comment #5) > I'd like to either close this or change it to bootstrap, in the attempt to > flag > the attention of the top-level build people for this bug. > > I don't consider this a libstdc++ problem. Ok. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24345
[Bug target/21715] [4.0/4.1 regression] code-generation performance regression
--- Comment #8 from steven at gcc dot gnu dot org 2006-01-10 17:50 --- The new reassociation pass, or the removal of DOM's reassociation bits, fixed this on the trunk. We get poorer initial RTL generation out of GCC 4.1 and we never manage to fix it up: The .final_cleanup from GCC 4.1 and GCC 4.0: ;; Function foo (foo) foo (v) { : return v & -v; } And the .final_cleanup from GCC 4.2: ;; Function foo (foo) foo (v) { : return -v & v; } (insn 12 11 13 (parallel [ (set (reg:DI 60) -(and:DI (reg/v:DI 59 [ v ]) -(reg:DI 61))) +(and:DI (reg:DI 61) +(reg/v:DI 59 [ v ]))) (clobber (reg:CC 17 flags)) ]) -1 (nil) (nil)) So this regression is not caused by the register allocator, but it does play a role: In the .combine and .ce2 RTL dumps, the difference is still there: (insn 12 11 16 (parallel [ (insn 12 11 16 (parallel [ (set (reg:DI 60) -(and:DI (reg/v:DI 59 [ v ]) -(reg:DI 61))) +(and:DI (reg:DI 61) +(reg/v:DI 59 [ v ]))) (clobber (reg:CC 17 flags)) -(expr_list:REG_DEAD (reg/v:DI 59 [ v ]) -(expr_list:REG_DEAD (reg:DI 61) +(expr_list:REG_DEAD (reg:DI 61) +(expr_list:REG_DEAD (reg/v:DI 59 [ v ]) (expr_list:REG_UNUSED (reg:CC 17 flags) (nil) Then in the .regmove RTL dump something changes: (insn:HI 12 11 16 (parallel [ -(set (reg/v:DI 59 [ v ]) -(and:DI (reg/v:DI 59 [ v ]) -(reg:DI 61))) +(set (reg:DI 61) +(and:DI (reg:DI 61) +(reg/v:DI 59 [ v ]))) (clobber (reg:CC 17 flags)) ]) 297 {*anddi_1_rex64} (insn_list:REG_DEP_TRUE 11 (nil)) -(expr_list:REG_DEAD (reg:DI 61) +(expr_list:REG_DEAD (reg/v:DI 59 [ v ]) (expr_list:REG_UNUSED (reg:CC 17 flags) (nil This small difference eventually leads to a different choice of register allocation. The choice that GCC 4.2 makes is superior because it makes the move to the result a dead instruction. The .greg RTL dump shows this: -(insn:HI 12 11 16 0 (parallel [ -(set (reg/v:DI 5 di [orig:59 v ] [59]) -(and:DI (reg/v:DI 5 di [orig:59 v ] [59]) -(reg:DI 0 ax [61]))) +(insn:HI 12 11 16 2 (parallel [ +(set (reg:DI 0 ax [61]) +(and:DI (reg:DI 0 ax [61]) +(reg/v:DI 5 di [orig:59 v ] [59]))) (clobber (reg:CC 17 flags)) ]) 297 {*anddi_1_rex64} (insn_list:REG_DEP_TRUE 11 (nil)) (nil)) -(insn:HI 19 16 25 0 (set (reg/i:DI 0 ax [ ]) -(reg/v:DI 5 di [orig:59 v ] [59])) 81 {*movdi_1_rex64} -(insn_list:REG_DEP_TRUE 12 (nil)) -(nil)) -- steven at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|18427 | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21715
[Bug bootstrap/25740] Bus Error compiling gcc/config/sparc/sol2-c1.asm
--- Comment #4 from darren at mambo dot net 2006-01-10 17:52 --- Well, 3.4.4 craps out on the same file, unable to malloc after exhausting the 8Gb swap space. Note that the difference between your system and this one is I have "--enable-languages=c,c++". I do have a running gcc 3.4.4 on the same system where I only had "--enable-languages=c" -bash-3.00$ /usr/local/bin/gcc -v ## Running version Reading specs from /usr/local/lib/gcc/sparcv9-sun-solaris2.10/3.4.4/specs Configured with: ./configure --prefix=/usr/local --enable-languages=c sparcv9-sun-solaris2.10 Thread model: posix gcc version 3.4.4 -bash-3.00$ uname -a SunOS challenger 5.10 Generic_118822-20 sun4u sparc SUNW,Ultra-250 Line that dies: /opt/apps/src/gcc-3.4.4/build/gcc/xgcc -B/opt/apps/src/gcc-3.4.4/build/gcc/ -B/usr/local/sparc-sun-solaris2.10/bin/ -B/usr/local/sparc-sun-solaris2.10/lib/ -isystem /usr/local/sparc-sun-solaris2.10/include -isystem /usr/local/sparc-sun-solaris2.10/sys-include -c -o crt1.o -x assembler-with-cpp ../../gcc/config/sparc/sol2-c1.asm cc1: out of memory allocating 134217728 bytes after a total of 9127182336 bytes gmake[1]: *** [crt1.o] Error 1 gmake[1]: Leaving directory `/opt/apps/src/gcc-3.4.4/build/gcc' gmake: *** [all-gcc] Error 2 I will try re-configuring this 3.4.4 with sparcv9-sun-solaris2.10 instead of sparc-sun-solaris and see if that makes a difference. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25740
[Bug bootstrap/25740] Bus Error compiling gcc/config/sparc/sol2-c1.asm
--- Comment #5 from ebotcazou at gcc dot gnu dot org 2006-01-10 18:09 --- > Note that the difference between your system and this one is I have > "--enable-languages=c,c++". That doesn't matter here. > I will try re-configuring this 3.4.4 with sparcv9-sun-solaris2.10 instead of > sparc-sun-solaris and see if that makes a difference. Of course, that makes a big difference! sparc-sun-solaris2.9 is a 32-bit compiler while sparcv9-sun-solaris2.10 is a 64-bit compiler, you cannot compile one with the other, you need to specify either CC="gcc -m32" or CC="gcc -m64" at configure time. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added Status|WAITING |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25740
[Bug target/25718] invalid assembly for unsigned-minimum expressions.
--- Comment #2 from hp at gcc dot gnu dot org 2006-01-10 18:12 --- Subject: Bug 25718 Author: hp Date: Tue Jan 10 18:12:21 2006 New Revision: 109547 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=109547 Log: PR target/25718 * config/cris/cris.md ("uminsi3"): Don't use 8- or 16-bit sizes for a negative bound. Modified: trunk/gcc/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25718
[Bug target/25718] invalid assembly for unsigned-minimum expressions.
--- Comment #3 from hp at gcc dot gnu dot org 2006-01-10 18:13 --- Subject: Bug 25718 Author: hp Date: Tue Jan 10 18:13:16 2006 New Revision: 109548 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=109548 Log: PR target/25718 * config/cris/cris.md ("uminsi3"): Don't use 8- or 16-bit sizes for a negative bound. Modified: trunk/gcc/config/cris/cris.md -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25718
[Bug target/25718] invalid assembly for unsigned-minimum expressions.
--- Comment #4 from hp at gcc dot gnu dot org 2006-01-10 18:14 --- Subject: Bug 25718 Author: hp Date: Tue Jan 10 18:14:42 2006 New Revision: 109549 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=109549 Log: PR target/25718 * gcc.dg/torture/pr25718-1.c: New test. Added: trunk/gcc/testsuite/gcc.dg/torture/pr25718-1.c Modified: trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25718
[Bug rtl-optimization/25367] -O1 -funroll-loops leads to segfault
--- Comment #5 from ebotcazou at gcc dot gnu dot org 2006-01-10 18:50 --- Subject: Bug 25367 Author: ebotcazou Date: Tue Jan 10 18:50:07 2006 New Revision: 109551 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=109551 Log: PR rtl-optimization/25367 * config/sparc/sparc.h (HARD_REGNO_RENAME_OK): New macro. Modified: trunk/gcc/ChangeLog trunk/gcc/config/sparc/sparc.h -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25367
[Bug rtl-optimization/25367] -O1 -funroll-loops leads to segfault
--- Comment #6 from ebotcazou at gcc dot gnu dot org 2006-01-10 18:51 --- Subject: Bug 25367 Author: ebotcazou Date: Tue Jan 10 18:51:33 2006 New Revision: 109552 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=109552 Log: PR rtl-optimization/25367 * config/sparc/sparc.h (HARD_REGNO_RENAME_OK): New macro. Modified: branches/gcc-4_1-branch/gcc/ChangeLog branches/gcc-4_1-branch/gcc/config/sparc/sparc.h -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25367
[Bug rtl-optimization/25367] -O1 -funroll-loops leads to segfault
--- Comment #7 from ebotcazou at gcc dot gnu dot org 2006-01-10 18:53 --- Subject: Bug 25367 Author: ebotcazou Date: Tue Jan 10 18:53:24 2006 New Revision: 109553 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=109553 Log: PR rtl-optimization/25367 * config/sparc/sparc.h (HARD_REGNO_RENAME_OK): New macro. Modified: branches/gcc-4_0-branch/gcc/ChangeLog branches/gcc-4_0-branch/gcc/config/sparc/sparc.h -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25367
[Bug rtl-optimization/25367] -O1 -funroll-loops leads to segfault
--- Comment #8 from ebotcazou at gcc dot gnu dot org 2006-01-10 18:55 --- See http://gcc.gnu.org/ml/gcc-patches/2006-01/msg00545.html -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25367
[Bug target/25718] invalid assembly for unsigned-minimum expressions.
--- Comment #5 from hp at gcc dot gnu dot org 2006-01-10 19:01 --- Fixed in main trunk; 4.1 and 4.0 pending. -- hp at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.2.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25718
[Bug testsuite/25741] Gcc testsuite isn't parallel build safe
--- Comment #2 from hjl at lucon dot org 2006-01-10 19:06 --- Some tests use PID in output filenames. I am testing a patch now. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25741
[Bug testsuite/25741] Gcc testsuite isn't parallel build safe
--- Comment #3 from hjl at lucon dot org 2006-01-10 19:22 --- Using PID in output filenames requires many changes. Renaming is simpler. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25741
[Bug testsuite/25741] Gcc testsuite isn't parallel build safe
--- Comment #4 from hjl at lucon dot org 2006-01-10 20:20 --- Created an attachment (id=10608) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10608&action=view) List of tests with the same prefix This is a list of ests with the same prefix. There are quite a few. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25741
[Bug target/25042] [3.4/4.0/4.1/4.2 Regression] __float128 ICE on x86
--- Comment #4 from steven at gcc dot gnu dot org 2006-01-10 20:26 --- Honza, are you going to do something useful with your patch from comment #3? -- steven at gcc dot gnu dot org changed: What|Removed |Added CC||hubicka at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords||patch Last reconfirmed|-00-00 00:00:00 |2006-01-10 20:26:18 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25042
[Bug tree-optimization/21470] -fargument-noalias-global has no effect for the vectorizer
--- Comment #5 from pinskia at gcc dot gnu dot org 2006-01-10 20:31 --- I have a fix which comes from Richard Guenther and modified for -fargument-noalias-global instead of restrict as it was using the wrong test. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |pinskia at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21470
[Bug tree-optimization/17064] -falias-noargument-global doesn't eliminate dead stores/loads
--- Comment #7 from pinskia at gcc dot gnu dot org 2006-01-10 20:35 --- I have a semi fix for this one but the variable is still being marked as a call clobber but that is because of a FIXME in the source. I am going to take it anyways but not close it once I get my patch approved. It does fix comment #3 though. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|dnovillo at gcc dot gnu dot |pinskia at gcc dot gnu dot |org |org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17064
[Bug target/23451] [3.4/4.0/4.1/4.2 regression] Redundant reloading from stack frame
--- Comment #3 from steven at gcc dot gnu dot org 2006-01-10 20:36 --- GCC 4.2 (trunk) produces this kind of redundant loads: ... movl-20(%ebp), %eax testl %eax, %eax je .L10 movl-20(%ebp), %eax movl%eax, (%esp) callstrlen ... And so does GCC 3.3-hammer_branch: ... movl-16(%ebp), %ecx xorl%ebx, %ebx testl %ecx, %ecx je .L8 movl-16(%ebp), %eax movl%eax, (%esp) callstrlen ... -- steven at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-01-10 20:36:18 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23451
[Bug tree-optimization/17064] -falias-noargument-global doesn't eliminate dead stores/loads
--- Comment #8 from pinskia at gcc dot gnu dot org 2006-01-10 20:36 --- I should note that the patch is not fully done as I still need to be able to add it to the list of variables to remove before running the may_alias again (like the HEAP variables). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17064
[Bug target/23451] [3.4/4.0/4.1/4.2 regression] Redundant reloading from stack frame
--- Comment #4 from steven at gcc dot gnu dot org 2006-01-10 20:57 --- On the trunk, we have the following situation in the .csa RTL dump (on AMD64 -m32 -march=i686): ;; Start of basic block 5, registers live: 4 [si] 5 [di] 6 [bp] 7 [sp] 20 [frame] (code_label:HI 38 37 39 5 2 "" [1 uses]) (note:HI 39 38 41 5 [bb 5] NOTE_INSN_BASIC_BLOCK) (insn:HI 41 39 42 5 (set (reg:CCZ 17 flags) (compare:CCZ (mem/f/c:SI (plus:SI (reg/f:SI 6 bp) (const_int -20 [0xffec])) [7 val+0 S4 A8]) (const_int 0 [0x0]))) 3 {*cmpsi_ccno_1} (nil) (nil)) (jump_insn:HI 42 41 44 5 (set (pc) (if_then_else (ne (reg:CCZ 17 flags) (const_int 0 [0x0])) (label_ref 63) (pc))) 511 {*jcc_1} (insn_list:REG_DEP_TRUE 41 (nil)) (expr_list:REG_DEAD (reg:CCZ 17 flags) (expr_list:REG_BR_PROB (const_int 8100 [0x1fa4]) (nil ;; End of basic block 5, registers live: 4 [si] 5 [di] 6 [bp] 7 [sp] 20 [frame] (...) ;; Start of basic block 7, registers live: 4 [si] 5 [di] 6 [bp] 7 [sp] 20 [frame] (code_label:HI 63 119 64 7 5 "" [1 uses]) (note:HI 64 63 125 7 [bb 7] NOTE_INSN_BASIC_BLOCK) (insn 125 64 66 7 (set (reg:SI 0 ax) (mem/f/c:SI (plus:SI (reg/f:SI 6 bp) (const_int -20 [0xffec])) [7 val+0 S4 A8])) 40 {*movsi_1} (nil) (nil)) (insn:HI 66 125 67 7 (set (mem:SI (reg/f:SI 7 sp) [0 S4 A32]) (reg:SI 0 ax)) 40 {*movsi_1} (nil) (expr_list:REG_DEAD (reg:SI 0 ax) (nil))) (call_insn/u:HI 67 66 68 7 (set (reg:SI 0 ax) (call (mem:QI (symbol_ref:SI ("strlen") [flags 0x41] ) [0 S1 A8]) (const_int 4 [0x4]))) 731 {*call_value_0} (nil) (expr_list:REG_EH_REGION (const_int 0 [0x0]) (nil)) (expr_list:REG_DEP_TRUE (use (mem:BLK (scratch) [0 A8])) (nil))) (...) Then we peephole2 the MEM for the compare to a set, see the .peephole2 dump: ;; Start of basic block 5, registers live: 4 [si] 5 [di] 6 [bp] 7 [sp] 20 [frame] (code_label:HI 38 37 39 5 2 "" [1 uses]) (note:HI 39 38 142 5 [bb 5] NOTE_INSN_BASIC_BLOCK) (insn 142 39 143 5 (set (reg:SI 0 ax) (mem/f/c:SI (plus:SI (reg/f:SI 6 bp) (const_int -20 [0xffec])) [7 val+0 S4 A8])) -1 (nil) (nil)) (insn 143 142 42 5 (set (reg:CCZ 17 flags) (compare:CCZ (reg:SI 0 ax) (const_int 0 [0x0]))) -1 (nil) (expr_list:REG_DEAD (reg:SI 0 ax) (nil))) (jump_insn:HI 42 143 44 5 (set (pc) (if_then_else (ne (reg:CCZ 17 flags) (const_int 0 [0x0])) (label_ref 63) (pc))) 511 {*jcc_1} (insn_list:REG_DEP_TRUE 41 (nil)) (expr_list:REG_DEAD (reg:CCZ 17 flags) (expr_list:REG_BR_PROB (const_int 8100 [0x1fa4]) (nil ;; End of basic block 5, registers live: 4 [si] 5 [di] 6 [bp] 7 [sp] 20 [frame] (...) ;; Start of basic block 7, registers live: 4 [si] 5 [di] 6 [bp] 7 [sp] 20 [frame] (code_label:HI 63 119 64 7 5 "" [1 uses]) (note:HI 64 63 125 7 [bb 7] NOTE_INSN_BASIC_BLOCK) (insn 125 64 66 7 (set (reg:SI 0 ax) (mem/f/c:SI (plus:SI (reg/f:SI 6 bp) (const_int -20 [0xffec])) [7 val+0 S4 A8])) 40 {*movsi_1} (nil) (nil)) (insn:HI 66 125 67 7 (set (mem:SI (reg/f:SI 7 sp) [0 S4 A32]) (reg:SI 0 ax)) 40 {*movsi_1} (nil) (expr_list:REG_DEAD (reg:SI 0 ax) (nil))) (call_insn/u:HI 67 66 68 7 (set (reg:SI 0 ax) (call (mem:QI (symbol_ref:SI ("strlen") [flags 0x41] ) [0 S1 A8]) (const_int 4 [0x4]))) 731 {*call_value_0} (nil) (expr_list:REG_EH_REGION (const_int 0 [0x0]) (nil)) (expr_list:REG_DEP_TRUE (use (mem:BLK (scratch) [0 A8])) (nil))) Essentially the same thing happens in GCC 3.3: Up to peephole2, the first MEM is burried in the compare, and split out by some peephole. I don't think this is related to register allocation, really. Someone should try to see what the flow2 dump looks like for GCC 3.2, which is apparently the last release that did not have this problem. In any case, it will be difficult to find out when this problem was introduced. But it doesn't look like a really severe problem to me anyway, really... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23451
[Bug c/25742] New: Internal compiler error in gen_rtx_SUBREG
The attached code generates an internal error when we try to compile it with -O[123s]. -- Summary: Internal compiler error in gen_rtx_SUBREG Product: gcc Version: 3.4.3 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: zer0 at droids-corp dot org GCC build triplet: i386-linux GCC host triplet: i386-linux GCC target triplet: avr http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25742
[Bug c/25742] Internal compiler error in gen_rtx_SUBREG
--- Comment #1 from zer0 at droids-corp dot org 2006-01-10 21:04 --- Created an attachment (id=10609) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10609&action=view) the guilty program This is the program that we cannot compile : $ avr-gcc -Wall -Os f32.c -c -mmcu=atmega128 f32.c: In function `f': f32.c:71: warning: 'a' might be used uninitialized in this function f32.c:71: warning: 'b' might be used uninitialized in this function f32.c:73: internal compiler error: in gen_rtx_SUBREG, at emit-rtl.c:618 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. avr-gcc -v Reading specs from /usr/lib/gcc/avr/3.4.3/specs Configured with: ./configure -v --enable-languages=c,c++ --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --enable-shared --with-system-zlib --enable-long-long --enable-nls --without-included-gettext --disable-checking --build=i386-linux --host=i386-linux --target=avr Thread model: single gcc version 3.4.3 Note that it compiles on my host : $ gcc f32.c -c -Os -> ok $ gcc-3.4 f32.c -c -Os -> ok -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25742
[Bug c/25742] Internal compiler error in gen_rtx_SUBREG
--- Comment #2 from berndtrog at yahoo dot com 2006-01-10 21:19 --- f32.c compiles OK on 4_1-branch and HEAD. -- berndtrog at yahoo dot com changed: What|Removed |Added CC||berndtrog at yahoo dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25742
[Bug target/23451] [3.4/4.0/4.1/4.2 regression] Redundant reloading from stack frame
--- Comment #5 from steven at gcc dot gnu dot org 2006-01-10 21:27 --- FWIW, the peephole that we trigger is this one, which has been around since forever (since rth's ia32 backend rewrite from the previous century...): ;; Don't compare memory with zero, load and use a test instead. (define_peephole2 [(set (match_operand 0 "flags_reg_operand" "") (match_operator 1 "compare_operator" [(match_operand:SI 2 "memory_operand" "") (const_int 0)])) (match_scratch:SI 3 "r")] "ix86_match_ccmode (insn, CCNOmode) && ! optimize_size" [(set (match_dup 3) (match_dup 2)) (set (match_dup 0) (match_op_dup 1 [(match_dup 3) (const_int 0)]))] "") But it feels like someone made a bad joke, or something. These are some pieces of what GCC 3.2 makes of it (with -march=i[456]86): movl-16(%ebp), %eax xorl%edi, %edi testl %eax, %eax je .L7 subl$12, %esp movl-16(%ebp), %eax pushl %eax callstrlen and movl-16(%ebp), %esi addl$16, %esp testl %esi, %esi je .L6 movb$61, (%eax) pushl %ecx pushl %edi movl-16(%ebp), %edx This is on AMD64 -m32 with "GNU C version 3.2.3 (x86_64-unknown-linux-gnu)", compiled by gcc 3.3-hammer-branch, gcc 3.4 and later can't compile gcc 3.2. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23451
[Bug bootstrap/25740] Bus Error compiling gcc/config/sparc/sol2-c1.asm
--- Comment #6 from darren at mambo dot net 2006-01-10 21:32 --- Well, I tried 'configure sparcv9-sun-solaris2.10' and it crashed on the same file I tried 'CC="gcc -m64" configure sparcv9-sun-solaris2.10' and it still crashed on the same file. I'm beginning to think I imagined ever compiling gcc on this box! :) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25740
[Bug target/23451] [3.4/4.0/4.1/4.2 regression] Redundant reloading from stack frame
--- Comment #6 from steven at gcc dot gnu dot org 2006-01-10 21:32 --- Since GCC 3.2 also has this problem, contrary to what the reporter claims, I am not sure if we should keep this marked as a regression. Obviously it is a missed optimization, so the bug report is valid in that sense, and we should keep it open at least. Could the reporter check whether GCC 3.2 really does not have this problem, or if perhaps this is a regresion from even older compilers? This problem may have been introduced when the new (*cough* 7 years old) ix86 backend was contributed. In that case, this may still be a regression from GCC 2.95. But I am not willing to go that far back in history ;-) -- steven at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23451
[Bug ada/25743] New: crosscompiler fails to build ada-rts for target platform.
[~/rpm/BUILD/gcc-4.1-20060106/obj-sparc64-pld-linux]$ $ make all-gcc $ make -C gcc/ada gnatlib (...) ../../xgcc -B../../ -c -g -O2 -gnatpg -nostdinc a-dirval.adb -o a-dirval.o ../../xgcc -B../../ -c -g -O2 -gnatpg -nostdinc a-einuoc.adb -o a-einuoc.o ../../xgcc -B../../ -c -g -O2 -gnatpg -nostdinc a-elchha.adb -o a-elchha.o ../../xgcc -B../../ -c -g -O2 -gnatpg -nostdinc -g -O1 -fno-inline \ a-except.adb -o a-except.o a-exexpr.adb:169:04: warning: types for unchecked conversion have different sizes make[1]: *** [a-except.o] Error 1 $ gcc/xgcc -v Using built-in specs. Target: sparc64-pld-linux Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --bindir=/usr/bin --libdir=/usr/lib --libexecdir=/usr/lib --disable-shared --disable-threads --enable-languages=c,c++,ada --enable-c99 --enable-long-long --disable-nls --with-cpu=ultrasparc --with-gnu-as --with-gnu-ld --with-mangler-in-ld --with-system-zlib --enable-multilib --with-headers=/home/users/pluto/rpm/BUILD/gcc-4.1-20060106/fake-root/usr/include --without-x --target=sparc64-pld-linux --host=i686-pld-linux --build=i686-pld-linux Thread model: single gcc version 4.1.0 20060106 (prerelease) -- Summary: crosscompiler fails to build ada-rts for target platform. Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pluto at agmk dot net GCC build triplet: i686-linux GCC host triplet: i686-linux GCC target triplet: sparc64-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25743
[Bug bootstrap/25740] Bus Error compiling gcc/config/sparc/sol2-c1.asm
--- Comment #7 from ebotcazou at gcc dot gnu dot org 2006-01-10 21:38 --- > I'm beginning to think I imagined ever compiling gcc on this box! :) What happens if you bootstrap the sparc-sun-solaris2.10 compiler? CC="gcc -m32" $(scrdir)/configure sparc-sun-solaris2.10 --prefix=... gmake bootstrap -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25740
[Bug ada/25743] crosscompiler fails to build ada-rts for target platform.
--- Comment #1 from pluto at agmk dot net 2006-01-10 21:42 --- Created an attachment (id=10610) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10610&action=view) system-linux-sparc64.ads + makefile tweak. initial patch used during crosscompiling. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25743
[Bug fortran/25486] [4.1/4.2 Regression] fortran fixed-form literal character constant not padded.
--- Comment #7 from steven at gcc dot gnu dot org 2006-01-10 22:00 --- The patch does look reasonable to me at first sight. Steve, are you going to look at the patch? It'd be nice to have this fixed in GCC 4.1. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25486
[Bug middle-end/21953] [4.1/4.2 Regression] Many tmpdir-gcc.dg-struct-layout-1 tests fail on Tru64 UNIX V5.1B
--- Comment #6 from steven at gcc dot gnu dot org 2006-01-10 22:04 --- No feedback for way more than 5 months, and not reconfirmed in the last 6 months. We may still look at the problem somewhen, hence suspending. Rainer, if this problem still exists, can you investigate the problem a bit before re-opening the bug? -- steven at gcc dot gnu dot org changed: What|Removed |Added Status|WAITING |SUSPENDED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21953
[Bug target/25603] [4.1/4.2 Regression]: Miscompiled FORTRAN program
--- Comment #5 from steven at gcc dot gnu dot org 2006-01-10 22:07 --- Adding Jim Wilson to the CC: because he is the listed IA-64 maintainer. -- steven at gcc dot gnu dot org changed: What|Removed |Added CC||wilson at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25603
[Bug bootstrap/25740] Bus Error compiling gcc/config/sparc/sol2-c1.asm
--- Comment #8 from ebotcazou at gcc dot gnu dot org 2006-01-10 22:13 --- The 64-bit compiler: hikaru% gcc/xgcc -v Using built-in specs. Configured with: /home/eric/gcc-3.4.5/configure sparc64-sun-solaris2.10 --prefix=/usr/local --enable-languages=c Thread model: posix gcc version 3.4.5 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25740
[Bug target/24334] [4.0/4.1/4.2 regression] IRIX 6.5 bootstrap failure with SGI 7.4.3m ld: GOT overflow
--- Comment #5 from steven at gcc dot gnu dot org 2006-01-10 22:22 --- Leaving "critical" bugs as UNCONFIRMED isn't going to help us keep the bug database maintainable... So moving to WAITING pending further analysis by Rainer or others. However, it may well be a linker bug, as suggested in comment #1. Test results for GCC 4.1 were reported for mips-sgi-irix6.5 with GNU as/ld in November 2005 (see http://gcc.gnu.org/ml/gcc-testresults/2005-11/msg00898.html). -- steven at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24334
[Bug c/25744] New: typename causes segmentation fault
gcc -v: Reading specs from /tools/new/lib/gcc/i686-pc-linux-gnu/3.4.4/specs Configured with: ../configure --enable-threads=posix --prefix=/tools/new --enable-language=c,c++,java --disable-checking --enable-shared Thread model: posix gcc version 3.4.4 Invoke gcc simply as: gcc test.cc Where test.cc is below. test.cc: In function `void test()': test.cc:10: internal compiler error: Segmentation fault Please submit a full bug report. with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. -test.cc #include using namespace std; void test() { map testMap; map::iterator itr = testMap.begin(); testMap.insert(itr, /* Delete next 'typename' to avoid crash */ typename map::value_type(4, 3)); } ---test.ii- I'd give it to you but bugzilla complains that the report is longer than 64k. -- Summary: typename causes segmentation fault Product: gcc Version: 3.4.4 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: h8_spam at sonic dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25744
[Bug c/25744] typename causes segmentation fault
--- Comment #1 from h8_spam at sonic dot net 2006-01-10 22:31 --- Created an attachment (id=10611) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10611&action=view) The test.ii file that was too big for the text of the bug report. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25744
[Bug target/24334] [4.0/4.1/4.2 regression] IRIX 6.5 bootstrap failure with SGI 7.4.3m ld: GOT overflow
--- Comment #6 from ro at techfak dot uni-bielefeld dot de 2006-01-10 22:32 --- Subject: Re: [4.0/4.1/4.2 regression] IRIX 6.5 bootstrap failure with SGI 7.4.3m ld: GOT overflow steven at gcc dot gnu dot org writes: > However, it may well be a linker bug, as suggested in comment #1. Test > results > for GCC 4.1 were reported for mips-sgi-irix6.5 with GNU as/ld in November 2005 > (see http://gcc.gnu.org/ml/gcc-testresults/2005-11/msg00898.html). Given that a C-only bootstrap with SGI's MIPSpro cc succeeded some time ago, I thought so myself. On 20051130 I tried another mainline bootstrap with gcc after upgrading to MIPSpro 7.4.4m (with the latest SGI ld), but that failed in the same way as I'd originally reported. I'll have to retry this now and also try again with a newer GNU as used both by the bootstrap compiler and the freshly built compiler. This may take time, though, since recently my time devoted to GCC testing has been rather limited and the only machine running with latest IRIX and compilers isn't too fast (I may accquire another one in the not too far future, though.) Rainer -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24334
[Bug tree-optimization/23835] [4.1/4.2 Regression] case where gcc 4.1/4.2.0 -O3 compile takes two times longer earlier versions
--- Comment #24 from steven at gcc dot gnu dot org 2006-01-10 22:39 --- Realistically, the prospects are that this problem won't be fixed until compile time gets on the GCC developers' radar for real. The next release always promises to be faster, but usually turns out to be disappointingly slow in the end. Note that in your case, there really is only one real bug. The other slow passes are inherently slow for very large functions. The top 3 slow passes of your latest time report was: tree SSA incremental : 3.19 (12%) usr scheduling 2 : 2.03 ( 8%) usr scheduling: 1.52 ( 6%) usr The tree SSA incremental bit is non-linear behavior when computing dominance frontiers (inevitable) plus non-linear behavior due to massive bitmap abuse. This incremental update tries to work on portions of the CFG, but in practice it almost always works on the whole function, so you end up doing far more work than strictly necessary. What's required to fix this is a region based compilation model such that the SSA updater can work on dirty regions (i.e. regions where an update is needed) without worrying about the other regions. I don't think this will be fixed any time soon :-( As for the scheduler, well, list scheduling is just a quadratic algorithm: O(n_insns_to_schedule^2) where n_insns_to_schedule is the number of insns in the region or trace that you're scheduling. This is one of the reasons why no compiler schedules whole functions at once: You have to split them up to keep compile times reasonable. The fact that scheduling got slower for IA-64 has two reasons. First, basic blocks are typically larger for IA-64 in GCC 4.x than in GCC 3.x, and typically GCC 4.x can find longer traces than GCC 3.x, so your n_insns_to_schedule is larger (I measured this on ia64-linux). Second, the scheduler model for IA-64 is just incredibly complicated, and a significant amount of time is simply lost there because the IA-64 automaton is _huge_. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23835
[Bug c++/25744] typename causes segmentation fault
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-01-10 22:40 --- *** This bug has been marked as a duplicate of 23797 *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25744
[Bug c++/23797] [3.4 Regression] ICE on typename outside template
--- Comment #18 from pinskia at gcc dot gnu dot org 2006-01-10 22:40 --- *** Bug 25744 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||h8_spam at sonic dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23797
[Bug c++/25744] typename causes segmentation fault
--- Comment #3 from bangerth at dealii dot org 2006-01-10 22:40 --- Confirmed, but this is already fixed as of 3.4.6 20060102 (prerelease) W. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25744
[Bug target/23451] [3.4/4.0/4.1/4.2 regression] Redundant reloading from stack frame
--- Comment #7 from herbert at gondor dot apana dot org dot au 2006-01-10 22:44 --- Subject: Re: [3.4/4.0/4.1/4.2 regression] Redundant reloading from stack frame On Tue, Jan 10, 2006 at 09:32:58PM -, steven at gcc dot gnu dot org wrote: > > --- Comment #6 from steven at gcc dot gnu dot org 2006-01-10 21:32 > --- > Since GCC 3.2 also has this problem, contrary to what the reporter claims, I > am > not sure if we should keep this marked as a regression. Obviously it is a > missed optimization, so the bug report is valid in that sense, and we should > keep it open at least. gcc-3.2 keeps the value in %esi and therefore avoids the problem: .file "a.c" .section.rodata.str1.1,"aMS",@progbits,1 .LC0: .string "%.*s: bad variable name" .text .p2align 2,,3 .globl setvar .type setvar,@function setvar: pushl %ebp movl%esp, %ebp pushl %edi pushl %esi pushl %ebx subl$24, %esp movl8(%ebp), %ebx movl16(%ebp), %eax movl12(%ebp), %esi Only one load. movl%eax, -16(%ebp) pushl %ebx callendofname subl$8, %esp pushl $61 pushl %eax movl%eax, %edi callstrchrnul movl%eax, %edx addl$32, %esp subl%ebx, %edx je .L3 cmpl%edi, %eax jne .L3 xorl%edi, %edi testl %esi, %esi je .L7 movl%esi, %edi cld movl$-1, %ecx xorl%eax, %eax repnz scasb notl%ecx leal-1(%ecx), %edi .L5: pushl %ecx pushl %edx pushl %ebx leal2(%edi,%edx), %eax pushl %eax callmalloc movl%eax, (%esp) movl%eax, %ebx callmempcpy addl$16, %esp testl %esi, %esi je .L6 movb$61, (%eax) pushl %edx pushl %edi pushl %esi incl%eax pushl %eax callmempcpy addl$16, %esp .L6: movb$0, (%eax) orl $1, -16(%ebp) movl-16(%ebp), %eax movl%eax, 12(%ebp) movl%ebx, 8(%ebp) leal-12(%ebp), %esp popl%ebx popl%esi popl%edi leave jmp setvareq .p2align 2,,3 .L7: orl $2, -16(%ebp) jmp .L5 .L3: pushl %esi pushl %ebx pushl %edx pushl $.LC0 callsh_error .Lfe1: .size setvar,.Lfe1-setvar .ident "GCC: (GNU) 3.2.3 (Debian)" Thanks, -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23451
[Bug bootstrap/25740] Bus Error compiling gcc/config/sparc/sol2-c1.asm
--- Comment #9 from ebotcazou at gcc dot gnu dot org 2006-01-10 22:50 --- > The 64-bit compiler: ...under another name: hikaru% gcc/xgcc -v Using built-in specs. Configured with: /home/eric/gcc-3.4.5/configure sparcv9-sun-solaris2.10 --prefix=/usr/local --enable-languages=c Thread model: posix gcc version 3.4.5 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25740
[Bug ada/25743] crosscompiler fails to build ada-rts for target platform.
--- Comment #2 from pluto at agmk dot net 2006-01-10 22:54 --- -gnatwZ option helps but ./xgcc ICEs few steps ahead :( (...) ../../xgcc -B../../ -c -g -O2 -gnatpg -nostdinc -gnatwZ s-fore.adb -o s-fore.o s-fore.adb: In function 'System.Fore.Fore': s-fore.adb:57: error: unrecognizable insn: (insn 18 17 19 0 s-fore.adb:41 (set (reg:CCFPE 96 %fcc0) (compare:CCFPE (reg/v:TF 111 [ t ]) (reg:TF 115))) -1 (nil) (nil)) +===GNAT BUG DETECTED==+ | 4.1.0 20060106 (prerelease) (sparc64-pld-linux-gnu) GCC error: | | in extract_insn, at recog.c:2084 | | Error detected at s-fore.adb:58:1| raised TYPES.UNRECOVERABLE_ERROR : comperr.adb:380 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25743
[Bug c++/25735] Assignment operator broken with multidimensional array strings.
--- Comment #4 from reichelt at gcc dot gnu dot org 2006-01-10 22:55 --- I can confirm this on x86_64-unknown-linux-gnu with gcc 3.4.0 - 3.4.3. I cannot reproduce this with gcc 3.4.4 or later. IMHO this is a duplicate of PR 20142. *** This bug has been marked as a duplicate of 20142 *** -- reichelt at gcc dot gnu dot org changed: What|Removed |Added CC||reichelt at gcc dot gnu dot ||org Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25735
[Bug c++/20142] [3.3 regression] implicit assignment operator with multi-dimensional array is broken
--- Comment #10 from reichelt at gcc dot gnu dot org 2006-01-10 22:55 --- *** Bug 25735 has been marked as a duplicate of this bug. *** -- reichelt at gcc dot gnu dot org changed: What|Removed |Added CC||dtrebilco at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20142
[Bug target/23451] [3.4/4.0/4.1/4.2 regression] Redundant reloading from stack frame
--- Comment #8 from steven at gcc dot gnu dot org 2006-01-10 22:58 --- Unfortunately you're not showing your full command line, so I can only guess what platform your host is and for what target you are compiling. I will attach diffs between GCC 3.2 and GCC 3.3-hammer for i[456]86. To me the changes look insignificant, but maybe you can point out what you're unhappy with. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23451
[Bug target/23451] [3.4/4.0/4.1/4.2 regression] Redundant reloading from stack frame
--- Comment #9 from steven at gcc dot gnu dot org 2006-01-10 23:00 --- Created an attachment (id=10612) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10612&action=view) gcc 3.2 vs. gcc 3.3 .s output, march=i486 All .s files created on AMD64, compiler options -m32 -S -O2 -march=i[456]86. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23451