[Bug bootstrap/26188] [4.2 Regression] 4.2.0 fails to compile on FreeBSD 4.11
--- Comment #14 from bonzini at gnu dot org 2006-07-25 08:30 --- Subject: Bug 26188 Author: bonzini Date: Tue Jul 25 08:30:38 2006 New Revision: 115733 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=115733 Log: config: 2006-07-25 Paolo Bonzini [EMAIL PROTECTED] PR build/26188 * stdint.m4: Test for uintptr_t even on systems with uint64_t or uint32_t. libdecnumber: 2006-07-25 Paolo Bonzini [EMAIL PROTECTED] PR build/26188 * configure: Regenerate. libgfortran: 2006-07-25 Paolo Bonzini [EMAIL PROTECTED] PR build/26188 * configure: Regenerate. Modified: trunk/config/ChangeLog trunk/config/stdint.m4 trunk/libdecnumber/ChangeLog trunk/libdecnumber/configure trunk/libgfortran/ChangeLog trunk/libgfortran/configure -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26188
[Bug c/28476] New: msp430-gcc with -Wunreachable-code Segmentation fault
I am using the last mspgcc compiler for MSP430 downloaded at http://sourceforge.net/project/showfiles.php?group_id=42303package_id=68584. The bug is easily reproducible applying the following compiler line to the source main of example tasker msp430-gcc -mmcu=msp430x147 -g -O3 -Wall -Wcast-align -Wcast-qual -Wimplicit -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wredundant-decls -Wreturn-type -Wshadow -Wstrict-prototypes -Wswitch -Wunused -Wunreachable-code -c -o main.o main.c in the original line -Wunreachable-code in missed. The error raised is main.c: In function `task1': main.c:126: internal error: Segmentation fault compiler version: Reading specs from /cygdrive/c/mspgcc/bin/../lib/gcc-lib/msp430/3.2.3/specs Configured with: ./configure --target=msp430 --prefix=/f/prog/msp430/sf/packagin g/build/installed --disable-nls Thread model: single gcc version 3.2.3 -- Summary: msp430-gcc with -Wunreachable-code Segmentation fault Product: gcc Version: 3.2.3 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: stefano dot franzoni at marposs dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28476
[Bug bootstrap/26188] [4.2 Regression] 4.2.0 fails to compile on FreeBSD 4.11
--- Comment #15 from bonzini at gnu dot org 2006-07-25 08:34 --- patch committed -- bonzini at gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26188
[Bug c++/28475] Internal error: Segmentation fault (program cc1plus)
--- Comment #1 from rguenth at gcc dot gnu dot org 2006-07-25 08:37 --- Confirmed. Not a regression. 0x081bdda3 in lookup_fnfields_1 (type=0xb7d98000, name=0xb7cfebfc) at /space/rguenther/src/svn/gcc-4_1-branch/gcc/cp/search.c:1406 1406 VEC_iterate (tree, method_vec, i, fn); (gdb) bt #0 0x081bdda3 in lookup_fnfields_1 (type=0xb7d98000, name=0xb7cfebfc) at /space/rguenther/src/svn/gcc-4_1-branch/gcc/cp/search.c:1406 #1 0x081bc286 in lookup_field_r (binfo=0xb7f29740, data=0xbf7f81dc) at /space/rguenther/src/svn/gcc-4_1-branch/gcc/cp/search.c:1057 #2 0x081be65e in dfs_walk_all (binfo=0xb7f29740, pre_fn=0x81bc0e2 lookup_field_r, post_fn=0, data=0xbf7f81dc) at /space/rguenther/src/svn/gcc-4_1-branch/gcc/cp/search.c:1532 #3 0x081bcd8f in lookup_member (xbasetype=0xb7f29740, name=0xb7cfebfc, protect=1, want_type=0 '\0') at /space/rguenther/src/svn/gcc-4_1-branch/gcc/cp/search.c:1232 #4 0x081bcf96 in lookup_fnfields (xbasetype=0xb7f29740, name=0xb7cfebfc, protect=1) at /space/rguenther/src/svn/gcc-4_1-branch/gcc/cp/search.c:1296 #5 0x0805d24e in build_special_member_call (instance=0xb7c57ea0, name=0xb7cfebfc, args=0xb7c58ea0, binfo=0xb7f29740, flags=11) at /space/rguenther/src/svn/gcc-4_1-branch/gcc/cp/call.c:5175 #6 0x08058351 in build_temp (expr=0xb7d96374, type=0xb7d98000, flags=11, diagnostic_fn=0xbf7f8358) at /space/rguenther/src/svn/gcc-4_1-branch/gcc/cp/call.c:4155 #7 0x08058c51 in convert_like_real (convs=0x8c33ccc, expr=0xb7d96374, fn=0xb7d99480, argnum=0, inner=0, issue_conversion_warnings=1 '\001', c_cast_p=0 '\0') at /space/rguenther/src/svn/gcc-4_1-branch/gcc/cp/call.c:4355 -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords||ice-on-invalid-code Known to fail||3.3.6 3.4.6 4.0.3 4.1.1 ||4.2.0 Last reconfirmed|-00-00 00:00:00 |2006-07-25 08:37:26 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28475
[Bug middle-end/28473] [4.0/4.1/4.2 Regression] with -O, casting result of round(x) to uint64_t produces wrong values for x INT_MAX
--- Comment #4 from rguenth at gcc dot gnu dot org 2006-07-25 08:46 --- Confirmed. Testcase: typedef unsigned uint64_t __attribute__((mode(DI))); uint64_t foo(void) { uint64_t x = 2147483648ULL; /* INT_MAX+1 */ uint64_t y = (uint64_t)__builtin_round(x); return y; } where we fold it to uint64_t y = (long long unsigned int) __builtin_lround ((double) x); -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Component|c |middle-end Ever Confirmed|0 |1 Keywords||wrong-code Known to work||3.4.6 Last reconfirmed|-00-00 00:00:00 |2006-07-25 08:46:28 date|| Summary|with -O, casting result of |[4.0/4.1/4.2 Regression] |round(x) to uint64_t|with -O, casting result of |produces wrong values for x |round(x) to uint64_t | INT_MAX |produces wrong values for x || INT_MAX Target Milestone|--- |4.0.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28473
[Bug middle-end/28473] [4.0/4.1/4.2 Regression] with -O, casting result of round(x) to uint64_t produces wrong values for x INT_MAX
--- Comment #5 from rguenth at gcc dot gnu dot org 2006-07-25 08:58 --- I have a patch. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |rguenth at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED Last reconfirmed|2006-07-25 08:46:28 |2006-07-25 08:58:05 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28473
[Bug c++/28477] New: Intermediate template classes makes typdefs in base class go away
The below piece of code fails with the following error: f.C: In member function 'virtual int ET::f()': f.C:18: error: 'b' was not declared in this scope f.C:18: error: expected `;' before 'i' f.C:18: error: 'i' was not declared in this scope File f.C: class Base { public: typedef int b; }; templateclass T class D : public Base { public: virtual int f() { return 0; } }; templateclass T class E : public DT { public: virtual int f() { b i; i = 1; return i; } }; int main() { } -- Summary: Intermediate template classes makes typdefs in base class go away Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: krister_joas at ml dot com GCC target triplet: sparc-sun-solaris2.10 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28477
[Bug java/28458] [ecj] Fails to build gnu.awt.LightweightRedirector
--- Comment #7 from aph at gcc dot gnu dot org 2006-07-25 09:43 --- No, my java.lang.Class does not contain Class$0. Please attach yours. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28458
[Bug java/28458] [ecj] Fails to build gnu.awt.LightweightRedirector
--- Comment #8 from aph at gcc dot gnu dot org 2006-07-25 10:00 --- I recompiled everything. Still: Reading .class from x86_64-unknown-linux-gnu/libjava/libgcj-4.2.0.jar(java/lang/Class.class). Magic number: 0xcafebabe, minor_version: 0, major_version: 49. Access flags: 0x31 public final super This class: java.lang.Class, super: java.lang.Object Interfaces (count: 4): - Implements: java.lang.reflect.Type - Implements: java.lang.reflect.AnnotatedElement - Implements: java.lang.reflect.GenericDeclaration - Implements: java.io.Serializable Fields (count: 0): -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28458
[Bug target/17390] missing floating point compare optimization
--- Comment #11 from pluto at agmk dot net 2006-07-25 11:33 --- ping -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17390
[Bug debug/27574] [4.1 Regression] MIssing debug info at -O0 for a local variable in a C++ constructor
--- Comment #6 from amylaar at gcc dot gnu dot org 2006-07-25 12:14 --- (In reply to comment #5) I am not going to track down what did it, but something has fixed this on the 4.2 branch. I can reproduce it on Debian's 4.1 branch snapshot. If someone wants to fix it on 4.1, it should probably be easy to use the regression hunter to identify what patch caused the string problem to appear in the assembly output. It is probably something in the last two and a half months, since the bug was reported, but I do not see any obvious candidates. If this is fixed on mainline, the fix must be rather recent; I see this still failing with r115417: GNU C++ version 4.2.0 20060713 (experimental). What is the oldest gcc 4.2 version where you saw this work? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27574
[Bug target/27907] [4.2 regression] ICE in expand_simple_unop, at optabs.c:2307
--- Comment #3 from rakdver at gcc dot gnu dot org 2006-07-25 12:20 --- Patch: http://gcc.gnu.org/ml/gcc-patches/2006-07/msg01064.html -- rakdver at gcc dot gnu dot org changed: What|Removed |Added URL||http://gcc.gnu.org/ml/gcc- ||patches/2006- ||07/msg01064.html Keywords||patch http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27907
[Bug gcov/profile/28478] New: function naming in GCOV since 3.4 series
Since 3.4 version of GCC, the functions naming in gcov seems to be changed. When using '-f' option of gcov, the function names are no more ClassName::MethodName but have C++ name mangling. For example : === EXAMPLE BEGIN === :: myClass.h :: class myClass { public: myClass(const int i) : m_integer(i) {}; virtual ~myClass() {}; void testInteger(); private: int m_integer; }; :: myClass.cpp :: #include myClass.h #include iostream void myClass::testInteger() { if (m_integer 10) { std::cout Integer 10 std::endl; } else { std::cout Integer = 10 std::endl; } } :: myTest.cpp :: #include myClass.h int main() { myClass oneClass(9); oneClass.testInteger(); return 0; } === EXAMPLE END If I compile and execute this test : $ g++ --version g++ (GCC) 3.4.5 20051201 (Red Hat 3.4.5-2) ... $ g++ -fprofile-arcs -ftest-coverage *.cpp $ ./a.out Integer = 10 $ gcov -f myClass.cpp gcov_summary $ more gcov_summary Function `_ZSt17__verify_groupingPKcmRKSs' Lines executed:0.00% of 11 Function `_ZN7myClass11testIntegerEv' Lines executed:75.00% of 4 Function `_ZSt3minImERKT_S2_S2_' Lines executed:0.00% of 4 Function `_Z41__static_initialization_and_destruction_0ii' Lines executed:100.00% of 2 Function `__tcf_0' No executable lines Function `_GLOBAL__I__ZN7myClass11testIntegerEv' Lines executed:100.00% of 1 File `/usr/lib/gcc/x86_64-redhat-linux/3.4.5/../../../../include/c++/3.4.5/bits/locale_facets.tcc' Lines executed:0.00% of 11 /usr/lib/gcc/x86_64-redhat-linux/3.4.5/../../../../include/c++/3.4.5/bits/locale_facets.tcc:creating `locale_facets.tcc.gcov' . The natural name of method myClass::testInteger has been changed to _ZN7myClass11testIntegerEv This behaviour does not occur in version 3.2.3 of GCC. It still occurs with 3.4.3 and 4.0.2 (on the same platform). Is this a bug or a new normal behaviour ? This naming approach does make easy post-processing of test coverage rates especially for a large critical software. Is there any way to fix that, or to translate decorated function names to natural name (i.e. class::method). Thanks for help -- Summary: function naming in GCOV since 3.4 series Product: gcc Version: 3.4.5 Status: UNCONFIRMED Severity: major Priority: P3 Component: gcov/profile AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: snordin_ng at yahoo dot fr GCC build triplet: i686-linux-2.6.9-5.ELsmp GCC host triplet: i686-linux-2.6.9-5.ELsmp GCC target triplet: i686-linux-2.6.9-5.ELsmp http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28478
[Bug tree-optimization/28479] New: [4.2 regression] cc1plus just sits there eating CPU and RAM for a simple program
When I compile the application zhcon with a recent version of gcc 4.2, cc1plus just sits there eating CPU and RAM but doesn't actually seem to do anything. gcc 4.1 or older versions of gcc 4.2 compile the program in a few seconds. I tried to reduce this to a small testcase and it's included below. Unfortunately, I cannot tell what gcc is exactly doing but based on the testcase someone should be able to figure it out. (Please update the Summary of this bug with a better description once you know.) 20060626: works 20060714: fails 20060721: fails I cannot test a newer gcc snapshot right now. cc1plus just sits there: /usr/lib/gcc-snapshot/libexec/gcc/x86_64-linux-gnu/4.2.0/cc1plus -O2 test.cpp int main() Analyzing compilation unitPerforming intraprocedural optimizations Assembling functions: int main() The test case is below. You need to compile with -O2 -- lower levels work. #include asm/types.h #define fb_readl(addr) (*(volatile __u32 *) (addr)) #define fb_writel(b,addr) (*(volatile __u32 *) (addr) = (b)) int main() { __u8* dest; __u32* dest32; dest32 = (__u32*)dest; for (int cnt = 10; cnt--;) { fb_writel(fb_readl(dest32) ^ 0x, dest32++); } } -- Summary: [4.2 regression] cc1plus just sits there eating CPU and RAM for a simple program Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tbm at cyrius dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28479
[Bug debug/27574] [4.1 Regression] MIssing debug info at -O0 for a local variable in a C++ constructor
--- Comment #7 from drow at gcc dot gnu dot org 2006-07-25 13:27 --- Subject: Re: [4.1 Regression] MIssing debug info at -O0 for a local variable in a C++ constructor On Tue, Jul 25, 2006 at 12:14:46PM -, amylaar at gcc dot gnu dot org wrote: If this is fixed on mainline, the fix must be rather recent; I see this still failing with r115417: GNU C++ version 4.2.0 20060713 (experimental). What is the oldest gcc 4.2 version where you saw this work? I tested it on HEAD on the day I posted (2006-07-22). Could you check whether that works for you, or it's something environmental? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27574
[Bug tree-optimization/28479] [4.2 regression] cc1plus just sits there eating CPU and RAM for a simple program
--- Comment #1 from rguenth at gcc dot gnu dot org 2006-07-25 13:30 --- Confirmed. int foo(int* dest32) { for (int cnt = 10; cnt--;) *(volatile int *) (dest32) = (*(volatile int *)(dest32)) ^ 0x; } -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-07-25 13:30:36 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28479
[Bug tree-optimization/28479] [4.2 regression] cc1plus just sits there eating CPU and RAM for a simple program
--- Comment #2 from rguenth at gcc dot gnu dot org 2006-07-25 13:37 --- PRE loops. -O -ftree-pre. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||dberlin at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28479
[Bug middle-end/28476] msp430-gcc with -Wunreachable-code Segmentation fault
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-07-25 13:40 --- Can you attach the preprocessed source? -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |WAITING Component|c |middle-end http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28476
[Bug c++/28477] Intermediate template classes makes typdefs in base class go away
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-07-25 13:42 --- Please read: http://gcc.gnu.org/gcc-3.4/changes.html -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28477
[Bug tree-optimization/28479] [4.2 regression] cc1plus just sits there eating CPU and RAM for a simple program
--- Comment #3 from rguenth at gcc dot gnu dot org 2006-07-25 13:43 --- Simpler testcase: void foo(int* dest) { for (;;) *(volatile int *)dest = *(volatile int *)dest; } .066.crited: # SMT.4_3 = PHI SMT.4_4(2), SMT.4_5(3); L0:; # VUSE SMT.4_3; D.1990_2 = *dest_1; # SMT.4_5 = V_MAY_DEF SMT.4_3; *dest_1 = D.1990_2; goto bb 3 (L0); -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28479
[Bug tree-optimization/28479] [4.2 regression] cc1plus just sits there eating CPU and RAM for a simple program
--- Comment #4 from pinskia at gcc dot gnu dot org 2006-07-25 14:02 --- The two statements should have been marked as volatile but are not for some reason. This is not a bug in PRE at all. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.2.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28479
[Bug middle-end/28476] msp430-gcc with -Wunreachable-code Segmentation fault
--- Comment #2 from stefano dot franzoni at marposs dot com 2006-07-25 14:02 --- Subject: Re: msp430-gcc with -Wunreachable-code Segmentation fault (See attached file: main.i) pinskia at gcc dot gnu dot org [EMAIL PROTECTED] To .gnu.org [EMAIL PROTECTED] cc 25/07/2006 15:40 Subject [Bug middle-end/28476] msp430-gcc Please respond to with -Wunreachable-code [EMAIL PROTECTED] Segmentation fault gnu.org --- Comment #1 from pinskia at gcc dot gnu dot org 2006-07-25 13:40 --- Can you attach the preprocessed source? -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |WAITING Component|c |middle-end http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28476 --- You are receiving this mail because: --- You reported the bug, or are watching the reporter. --- Comment #3 from stefano dot franzoni at marposs dot com 2006-07-25 14:02 --- Created an attachment (id=11933) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11933action=view) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28476
[Bug tree-optimization/28479] [4.2 regression] cc1plus just sits there eating CPU and RAM for a simple program
--- Comment #5 from rguenth at gcc dot gnu dot org 2006-07-25 14:11 --- Reverting 2006-07-05 Richard Guenther [EMAIL PROTECTED] Andrew Pinski [EMAIL PROTECTED] PR c++/27084 * cp-objcp-common.c (cxx_types_compatible_p): Ignore top level qualifiers for pointer type comparisons. * g++.dg/tree-ssa/copyprop-1.C: New testcase. fixes it. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.0 |--- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28479
[Bug tree-optimization/28479] [4.2 regression] cc1plus just sits there eating CPU and RAM for a simple program
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.2.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28479
[Bug gcov/profile/28480] New: inliner-1.c:31: ICE: in set_bb_for_stmt, at tree-cfg.c:2775
Executing on host: /home/dave/gnu/gcc-4.2/objdir/gcc/xgcc -B/home/dave/gnu/gcc- 4.2/objdir/gcc/ /home/dave/gnu/gcc-4.2/gcc/gcc/testsuite/gcc.dg/tree-prof/inlin er-1.c -O2 -fdump-tree-optimized -fprofile-use -fno-show-column -lm -o /ho me/dave/gnu/gcc-4.2/objdir/gcc/testsuite/gcc/inliner-1.x02(timeout = 300) /home/dave/gnu/gcc-4.2/gcc/gcc/testsuite/gcc.dg/tree-prof/inliner-1.c: In funct ion 'hot_function': /home/dave/gnu/gcc-4.2/gcc/gcc/testsuite/gcc.dg/tree-prof/inliner-1.c:31: inter nal compiler error: in set_bb_for_stmt, at tree-cfg.c:2775 Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. compiler exited with status 1 output is: /home/dave/gnu/gcc-4.2/gcc/gcc/testsuite/gcc.dg/tree-prof/inliner-1.c: In funct ion 'hot_function': /home/dave/gnu/gcc-4.2/gcc/gcc/testsuite/gcc.dg/tree-prof/inliner-1.c:31: inter nal compiler error: in set_bb_for_stmt, at tree-cfg.c:2775 Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. FAIL: gcc.dg/tree-prof/inliner-1.c compilation, -fprofile-use (internal compil er error) Same error occurs in these tests: FAIL: gcc.dg/tree-prof/val-prof-1.c compilation, -fprofile-use (internal compi ler error) FAIL: gcc.dg/tree-prof/val-prof-2.c compilation, -fprofile-use (internal compi ler error) FAIL: gcc.dg/tree-prof/val-prof-3.c compilation, -fprofile-use (internal compi ler error) AIL: gcc.dg/tree-prof/val-prof-4.c compilation, -fprofile-use (internal compi ler error) FAIL: gcc.dg/tree-prof/val-prof-5.c compilation, -fprofile-use (internal compi ler error) -- Summary: inliner-1.c:31: ICE: in set_bb_for_stmt, at tree- cfg.c:2775 Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: gcov/profile AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: danglin at gcc dot gnu dot org GCC build triplet: hppa-unknown-linux-gnu GCC host triplet: hppa-unknown-linux-gnu GCC target triplet: hppa-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28480
[Bug gcov/profile/28480] inliner-1.c:31: ICE: in set_bb_for_stmt, at tree-cfg.c:2775
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-07-25 14:17 --- /* We're moving an existing label. Make sure that we've removed it from the old block. */ gcc_assert (!bb || !VEC_index (basic_block, label_to_block_map, uid)); -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28480
[Bug c++/21615] Argument-dependent name lookup associated namespace search bug
--- Comment #5 from maxim dot yegorushkin at gmail dot com 2006-07-25 14:18 --- Hi there, Could you guys take a look at Pavel's comment. It looks very reasonable. -- maxim dot yegorushkin at gmail dot com changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|INVALID | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21615
[Bug c++/21615] Argument-dependent name lookup associated namespace search bug
--- Comment #6 from pinskia at gcc dot gnu dot org 2006-07-25 14:23 --- Fixed in 4.1.0. With many other bugs. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution||FIXED Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21615
[Bug rtl-optimization/28481] New: regression from 3.x: 4.1.1 uses memory where it can use registers
The attached test program uses 5 local variables and this fits into i386 available registers. gcc 3.4.3 manages to do it with -O3. gcc-4.1.1 -O2 and -O3 are identical and both are worse than gcc-3.4.3 -O3: # wc -l *.s 1498 serpent343-O2.s 1252 serpent343-O3.s - gcc 3.4.3 is smaller! 1313 serpent411-O2.s 1313 serpent411-O3.s gcc-4.1.1 -Os is better than -O3, but still a tiny bit worse than gcc-3.4.3: # wc -l serpent343-O3.s serpent411-Os.s 1252 serpent343-O3.s 1275 serpent411-Os.s # size serpent343-O3.o serpent411-Os.o 3262 0 03262 cbe serpent343-O3.o 3347 0 03347 d13 serpent411-Os.o Additional ingo is in the testcase itself. (btw does it make sense to include this into testsuite?) -- Summary: regression from 3.x: 4.1.1 uses memory where it can use registers Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: vda dot linux at googlemail dot com GCC build triplet: i386-pc-linux-gnu GCC host triplet: i386-pc-linux-gnu GCC target triplet: i386-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28481
[Bug rtl-optimization/28481] regression from 3.x: 4.1.1 uses memory where it can use registers
--- Comment #1 from vda dot linux at googlemail dot com 2006-07-25 14:45 --- Created an attachment (id=11934) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11934action=view) testcase -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28481
[Bug rtl-optimization/26847] [4.2 Regression] Missed optimization in simplify_plus_minus
-- bonzini at gnu dot org changed: What|Removed |Added Status|NEW |ASSIGNED Last reconfirmed|2006-03-30 20:09:49 |2006-07-25 14:53:34 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26847
[Bug libgomp/28482] New: Cannot use libgomp in shared library
I made some tests using gcc version 4.2.0 20060708 (experimental) to see if I can make use of the OpenMP feature and libgomp in my data processing environment. This environment runs on Unix systems (here: Linux) and consists of a main program and several .so plugins that do the actual work. If I use libgomp I cannot load these plugins any more because libgomp is built with -z nodlopen. From libgomp/configure.tgt: # Optimize TLS usage by avoiding the overhead of dynamic allocation. # This does require that the library be present during process # startup, so mark the library as not to be dlopened. if test $have_tls = yes test $with_gnu_ld = yes; then XCFLAGS=${XCFLAGS} -ftls-model=initial-exec XLDFLAGS=${XLDFLAGS} -Wl,-z,nodlopen fi I guess that for some uses this really makes sense but I didn't find this documented anywhere and had to post to newsgroups to get someone to help me find this. I suggest you remove this and add a configure switch instead. -- Summary: Cannot use libgomp in shared library Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libgomp AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: mozilla at weilbacher dot org GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28482
[Bug tree-optimization/28364] poor optimization choices when iterating over a std::string (probably not c++-specific)
--- Comment #26 from rakdver at gcc dot gnu dot org 2006-07-25 15:20 --- A patch for the return in the middle of the loop problem: http://gcc.gnu.org/ml/gcc-patches/2006-07/msg00893.html (to be commited once mainline is open). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28364
[Bug pch/14933] missing pre-compiled header depends with -MD
--- Comment #6 from mjuric at astro dot princeton dot edu 2006-07-25 15:22 --- Created an attachment (id=11935) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11935action=view) Proposed fix for improper dependency tracking with PCHs This short patch addresses the issue of precompiled header dependencies not being recorded during -MD pass. The problem appeared because deps_add_dep() was never called from _cpp_stack_file, as all of .gch handling is done in should_stack_file(). The patch fixes it by calling deps_add_dep() in should_stack_file(), if the file under consideration is a precompiled header, and if restoration of dependencies from .gch has not been requested (restore_pch_deps == false). Applies to HEAD as well as 4.1.1. PS: This revealed a separate issue with counterintuitive behavior of restore_pch_deps == true (no dependencies shown), which I'll submit as a separate bug and proposed patch. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14933
[Bug target/28481] regression from 3.x: 4.1.1 uses memory where it can use registers
--- Comment #2 from rguenth at gcc dot gnu dot org 2006-07-25 15:47 --- I get [EMAIL PROTECTED]:/tmp /space/rguenther/install/gcc-3.4.6/bin/gcc -O3 -c serpent.c [EMAIL PROTECTED]:/tmp size serpent.o textdata bss dec hex filename 3562 0 03562 dea serpent.o [EMAIL PROTECTED]:/tmp /space/rguenther/install/gcc-4.1.1/bin/gcc -O3 -c serpent.c [EMAIL PROTECTED]:/tmp size serpent.o textdata bss dec hex filename 4137 0 041371029 serpent.o [EMAIL PROTECTED]:/tmp /space/rguenther/install/gcc-4.1.1/bin/gcc -O3 -c serpent.c -fomit-frame-pointer [EMAIL PROTECTED]:/tmp size serpent.o textdata bss dec hex filename 3695 0 03695 e6f serpent.o [EMAIL PROTECTED]:/tmp /space/rguenther/install/gcc-3.4.6/bin/gcc -O3 -c serpent.c -fomit-frame-pointer [EMAIL PROTECTED]:/tmp size serpent.o textdata bss dec hex filename 3526 0 03526 dc6 serpent.o so, confirmed for -O3, but -O3 is about speed - how's that comparing? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28481
[Bug libgomp/28482] Cannot use libgomp in shared library
--- Comment #1 from rguenth at gcc dot gnu dot org 2006-07-25 15:48 --- You can link your main program against libgomp. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28482
[Bug pch/28483] New: Dependency tracking should be on by default when copiling .gchs
Currently, in order for the dependencies to be tracked and stored in a .gch file to be subsequently used with -fpch-deps, one must manually specify -MD switch when compiling the precompiled header. Otherwise, the dependency information is not recorded in the precompiled header, and subsequent compilation of a source file with -fpch-deps will erroneously lists no dependencies. For example: caladan:~ g++ -x c++header test.h caladan:~ g++ test.cpp -MD -MP -MF deps.txt -o test.x will give caladan:~ cat deps.txt test.x: test.cpp while caladan:~ g++ -MD -MF /dev/null -x c++header test.h caladan:~ g++ -fpch-deps test.cpp -MD -MP -MF deps.txt -o test.x produces the full list of dependencies in deps.txt. This is unfortunately both counter-intuitive and undocumented, leaving one in the dark as to why the seemingly correct code above does not produce the expected result. Attached is the proposed short patch which would by default activate dependency tracking (-MD) for .pch compilations. It has been tested on Linux (RHEL4) with GCC 4.1.1 and SVN HEAD, with no adverse sideeffects. -- Summary: Dependency tracking should be on by default when copiling .gchs Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: pch AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: mjuric at astro dot princeton dot edu GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28483
[Bug pch/28483] Dependency tracking should be on by default when copiling .gchs
--- Comment #1 from mjuric at astro dot princeton dot edu 2006-07-25 15:52 --- Created an attachment (id=11936) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11936action=view) Proposed fix Proposed fix, applies against 4.1.1 and SVN HEAD. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28483
[Bug libgomp/28482] Cannot use libgomp in shared library
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-07-25 15:53 --- (In reply to comment #1) You can link your main program against libgomp. If you controll your main program, you can, but for an example a pluggin into say Photoshop, you cannot. -- pinskia 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-07-25 15:53:30 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28482
[Bug gcov/profile/28480] inliner-1.c:31: ICE: in set_bb_for_stmt, at tree-cfg.c:2775
--- Comment #2 from danglin at gcc dot gnu dot org 2006-07-25 16:53 --- (gdb) p debug_tree (t) label_expr 0x4000e8e0 type void_type 0x40018900 void VOID align 8 symtab 0 alias set -1 pointer_to_this pointer_type 0x40018960 side-effects arg 0 label_decl 0x40096180 L.5 type void_type 0x40018900 void ignored VOID file /home/dave/gnu/gcc-4.2/gcc/gcc/testsuite/gcc.dg/tree-prof/inliner-1.c line 31 align 1 alias set 5 context function_decl 0x40089a10 hot_function $6 = void (gdb) bt #0 set_bb_for_stmt (t=0x4000e8e0, bb=0x40094678) at ../../gcc/gcc/tree-cfg.c:2733 #1 0x000a8600 in tree_split_block (bb=0x400942d0, stmt=value optimized out) at ../../gcc/gcc/tree-cfg.c:4206 #2 0x00369658 in split_block (bb=0x400942d0, i=0x40094678) at ../../gcc/gcc/cfghooks.c:326 #3 0x002e3748 in tree_divmod_fixed_value_transform (stmt=0x40015618) at ../../gcc/gcc/value-prof.c:233 #4 0x002e3c24 in tree_value_profile_transformations () at ../../gcc/gcc/value-prof.c:143 #5 0x002e1f14 in value_profile_transformations () at ../../gcc/gcc/value-prof.c:878 #6 0x003753c0 in tree_profiling () at ../../gcc/gcc/tree-profile.c:244 #7 0x00373464 in execute_one_pass (pass=0x56b47c) at ../../gcc/gcc/passes.c:864 #8 0x00373604 in execute_pass_list (pass=0x56b47c) at ../../gcc/gcc/passes.c:911 #9 0x003736ac in execute_ipa_pass_list (pass=0x568f90) at ../../gcc/gcc/passes.c:933 #10 0x003be3bc in cgraph_optimize () at ../../gcc/gcc/cgraphunit.c:1456 #11 0x000330b0 in c_write_global_declarations () at ../../gcc/gcc/c-decl.c:7856 #12 0x0033c2f0 in toplev_main (argc=value optimized out, argv=value optimized out) at ../../gcc/gcc/toplev.c:1012 #13 0x407336d8 in __libc_start_main () from /lib/libc.so.6 We fail this assert: !VEC_index (basic_block, label_to_block_map, uid) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28480
[Bug debug/27574] [4.1 Regression] MIssing debug info at -O0 for a local variable in a C++ constructor
--- Comment #8 from joern dot rennecke at st dot com 2006-07-25 17:08 --- Subject: Re: [4.1 Regression] MIssing debug info at -O0 for a local variable in a C++ constructor drow at false dot org wrote: --- Comment #7 from drow at gcc dot gnu dot org 2006-07-25 13:27 --- Subject: Re: [4.1 Regression] MIssing debug info at -O0 for a local variable in a C++ constructor On Tue, Jul 25, 2006 at 12:14:46PM -, amylaar at gcc dot gnu dot org wrote: If this is fixed on mainline, the fix must be rather recent; I see this still failing with r115417: GNU C++ version 4.2.0 20060713 (experimental). What is the oldest gcc 4.2 version where you saw this work? I tested it on HEAD on the day I posted (2006-07-22). Could you check whether that works for you, or it's something environmental? When I compile the testcase (using -g -O0) with a cc1plus built from todays sources (r115734), a test search for problem in the .s file comes up empty. OTOH, both a native and a cross build eventually failed. Can you find out the exact version of gcc that you tested? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27574
[Bug fortran/28484] New: system_clock with real-type count_rate does not compile
When compiling the following program, -- real :: cntrate call system_clock(count_rate=cntrate) end -- gfortran (4.2.0 20060725) shows the error: call system_clock(count_rate=cntrate) 1 Error: 'count_rate' argument of 'system_clock' intrinsic at (1) must be INTEGER Expected: No error is shown as the Fortran standard (quoting from Fortran 2003) allows this: 13.7.117 SYSTEM_CLOCK ([COUNT, COUNT_RATE, COUNT_MAX]) Arguments. COUNT (optional) shall be scalar and of type integer. COUNT RATE (optional) shall be scalar and of type integer or real. COUNT MAX (optional) shall be scalar and of type integer. -- Summary: system_clock with real-type count_rate does not compile Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tobias dot burnus at physik dot fu-berlin dot de http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28484
[Bug target/28481] regression from 3.x: 4.1.1 uses memory where it can use registers
--- Comment #3 from vda dot linux at googlemail dot com 2006-07-25 17:18 --- With this test program: #include sys/time.h #include stdio.h typedef unsigned u32; struct serpent_ctx { u32 expkey[132]; }; void serpent_encrypt(void *ctx, u32 *dst, const u32 *src); u32 v[4],u[4]; struct serpent_ctx ctx; int main() { time_t t; int count; t = time(NULL); while(t == time(NULL)) /*wait*/; t = time(NULL); count = 0; while(t == time(NULL)) { serpent_encrypt(ctx, u, v); serpent_encrypt(ctx, u, v); serpent_encrypt(ctx, u, v); serpent_encrypt(ctx, u, v); count++; } printf(ops/second=%d\n, count); return 0; } I see that bigger code = slower code: # size serpent343-O3 serpent411-O3 serpent343-Os textdata bss dec hex filename 4285 260 59251371411 serpent343-O3 4461 260 592531314c1 serpent411-O3 5101 260 59259531741 serpent343-Os 343-O3 is just tiny bit smaller, and it also is tiny bit faster: # ./serpent343-O3;./serpent343-O3;./serpent343-O3; ops/second=168637 ops/second=166610 ops/second=169509 # ./serpent411-O3;./serpent411-O3;./serpent411-O3; ops/second=164809 ops/second=163172 ops/second=161431 I tried longer runs. It is definitely not just a test variability. The biggest is the slowest: # ./serpent343-Os;./serpent343-Os;./serpent343-Os; ops/second=158495 ops/second=151342 ops/second=154777 So, yes, this is also a smallish speed regression too. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28481
[Bug rtl-optimization/28071] [4.1/4.2 regression] A file that can not be compiled in reasonable time/space
--- Comment #22 from patchapp at dberlin dot org 2006-07-25 18:20 --- Subject: Bug number PR rtl-optimization/28071 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2006-07/msg01083.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28071
[Bug middle-end/28473] [4.0/4.1/4.2 Regression] with -O, casting result of round(x) to uint64_t produces wrong values for x INT_MAX
--- Comment #6 from roger at eyesopen dot com 2006-07-25 20:02 --- Grr. I've just noticed richi has just assigned this patch to himself. I also have a patch that been bootstrapped and has nearly finished regression testing, that I was just about to post/commit. richi what does your fix look like? Mine contains several copies of: if (!TARGET_C99_FUNCTIONS) break; ! if (outprec TYPE_PRECISION (long_integer_type_node) ! || (outprec == TYPE_PRECISION (long_integer_type_node) ! !TYPE_UNSIGNED (type))) fn = mathfn_built_in (s_intype, BUILT_IN_LCEIL); + else if (outprec == TYPE_PRECISION (long_long_integer_type_node) + !TYPE_UNSIGNED (type)) + fn = mathfn_built_in (s_intype, BUILT_IN_LLCEIL); break; [Serves me right for not assigning this when pinkia asked me to investigate. I knew there was a good reason I don't normally bother with recent PRs]. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28473
[Bug middle-end/28473] [4.0/4.1/4.2 Regression] with -O, casting result of round(x) to uint64_t produces wrong values for x INT_MAX
--- Comment #7 from roger at eyesopen dot com 2006-07-25 20:08 --- Ahh, I've just found the Richard's patch submission posting at http://gcc.gnu.org/ml/gcc-patches/2006-07/msg01065.html I agree with Andrew Pinski, I think my changes are the better fix. We also need to investigate wether (unsigned int)round(x) is better implemented as (unsigned int)llround(x). For the time being, my patch doesn't perform this transformation, and using lround is unsafe. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28473
[Bug fortran/28484] system_clock with real-type count_rate does not compile
--- Comment #1 from kargl at gcc dot gnu dot org 2006-07-25 20:22 --- gfortran is primarily a Fortran 95 with a few Fortran 2003 enhancements. -- kargl at gcc dot gnu dot org changed: What|Removed |Added CC||kargl at gcc dot gnu dot org Severity|normal |enhancement http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28484
[Bug debug/27574] [4.1 Regression] MIssing debug info at -O0 for a local variable in a C++ constructor
--- Comment #9 from amylaar at gcc dot gnu dot org 2006-07-25 20:43 --- Created an attachment (id=11938) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11938action=view) g++.dg/debug test case As far as I can tell, as a g++.dg/debug test case, this passes for stabs, but fails for dwarf. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27574
[Bug c/28485] New: no prototype in stdlib.h for mkstemp()
Attempting to use mkstemp() with the -Wall argument specified, the message bug.c:8: warning: implicit declaration of function #8216;mkstemp#8217; is issued even though stdlib.h is #included. The sample program is stripped to the bones so there is little extraneous material. Below is the compiler with options as requested: $ gcc -c bug.c -ansi -Wall -v -save-temps Using built-in specs. Target: i386-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-libgcj-multifile --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic --host=i386-redhat-linux Thread model: posix gcc version 4.1.1 20060525 (Red Hat 4.1.1-1) /usr/libexec/gcc/i386-redhat-linux/4.1.1/cc1 -E -quiet -v bug.c -mtune=generic -ansi -Wall -fpch-preprocess -o bug.i ignoring nonexistent directory /usr/lib/gcc/i386-redhat-linux/4.1.1/../../../../i386-redhat-linux/include #include ... search starts here: #include ... search starts here: /usr/local/include /usr/lib/gcc/i386-redhat-linux/4.1.1/include /usr/include End of search list. /usr/libexec/gcc/i386-redhat-linux/4.1.1/cc1 -fpreprocessed bug.i -quiet -dumpbase bug.c -mtune=generic -ansi -auxbase bug -Wall -ansi -version -o bug.s GNU C version 4.1.1 20060525 (Red Hat 4.1.1-1) (i386-redhat-linux) compiled by GNU C version 4.1.1 20060525 (Red Hat 4.1.1-1). GGC heuristics: --param ggc-min-expand=63 --param ggc-min-heapsize=62486 Compiler executable checksum: 7a31534f101210f86e6343d2c0c239f8 bug.c: In function #8216;main#8217;: bug.c:8: warning: implicit declaration of function #8216;mkstemp#8217; as -V -Qy -o bug.o bug.s GNU assembler version 2.16.91.0.6 (i386-redhat-linux) using BFD version 2.16.91.0.6 20060212 -- Summary: no prototype in stdlib.h for mkstemp() Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: robert-gcc at pine-ridge dot ca GCC build triplet: ??? GCC host triplet: ??? GCC target triplet: ??? http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28485
[Bug c/28485] no prototype in stdlib.h for mkstemp()
--- Comment #1 from robert-gcc at pine-ridge dot ca 2006-07-25 21:15 --- Created an attachment (id=11939) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11939action=view) The .i file requested -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28485
[Bug c/28485] no prototype in stdlib.h for mkstemp()
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-07-25 21:17 --- The uuse of -ansi causes the glibc headers to only define ISO C functions. This is not a GCC bug or even a glibc bug but a bug in your invocation. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28485
[Bug tree-optimization/8361] [4.1/4.2 regression] C++ compile-time performance regression
--- Comment #68 from steven at gcc dot gnu dot org 2006-07-25 22:31 --- New timings. These were taken on the same box as those of comment #62 and comment #64 (Intel x86_64 3.20GHz, 1GB ram). Times are usr times Invokation: time g++ -S -fpermissive -Ox -m64 generate-3.4.ii GC params for cc1plus: --param ggc-min-expand=98 --param ggc-min-heapsize=127550 version ID -O2 -O3 GCC 3.4 3.4.6 0m23.673s 0m24.362s GCC 4.0 4.0.4 20060725 0m23.009s 0m23.849s GCC 4.1 4.1.2 20060725 0m24.018s 0m25.294s GCC 4.2 4.2.0 20060724 0m25.214s 0m26.242s -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8361
[Bug tree-optimization/8361] [4.1/4.2 regression] C++ compile-time performance regression
--- Comment #69 from steven at gcc dot gnu dot org 2006-07-25 22:35 --- Re. comment #68, I should have added that all compilers were built with gcc (GCC) 4.0.2 20050901 (prerelease) (SUSE Linux) with CFLAGS=-O2 -g. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8361
[Bug middle-end/26983] [4.0/4.1/4.2 Regression] Missing label in a nested function with builtin_setjmp/longjmp
--- Comment #4 from steven at gcc dot gnu dot org 2006-07-25 22:52 --- In the .104.expand dump we have: (insn 10 9 11 3 (set (reg/f:SI 63) (label_ref:SI 16)) -1 (nil) (insn_list:REG_LABEL 16 (nil))) and ;; Start of basic block 4, registers live: (nil) (code_label 16 15 52 4 8 [1 uses]) But in the .105.sibling dump, we have already lost the label and in fact the entire basic block 4. Apparently gcc decides that the block is unreachable...? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26983
[Bug middle-end/28473] [4.0/4.1/4.2 Regression] with -O, casting result of round(x) to uint64_t produces wrong values for x INT_MAX
--- Comment #8 from sayle at gcc dot gnu dot org 2006-07-25 23:22 --- Subject: Bug 28473 Author: sayle Date: Tue Jul 25 23:21:56 2006 New Revision: 115742 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=115742 Log: PR middle-end/28473 * convert.c (convert_to_integer): When transforming (T)foo(x) into bar(x) check that bar's result type can represent all the values of T. * gcc.dg/fold-convround-1.c: New test case. Added: trunk/gcc/testsuite/gcc.dg/fold-convround-1.c Modified: trunk/gcc/ChangeLog trunk/gcc/convert.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28473
[Bug c++/28487] New: subclass of a STL class such as list cannot itself be a template class
The following code will compile with any specific type as the content of the list parent class, but will not compile when the content is a template parameter of the subclass. My goal was to get an iterator to the parent class and I've not found a way to do that. This behavior also exists with gcc 4.1.1 and gcc 3.4.3. gcc (GCC) 4.2.0 20060723 (experimental) --- bad.cpp: #include list using namespace std; template class C class D1 : public listC { public: D1( void ) { listC::iterator it; } }; struct T { }; class D2 : public listT { public: D2( void ) { listT::iterator it; } }; --- bad.cpp: In constructor 'D1C::D1()': bad.cpp:5: error: expected `;' before 'it' -- Summary: subclass of a STL class such as list cannot itself be a template class Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: sesquized at sbcglobal dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28487
[Bug fortran/28439] [4.1 only] Multiple evaluations of arithmetic if condition
--- Comment #11 from kargl at gcc dot gnu dot org 2006-07-25 23:31 --- Subject: Bug 28439 Author: kargl Date: Tue Jul 25 23:31:16 2006 New Revision: 115743 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=115743 Log: 2006-07-25 Steven G. Kargl [EMAIL PROTECTED] PR fortran/28439 *trans-stmt.c (gfc_trans_arithmetic_if): Evaluate the condition once. gfortran.dg/arithmetic_if.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/arithmetic_if.f90 Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/trans-stmt.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28439
[Bug fortran/28439] [4.1 only] Multiple evaluations of arithmetic if condition
--- Comment #12 from kargl at gcc dot gnu dot org 2006-07-25 23:32 --- Fixed in 4.1 -- kargl at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED Target Milestone|--- |4.1.2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28439
[Bug c++/28487] subclass of a STL class such as list cannot itself be a template class
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-07-26 00:23 --- listC::iterator You are missing typename in front of that. The corrected source is: #include list using namespace std; template class C class D1 : public listC { public: D1( void ) { typename listC::iterator it; } }; struct T { }; class D2 : public listT { public: D2( void ) { listT::iterator it; } }; -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28487
[Bug middle-end/28473] [4.0/4.1 Regression] with -O, casting result of round(x) to uint64_t produces wrong values for x INT_MAX
--- Comment #9 from pinskia at gcc dot gnu dot org 2006-07-26 00:24 --- Fixed on the mainline at least. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Known to work|3.4.6 |3.4.6 4.2.0 Summary|[4.0/4.1/4.2 Regression]|[4.0/4.1 Regression] with - |with -O, casting result of |O, casting result of |round(x) to uint64_t|round(x) to uint64_t |produces wrong values for x |produces wrong values for x | INT_MAX | INT_MAX http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28473
[Bug c++/28450] [4.0/4.1/4.2 regression] ICE with new and complex/vector types
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-07-26 00:27 --- This is valid with extension rule. We should produce an empty CONSTRUCTOR for these two cases. If I get time this weekend I will look more into this. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28450
[Bug gcov/profile/28441] Need atomic increment of gcov counters for MP programs
--- Comment #7 from pinskia at gcc dot gnu dot org 2006-07-26 00:28 --- Confirmed. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Severity|normal |enhancement Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-07-26 00:28:18 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28441
[Bug libgomp/28456] [gomp] Segmentation fault with statically linked binaries
--- Comment #9 from pinskia at gcc dot gnu dot org 2006-07-26 00:31 --- (In reply to comment #8) So could you please point me to one? Something like: __thread int i; int main(void) { return i; } Though it might need also another thread to be started too. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28456
[Bug c++/28432] [4.0/4.1/4.2 regression] duplicate no member function declared message
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.0.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28432
[Bug gcov/profile/28478] gcov is not demangling C++ names
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-07-26 00:36 --- The easy workaround is to do pipe the files through c++filt. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Severity|major |normal http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28478
[Bug middle-end/28476] msp430-gcc with -Wunreachable-code Segmentation fault
--- Comment #4 from pinskia at gcc dot gnu dot org 2006-07-26 00:40 --- I think this was fixed in 3.3 and I think this is a dup of bug 11142 or even PR 10660 or PR 10580. Can you try a 3.3 release? Also msp430 is not part of the FSF GCC. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28476
[Bug fortran/28335] flush() / write() statement on closed units - error?
--- Comment #3 from jvdelisle at gcc dot gnu dot org 2006-07-26 01:47 --- Subject: Bug 28335 Author: jvdelisle Date: Wed Jul 26 01:47:13 2006 New Revision: 115750 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=115750 Log: 2006-07-25 Jerry DeLisle [EMAIL PROTECTED] PR libgfortran/28335 * gfortran.dg/no_unit_error_1.f90: New test. * gfortran.dg/no_unit_error_2.f90: New test. * gfortran.dg/temporary_1.f90: Remove extraneous CLOSE. Added: trunk/gcc/testsuite/gfortran.dg/no_unit_error_1.f90 trunk/gcc/testsuite/gfortran.dg/no_unit_error_2.f90 Modified: trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/temporary_1.f90 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28335
[Bug fortran/28335] flush() / write() statement on closed units - error?
--- Comment #4 from jvdelisle at gcc dot gnu dot org 2006-07-26 01:51 --- Patch was committed also, but I messed up pr number in ChangeLog. Fixed that. This PR is fixed in 4.2 only. -- jvdelisle at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED Target Milestone|--- |4.2.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28335
[Bug gcov/profile/28480] [4.2 Regression] inliner-1.c:31: ICE: in set_bb_for_stmt, at tree-cfg.c:2775
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-07-26 03:13 --- Also happens on powerpc-darwin. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org GCC target triplet|hppa-unknown-linux-gnu |hppa-unknown-linux-gnu, ||powerpc-darwin Keywords||ice-on-valid-code Summary|inliner-1.c:31: ICE: in |[4.2 Regression] inliner- |set_bb_for_stmt, at tree- |1.c:31: ICE: in |cfg.c:2775 |set_bb_for_stmt, at tree- ||cfg.c:2775 Target Milestone|--- |4.2.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28480
[Bug c/28488] New: incorrect warning says signed and unsigned type in conditional expression
This warning indicates a signed/unsigned comparison, but there is no signed/unsigned comparison that I can see. [EMAIL PROTECTED] ~ $ gcc -v -save-temps -Wall -Wextra -Werror conditional-sign-mismatch-bug.c Using built-in specs. Target: i686-pc-linux-gnu Configured with: /var/tmp/portage/gcc-4.1.1/work/gcc-4.1.1/configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/4.1.1 --includedir=/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/include --datadir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1 --mandir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1/man --infodir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1/info --with-gxx-include-dir=/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/include/g++-v4 --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --disable-altivec --enable-nls --without-included-gettext --with-system-zlib --disable-checking --disable-werror --disable-libunwind-exceptions --disable-multilib --disable-libmudflap --disable-libssp --disable-libgcj --enable-languages=c,c++ --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu Thread model: posix gcc version 4.1.1 (Gentoo 4.1.1) /usr/libexec/gcc/i686-pc-linux-gnu/4.1.1/cc1 -E -quiet -v conditional-sign-mismatch-bug.c -mtune=pentiumpro -Wall -Wextra -Werror -fpch-preprocess -o conditional-sign-mismatch-bug.i ignoring nonexistent directory /usr/local/include ignoring nonexistent directory /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../../i686-pc-linux-gnu/include #include ... search starts here: #include ... search starts here: /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/include /usr/include End of search list. /usr/libexec/gcc/i686-pc-linux-gnu/4.1.1/cc1 -fpreprocessed conditional-sign-mismatch-bug.i -quiet -dumpbase conditional-sign-mismatch-bug.c -mtune=pentiumpro -auxbase conditional-sign-mismatch-bug -Wall -Wextra -Werror -version -o conditional-sign-mismatch-bug.s GNU C version 4.1.1 (Gentoo 4.1.1) (i686-pc-linux-gnu) compiled by GNU C version 4.1.1 (Gentoo 4.1.1). GGC heuristics: --param ggc-min-expand=99 --param ggc-min-heapsize=129574 Compiler executable checksum: 33e66c7a45cdf50541c0a56896affe02 cc1: warnings being treated as errors conditional-sign-mismatch-bug.c: In function main: conditional-sign-mismatch-bug.c:13: warning: signed and unsigned type in conditional expression -- Summary: incorrect warning says signed and unsigned type in conditional expression Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: gurganbl at rose-hulman dot edu GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28488
[Bug c/28488] incorrect warning says signed and unsigned type in conditional expression
--- Comment #1 from gurganbl at rose-hulman dot edu 2006-07-26 03:41 --- Created an attachment (id=11940) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11940action=view) original source -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28488
[Bug c/28488] incorrect warning says signed and unsigned type in conditional expression
--- Comment #2 from gurganbl at rose-hulman dot edu 2006-07-26 03:42 --- Created an attachment (id=11941) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11941action=view) preprocessesed source -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28488
[Bug c/28488] incorrect warning says signed and unsigned type in conditional expression
--- Comment #3 from gurganbl at rose-hulman dot edu 2006-07-26 03:43 --- Created an attachment (id=11942) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11942action=view) generated assembly -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28488
[Bug debug/27574] [4.1 Regression] MIssing debug info at -O0 for a local variable in a C++ constructor
--- Comment #10 from drow at gcc dot gnu dot org 2006-07-26 03:52 --- Subject: Re: [4.1 Regression] MIssing debug info at -O0 for a local variable in a C++ constructor On Tue, Jul 25, 2006 at 05:08:18PM -, joern dot rennecke at st dot com wrote: When I compile the testcase (using -g -O0) with a cc1plus built from todays sources (r115734), a test search for problem in the .s file comes up empty. OTOH, both a native and a cross build eventually failed. Can you find out the exact version of gcc that you tested? Now it fails. What the heck? The problem is that an abstract instance of 'problem' is never emitted. For the two concrete instances we try to reference the abstract copy but there isn't one. The variable is emitted, but without a name. The first abstract instance of A::A is a declaration. Later a definition (still abstract) is seen. But its DECL_INITIAL is error_mark_node! If I had to guess I'd say that this was a C++ front end problem, or maybe a recent change in cgraph. I don't have time to debug it further right now. The abstract copy of the function has to have a body, or dwarf2out has no structure with which to describe the local variables. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27574
[Bug tree-optimization/28489] New: [4.2 regression] ICE in move_insn, at haifa-sched.c:1968
I get the following ICE on ia64 with gcc 4.2. Only happens at -O2, and doesn't happen with gcc 4.0 or 4.1. [EMAIL PROTECTED]:~/delta/bin$ /usr/lib/gcc-snapshot/bin/gcc -c -O2 mini.c mini.c: In function 'PL_next_solution': mini.c:101: warning: cast to pointer from integer of different size mini.c:119: warning: cast to pointer from integer of different size mini.c:187: warning: assignment makes pointer from integer without a cast mini.c:216: internal compiler error: in move_insn, at haifa-sched.c:1968 Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. For Debian GNU/Linux specific bug reporting instructions, see URL:file:///usr/share/doc/gcc-4.1/README.Bugs. [EMAIL PROTECTED]:~/delta/bin$ /usr/lib/gcc-snapshot/bin/gcc -c -O1 mini.c mini.c: In function 'PL_next_solution': mini.c:101: warning: cast to pointer from integer of different size mini.c:119: warning: cast to pointer from integer of different size mini.c:187: warning: assignment makes pointer from integer without a cast [EMAIL PROTECTED]:~/delta/bin$ gcc-4.1 -c -O2 mini.c mini.c: In function 'PL_next_solution': mini.c:101: warning: cast to pointer from integer of different size mini.c:119: warning: cast to pointer from integer of different size mini.c:187: warning: assignment makes pointer from integer without a cast [EMAIL PROTECTED]:~/delta/bin$ gcc-4.0 -c -O2 mini.c mini.c: In function 'PL_next_solution': mini.c:101: warning: cast to pointer from integer of different size mini.c:119: warning: cast to pointer from integer of different size mini.c:187: warning: assignment makes pointer from integer without a cast [EMAIL PROTECTED]:~/delta/bin$ -- Summary: [4.2 regression] ICE in move_insn, at haifa-sched.c:1968 Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tbm at cyrius dot com GCC target triplet: ia64-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28489
[Bug tree-optimization/28489] [4.2 regression] ICE in move_insn, at haifa-sched.c:1968
--- Comment #1 from tbm at cyrius dot com 2006-07-26 04:51 --- Created an attachment (id=11943) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11943action=view) testcase -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28489
[Bug tree-optimization/28489] [4.2 regression] ICE in move_insn, at haifa-sched.c:1968
--- Comment #2 from tbm at cyrius dot com 2006-07-26 05:02 --- This has started to occur between 20060218 and 20060325. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28489
[Bug target/28490] New: [4.2 regression] ICE in ia64_expand_move, at config/ia64/ia64.c:1088
I get the following ICE with gcc 4.2 on ia64 at -O1. It doesn't happen with 4.0 or 4.1. [EMAIL PROTECTED]:~$ /usr/lib/gcc-snapshot/bin/gcc -c -O1 mini.c mini.c: In function 'readtoken1': mini.c:60: internal compiler error: in ia64_expand_move, at config/ia64/ia64.c:1088 Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. For Debian GNU/Linux specific bug reporting instructions, see URL:file:///usr/share/doc/gcc-4.1/README.Bugs. [EMAIL PROTECTED]:~$ /usr/lib/gcc-snapshot/bin/gcc -c mini.c [EMAIL PROTECTED]:~$ gcc-4.1 -c -O2 mini.c [EMAIL PROTECTED]:~$ gcc-4.0 -c -O2 mini.c [EMAIL PROTECTED]:~$ -- Summary: [4.2 regression] ICE in ia64_expand_move, at config/ia64/ia64.c:1088 Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tbm at cyrius dot com GCC target triplet: ia64-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28490
[Bug target/28490] [4.2 regression] ICE in ia64_expand_move, at config/ia64/ia64.c:1088
--- Comment #1 from tbm at cyrius dot com 2006-07-26 05:41 --- Created an attachment (id=11944) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11944action=view) test case -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28490
[Bug target/28490] [4.2 regression] ICE in ia64_expand_move, at config/ia64/ia64.c:1088
--- Comment #2 from tbm at cyrius dot com 2006-07-26 05:42 --- This has started to occur sometime between 20051122 and 20060218. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28490