[Bug testsuite/35047] gcc 4.3.0 fails vectorisation tests from testsuite with --with-arch=core2
--- Comment #2 from ubizjak at gmail dot com 2008-02-01 08:49 --- Have a patch for the testsuite. gen-vect-X.c vectorizer testcases should probably be moved into gcc.dg/vect, at least those that scan for vectorized loops. -- ubizjak at gmail dot com changed: What|Removed |Added Status|UNCONFIRMED |NEW Component|c |testsuite Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-02-01 08:49:52 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35047
[Bug testsuite/35047] gcc 4.3.0 fails vectorisation tests from testsuite with --with-arch=core2
--- Comment #3 from uros at gcc dot gnu dot org 2008-02-01 08:57 --- Subject: Bug 35047 Author: uros Date: Fri Feb 1 08:57:11 2008 New Revision: 131997 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131997 Log: PR testsuite/35047 * gcc.c-torture/execute/20050316-2.x: New file. * gcc.target/i386/pr17390.c: Update scan pattern. * gcc.dg/builtin-apply4.c: Add -mno-mmx for 32bit x86 targets. * g++.dg/tree-ssa/ivopts-1.C: Remove XPASS for x86 targets. Added: trunk/gcc/testsuite/gcc.c-torture/execute/20050316-2.x Modified: trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/g++.dg/tree-ssa/ivopts-1.C trunk/gcc/testsuite/gcc.dg/builtin-apply4.c trunk/gcc/testsuite/gcc.target/i386/pr17390.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35047
[Bug fortran/32760] [4.3 Regression] Error defining subroutine named PRINT
--- Comment #28 from burnus at gcc dot gnu dot org 2008-02-01 09:34 --- > > A fix for the PR > > This is regtesting as I write. It fixes the first three PRs but not that of > > comment #25. I'm not so happy about the != '(' in: + /* These are definitive indicators that this is a variable. */ else if (gfc_peek_char () != '(' || sym->ts.type != BT_UNKNOWN As "integer, ::" shows, != '(' is not a bullet-proof sign for a variable. (I should not complain too loudly, however, as I have written that part.) + else if (sym->ns == gfc_current_ns->parent + && sym->ts.type == BT_UNKNOWN) + break; I think you can have: else if (sym->ns == gfc_current_ns->parent && (sym->ts.type == BT_UNKNOWN || sym->attr.pointer || sym->as != NULL)) As the following can also not be a procedure name: module m pointer p dimension d(4) contains ... (A procedure can have a pointer attribute or be a vector but this is already taken care of by: "if(sym->attr.external || sym->attr.procedure || sym->attr.function || sym->attr.subroutine) flavor = FL_PROCEDURE;") Thanks for looking into this. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32760
[Bug c++/35049] New: [4.3 Regression] g++.dg/conversion/simd3.C:12: error: invalid operands to binary + (have 'float __vector__' and 'int __vector__')
At rev. 131985 with the last patch for PR35035, g++.dg/conversion/simd3.C fails on i686-apple-darwin9 for both 32 and 64 bit modes with: /opt/gcc/_gcc_clean/gcc/testsuite/g++.dg/conversion/simd3.C: In function 'void foo()': /opt/gcc/_gcc_clean/gcc/testsuite/g++.dg/conversion/simd3.C:12: error: invalid operands to binary + (have 'float __vector__' and 'int __vector__') -- Summary: [4.3 Regression] g++.dg/conversion/simd3.C:12: error: invalid operands to binary + (have 'float __vector__' and 'int __vector__') Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dominiq at lps dot ens dot fr GCC build triplet: i686-apple-darwin9 GCC host triplet: i686-apple-darwin9 GCC target triplet: i686-apple-darwin9 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35049
[Bug rtl-optimization/33410] [4.2/4.3 regression] ICE in iv_analyze_expr, at loop-iv.c:934
--- Comment #14 from belyshev at depni dot sinp dot msu dot ru 2008-02-01 09:38 --- bootstrapped/regtested with BOOT_CFLAGS="-O3 -g": http://gcc.gnu.org/ml/gcc-testresults/2008-02/msg00014.html There is a lot of unexpected failures, so I will retest with BOOT_CFLAGS=-O2 and without the patch in the next ~24..36 hours. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33410
[Bug testsuite/35047] gcc 4.3.0 fails vectorisation tests from testsuite with --with-arch=core2
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-02-01 10:26 --- Fixed.(?) -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35047
[Bug other/35042] Documentation for -finline-limit is incorrect
--- Comment #9 from rguenth at gcc dot gnu dot org 2008-02-01 10:14 --- Subject: Bug 35042 Author: rguenth Date: Fri Feb 1 10:14:08 2008 New Revision: 131998 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131998 Log: 2008-02-01 Richard Guenther <[EMAIL PROTECTED]> PR other/35042 * invoke.texi (-finline-limit): Remove no longer true parts of the documentation. Note that there is no default value. Modified: trunk/gcc/ChangeLog trunk/gcc/doc/invoke.texi -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35042
[Bug other/35042] Documentation for -finline-limit is incorrect
--- Comment #8 from rguenth at gcc dot gnu dot org 2008-02-01 10:14 --- Fixed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35042
[Bug fortran/35040] usage of init expression in its own definition
--- Comment #4 from dfranke at gcc dot gnu dot org 2008-02-01 09:47 --- > And I also believe all our examples in this PR are wrong. In all the invalid examples given in comment #3, the dimension specification is on the rhs of '::'. In my example it's on the lhs. If the latter is invalid too, how about DIMENSION :: xyz(2,2) REAL, PARAMETER :: xyz = RESHAPE((/ 1,2,3,4 /), SHAPE(xyz)) END This should be perfectly valid? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35040
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #6 from ismail at pardus dot org dot tr 2008-02-01 10:45 --- Nice, this is what I was seeing all along. Shouldn't this be a P1 though? -- ismail at pardus dot org dot tr changed: What|Removed |Added CC||ismail at pardus dot org dot ||tr http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug c++/35049] [4.3 Regression] g++.dg/conversion/simd3.C:12: error: invalid operands to binary + (have 'float __vector__' and 'int __vector__')
--- Comment #1 from rguenth at gcc dot gnu dot org 2008-02-01 10:28 --- Regressions should have a target milestone. But -- this error is expected? For reference: /* { dg-do compile } */ typedef int myint; float __attribute__((vector_size(16))) b; int __attribute__((vector_size(16))) d; myint __attribute__((vector_size(16))) d2; unsigned int __attribute__((vector_size(16))) e; void foo() { b + d; /* { dg-error "invalid operands to binary" } */ d += e; /* { dg-error "use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts.*cannot convert 'unsigned int __vector__' to 'int __vector__' in assignment" } */ d2 += d; } so, can you paste the full log of this FAIL? -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35049
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #7 from rguenth at gcc dot gnu dot org 2008-02-01 10:54 --- gcse after reload removes the load imaginary part of the return value (__complex__ float is returned in %eax/%edx pair): @@ -274,12 +274,10 @@ callnanf fstps -24(%ebp) movl-24(%ebp), %ecx - movl%ecx, -12(%ebp) - movl%ecx, %eax - movl-12(%ebp), %edx addl$36, %esp popl%ebx popl%ebp + movl%ecx, %eax ret etc. This is probably a DF and/or target issue. The testcase can be simplified to only call for example the first check_complex function in main(). It also fails with -O -fno-inline -fgcse-after-reload, mycacoshf is the function that is miscompiled (as it returns a complex). -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||zadeck at gcc dot gnu dot ||org, stevenb dot gcc at ||gmail dot com, matz at gcc ||dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #5 from rguenth at gcc dot gnu dot org 2008-02-01 10:33 --- Confirmed. Fails with -O3 -mpc64 (it passes with -fno-gcse-after-reload and also with -ffloat-store) -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Component|c |target Ever Confirmed|0 |1 Keywords||wrong-code Known to work||4.2.3 Last reconfirmed|-00-00 00:00:00 |2008-02-01 10:33:25 date|| Summary|gcc-4.3 generates wrong code|[4.3 Regression] gcc-4.3 |on i386 with -O3|generates wrong code on i386 ||with -O3 Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #8 from stevenb dot gcc at gmail dot com 2008-02-01 11:51 --- Subject: Re: [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3 I would say it is a target issue if the target return insn does not mention that %edx is used. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #10 from rguenth at gcc dot gnu dot org 2008-02-01 11:58 --- Reduced testcase: extern __complex__ float clogf (__complex__ float); __complex__ float mycacoshf (__complex__ float x) { __complex__ float res; res = clogf (x); /* We have to use the positive branch. */ if (__real__ res < 0.0) { res = -res; asm ("" : : : "%ecx", "%ebx", "%esi", "%edi"); } return res; } -fgcse-after-reload removes the load of the clobbered %edx (it's life in the other path) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #9 from steven at gcc dot gnu dot org 2008-02-01 11:53 --- Mine to investigate. -- steven at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |steven at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED Last reconfirmed|2008-02-01 10:33:25 |2008-02-01 11:53:31 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug c++/35049] [4.3 Regression] g++.dg/conversion/simd3.C:12: error: invalid operands to binary + (have 'float __vector__' and 'int __vector__')
--- Comment #3 from pinskia at gcc dot gnu dot org 2008-02-01 11:33 --- I saw this also on i686-linux-gnu. The issue is we are not getting an error on the second statement when we should be. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords||accepts-invalid Last reconfirmed|-00-00 00:00:00 |2008-02-01 11:33:25 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35049
[Bug c++/35049] [4.3 Regression] g++.dg/conversion/simd3.C:12: error: invalid operands to binary + (have 'float __vector__' and 'int __vector__')
--- Comment #2 from dominiq at lps dot ens dot fr 2008-02-01 11:32 --- > so, can you paste the full log of this FAIL? Is this what you are asking for? Executing on host: /opt/gcc/i686-darwin/gcc/testsuite/g++/../../g++ -B/opt/gcc/i686-darwin/gcc/testsuite/g++/../../ /opt/gcc/gcc-4.3-work/gcc/testsuite/g++.dg/conversion/simd3.C -nostdinc++ -I/opt/gcc/i686-darwin/i686-apple-darwin9/libstdc++-v3/include/i686-apple-darwin9 -I/opt/gcc/i686-darwin/i686-apple-darwin9/libstdc++-v3/include -I/opt/gcc/gcc-4.3-work/libstdc++-v3/libsupc++ -I/opt/gcc/gcc-4.3-work/libstdc++-v3/include/backward -I/opt/gcc/gcc-4.3-work/libstdc++-v3/testsuite/util -fmessage-length=0 -ansi -pedantic-errors -Wno-long-long -fno-show-column -S -o simd3.s(timeout = 300) /opt/gcc/gcc-4.3-work/gcc/testsuite/g++.dg/conversion/simd3.C: In function 'void foo()':^M /opt/gcc/gcc-4.3-work/gcc/testsuite/g++.dg/conversion/simd3.C:12: error: invalid operands to binary + (have 'float __vector__' and 'int __vector__')^M compiler exited with status 1 output is: /opt/gcc/gcc-4.3-work/gcc/testsuite/g++.dg/conversion/simd3.C: In function 'void foo()':^M /opt/gcc/gcc-4.3-work/gcc/testsuite/g++.dg/conversion/simd3.C:12: error: invalid operands to binary + (have 'float __vector__' and 'int __vector__')^M PASS: g++.dg/conversion/simd3.C (test for errors, line 12) FAIL: g++.dg/conversion/simd3.C (test for errors, line 13) PASS: g++.dg/conversion/simd3.C (test for excess errors) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35049
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #11 from rguenth at gcc dot gnu dot org 2008-02-01 12:02 --- Re comment #9 - after postreload there is only (insn 62 61 40 4 test-cacoshf.c:16 (set (reg:SF 0 ax [ ]) (mem/c:SF (plus:SI (reg/f:SI 6 bp) (const_int -20 [0xffec])) [0 S4 A8])) 97 {*movsf_1} (nil)) (insn 40 62 45 4 test-cacoshf.c:16 (set (reg:SF 1 dx [+4 ]) (mem/c:SF (plus:SI (reg/f:SI 6 bp) (const_int -16 [0xfff0])) [0 res$imag+0 S4 A8])) 97 {*movsf_1} (nil)) (insn 45 40 56 4 test-cacoshf.c:16 (use (reg/i:SC 0 ax)) -1 (nil)) ;; End of basic block 4 -> ( 1) ;; lr out 0 [ax] 1 [dx] 6 [bp] 7 [sp] 20 [frame] but (reg:SC ax) should include dx, right? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug testsuite/35047] gcc 4.3.0 fails vectorisation tests from testsuite with --with-arch=core2
--- Comment #5 from jrp at dial dot pipex dot com 2008-02-01 12:24 --- Not completely: === gcc tests === Running target unix FAIL: gcc.dg/compat/vector-2 c_compat_x_tst.o-c_compat_y_tst.o execute XPASS: gcc.dg/cpp/cmdlne-dI-M.c scan-file (^|n)cmdlne-dI-M.*:[^n]*cmdlne-dI-M.c XPASS: gcc.dg/cpp/cmdlne-dM-M.c scan-file (^|n)cmdlne-dM-M[^n]*:[^n]*cmdlne-dM-M.c FAIL: gcc.dg/tree-ssa/gen-vect-11.c scan-tree-dump-times vect "vectorized 1 loops" 1 FAIL: gcc.dg/tree-ssa/gen-vect-11c.c scan-tree-dump-times vect "vectorized 0 loops" 1 FAIL: gcc.dg/tree-ssa/gen-vect-2.c scan-tree-dump-times vect "Vectorizing an unaligned access" 0 FAIL: gcc.dg/tree-ssa/gen-vect-32.c scan-tree-dump-times vect "vectorized 1 loops" 1 FAIL: gcc.dg/vect/vect-iv-9.c scan-tree-dump-times vect "vectorized 1 loops" 2 === gcc Summary === # of expected passes48734 # of unexpected failures6 # of unexpected successes 2 # of expected failures 165 # of untested testcases 35 # of unsupported tests 269 /home/jrp/build/gcc/xgcc version 4.3.0 20080201 (experimental) (GCC) === gfortran tests === Running target unix === gfortran Summary === # of expected passes23686 # of expected failures 3 # of unsupported tests 16 /home/jrp/build/gcc/testsuite/gfortran/../../gfortran version 4.3.0 20080201 (experimental) (GCC) === g++ tests === Running target unix FAIL: g++.dg/conversion/simd3.C (test for errors, line 13) === g++ Summary === # of expected passes17424 # of unexpected failures1 # of expected failures 82 # of unsupported tests 88 /home/jrp/build/gcc/testsuite/g++/../../g++ version 4.3.0 20080201 (experimental) (GCC) Compiler version: 4.3.020080201(experimental)(GCC) Platform: i686-pc-linux-gnu configure flags: -v --enable-languages=c,c++,fortran --enable-shared --with-system-zlib --without-included-gettext --enable-threads=posix --enable-nls --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --enable-checking=release --with-arch=core2 -- jrp at dial dot pipex dot com changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|FIXED | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35047
[Bug ada/35050] New: renames entities not in symbol table
The example below illustrate that the .ali files do not always contain renamed subprograms references: >>> --pb_renaming.ads package pb_renaming is function Plus(X, Y: Integer) return Integer; function My_plus(X, Y: Integer) return Integer renames Plus; function Add(X, Y: Integer) return Integer renames "+"; A : Integer; end pb_renaming; >>> --pb_renaming.adb package body pb_renaming is function Plus(X, Y: Integer) return Integer is begin return X+Y; end Plus; begin --below, Add is properly cross-referenced by gnatxref in gnat v3.4.1 but not in gnat v4.1.3 --below, My_plus is never properly cross-referenced according to gnatxref output A := Add(4, 6) + My_plus(4, 6); end pb_renaming; >> Gnatxref output extract: My_plus function Decl: pb_renaming.ads3:12 Reference entry is missing for My_plus regards, chris -- Summary: renames entities not in symbol table Product: gcc Version: 4.1.3 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: meudecc at itcarlow dot ie http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35050
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #14 from rguenth at gcc dot gnu dot org 2008-02-01 13:15 --- Let's CC some x86 maintainers -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||uros at gcc dot gnu dot org, ||hubicka at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #20 from matz at gcc dot gnu dot org 2008-02-01 14:40 --- Created an attachment (id=15074) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15074&action=view) patch for postreload-gcse This fixes the oversight in postreload-gcse.c and this bug. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #22 from stevenb dot gcc at gmail dot com 2008-02-01 14:55 --- Subject: Re: [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3 Could you retain the " gcc_assert (HARD_REGISTER_P (x)); please? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #21 from matz at gcc dot gnu dot org 2008-02-01 14:45 --- GCSE itself might or might not be safe, I haven't yet gone through all paths. But normally it enters only pseudo regs into the hash tables. It does remember invalidation of hard-regs, though, and that definitely is broken in the same way. The question is just, if it matters in the end, if it only ever fiddles with instructions setting/using pseudos. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #18 from stevenb dot gcc at gmail dot com 2008-02-01 14:14 --- Subject: Re: [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3 Why would we be calling expand_null_return to begin with, if there is a proper return statement? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #17 from rguenth at gcc dot gnu dot org 2008-02-01 14:13 --- Hm, it might be all due to the reg-stack.c hunk in rths patch: + /* A top-level clobber with no REG_DEAD, and no hard-regnum + indicates an uninitialized value. Because reload removed + all other clobbers, this must be due to a function + returning without a value. Load up a NaN. */ ... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #16 from rguenth at gcc dot gnu dot org 2008-02-01 14:08 --- The problem is that we retain (insn 38 32 61 4 test-cacoshf.c:16 (clobber (reg/i:SC 0 ax)) -1 (nil)) after postreload and gcse rightfully assumes such clobbers are removed (and hoists over them). They are supposed to be removed by reload1.c:reload() which does /* Make a pass over all the insns and delete all USEs which we inserted only to tag a REG_EQUAL note on them. Remove all REG_DEAD and REG_UNUSED notes. Delete all CLOBBER insns, except those that refer to the return value and the special mem:BLK CLOBBERs added to prevent the scheduler from misarranging variable-array code, and simplify (subreg (reg)) operands. Also remove all REG_RETVAL and REG_LIBCALL notes since they are no longer useful or accurate. Strip and regenerate REG_INC notes that may have been moved around. */ ... && (!REG_P (XEXP (PATTERN (insn), 0)) || ! REG_FUNCTION_VALUE_P (XEXP (PATTERN (insn), 0) { delete_insn (insn); continue; } where the exception for return value clobbers was added by rth with r30401 | rth | 1999-11-05 01:35:10 +0100 (Fri, 05 Nov 1999) | 9 lines * function.c (diddle_return_value): New. (expand_function_end): Use it. * stmt.c (expand_null_return): Likewise. (expand_value_return): Likewise. * reg-stack.c (subst_stack_regs_pat): Handle clobbers at top-level. * reload1.c (reload): Don't remove return value clobbers. seemingly as an optimization(?) with stmt.c:expand_null_return(): void expand_null_return (void) { /* If this function was declared to return a value, but we didn't, clobber the return registers so that they are not propagated live to the rest of the function. */ clobber_return_register (); which doesn't make sense to me (_which_ rest of the function?). Maybe this refers to missed optimizations with the RTL inliner? Removing this restriction from reload fixes this problem. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug fortran/34729] Localization of run-time error messages, written into the executable
--- Comment #1 from fxcoudert at gcc dot gnu dot org 2008-02-01 13:59 --- (In reply to comment #0) > Either the localized message should not be truncated - or the English version > of the string should be used throughout. I'm afraid this one has my name on it, as I added localization support to the front-end. It's really due to stupid lack of thinking on my part: 104372 fxcoudert /* Build a Fortran character constant from a zero-terminated string. 104372 fxcoudertSince this is mainly used for error messages, the string will get 104372 fxcouderttranslated. */ 88528 tobi tree 104372 fxcoudert gfc_build_cstring_const (const char *msgid) 88528 tobi { 104372 fxcoudert return gfc_build_string_const (strlen (msgid) + 1, _(msgid)); 88528 tobi } PS: please note that this wouldn't happen if german translation wasn't longer that the english messages, so maybe I can report that bug upstream to the maintainer of the German language (is there a German academy for that?): PR title "German meaning/character ratio is too low", keywork "missed-optimization". -- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added CC||fxcoudert at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-02-01 13:59:09 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34729
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #13 from rguenth at gcc dot gnu dot org 2008-02-01 13:04 --- gcse-after-reload inserts (insn 66 30 31 3 (set (reg:SF 1 dx [+4 ]) (mem/c:SF (plus:SI (reg/f:SI 6 bp) (const_int -16 [0xfff0])) [0 res$imag+0 S4 A] on the edge from bb3 to bb4, which looks correct. This insn vanishes during 184r.dse2: DCE: Deleting insn 66 deleting insn with uid = 66. One problem may be that gcse doesn't update LIFE: ... (insn 30 60 66 3 test-cacoshf.c:13 (parallel [ (asm_operands/v ("") ("") 0 [] [] 1606) (clobber (reg:QI 18 fpsr)) (clobber (reg:QI 17 flags)) (clobber (reg:QI 5 di)) (clobber (reg:QI 4 si)) (clobber (reg:QI 3 bx)) (clobber (reg:QI 2 cx)) ]) -1 (nil)) (insn 66 30 31 3 (set (reg:SF 1 dx [+4 ]) (mem/c:SF (plus:SI (reg/f:SI 6 bp) (const_int -16 [0xfff0])) [0 res$imag+0 S4 A8])) -1 (nil)) ;; End of basic block 3 -> ( 4) ;; lr out 6 [bp] 7 [sp] 9 [st(1)] 20 [frame] lr out doesn't include dx. Is gcse supposed to update lr out? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/14743] -msdata=eabi does not produce r2/r13 relative access
--- Comment #6 from manu at gcc dot gnu dot org 2008-02-01 13:10 --- Reported almost 4 years ago, never confirmed. Is this still valid? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14743
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
-- steven at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|steven at gcc dot gnu dot |unassigned at gcc dot gnu |org |dot org Status|ASSIGNED|NEW http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #23 from matz at gcc dot gnu dot org 2008-02-01 14:59 --- I haven't removed it. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #19 from rguenther at suse dot de 2008-02-01 14:38 --- Subject: Re: [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3 On Fri, 1 Feb 2008, stevenb dot gcc at gmail dot com wrote: > --- Comment #18 from stevenb dot gcc at gmail dot com 2008-02-01 14:14 > --- > Subject: Re: [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3 > > Why would we be calling expand_null_return to begin with, if there is > a proper return statement? No idea, we seem to add these clobbers unconditionally from expand_function_end. One fix is to teach postreload-gcse record_last_set_info about the other parts of the (clobber (reg:SC ax)) as it currently only sees ax. Micha has a patch for this (gcse.c looks similarly affected). Richard. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #12 from rguenth at gcc dot gnu dot org 2008-02-01 12:53 --- Lets make this P1 until it is properly analyzed as eventually this also affects functions returning DImode. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug fortran/19925] Implied do-loop in an initialization expression is broken
--- Comment #20 from dominiq at lps dot ens dot fr 2008-02-01 15:31 --- With the patch in comment #18, on a Core2Duo 2.16Ghz I get: 5000 0.54 secs 1 1.82 2 6.74 436.5 6 206 65535 258 65536 68 <-- Error: Initialization expression didn't reduce (1) 8 149Ditto 10 281Ditto So the threshold seems to be 2**16. While the timings in comment #18 seem more or less cubic in n, on the Core2duo, they start more or less quadratic in n up to 2, then grow up much faster with n, as if they were the addition of one quadratic behavior and one cubic (or faster) with prefactors depending on the processor. Note that the patch in #18, is not needed below some value of n: n=1 pass on unpatched ppc. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19925
[Bug fortran/19925] Implied do-loop in an initialization expression is broken
--- Comment #19 from burnus at gcc dot gnu dot org 2008-02-01 13:39 --- > The ICE for the second case on comment 10 goes away. However, compile time is > very long as N increases: I played around (w/o your patch) with several compilers and gfortran does not do too bad (all compilers with N=15000 and -O0): gfortran: 10.45s, ifort: 10.43, g95: 34.73s. However, it can be much faster: openf95 0.11s; NAG f95 0.12s. sunf95 0.2s. -- burnus at gcc dot gnu dot org changed: What|Removed |Added CC||burnus at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19925
[Bug target/35045] [4.3 Regression] gcc-4.3 generates wrong code on i386 with -O3
--- Comment #15 from steven at gcc dot gnu dot org 2008-02-01 13:19 --- CCing half the world is not going to help anyone. Try adding TODO_df_finish. -- steven at gcc dot gnu dot org changed: What|Removed |Added CC|stevenb dot gcc at gmail dot| |com | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35045
[Bug fortran/34729] Localization of run-time error messages, written into the executable
--- Comment #2 from fxcoudert at gcc dot gnu dot org 2008-02-01 14:22 --- Created an attachment (id=15073) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15073&action=view) Patch I don't think it's a regression, but it certainly is a annoying bug for people who have a non-english locale. As it's really a one-line patch (well, I've created a new function and renamed it everywhere, so the diff if big, but the patch is to use strlen() on the translated string), maybe it would be good to have it in 4.3 nonetheless. I'll let active maintainers decide. Here's the ChangeLog that goes with the patch: 2008-02-01 Francois-Xavier Coudert <[EMAIL PROTECTED]> PR fortran/34729 * trans-const.c (gfc_build_string_const): Don't call gettext. (gfc_build_localized_string_const): New function. * trans-const.h (gfc_build_localized_string_const): New prototype. * trans.c (gfc_trans_runtime_check): Use gfc_build_localized_string_const instead of gfc_build_string_const. (gfc_call_malloc): Likewise. (gfc_allocate_with_status): Likewise. (gfc_allocate_array_with_status): Likewise. (gfc_deallocate_with_status): Likewise. (gfc_call_realloc): Likewise. * trans-io.c (gfc_trans_io_runtime_check): Likewise. -- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |fxcoudert at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34729
[Bug libgcj/28009] libjava cannot be cross-built; X_CFLAGS includes /usr/include
--- Comment #5 from jwlemke at specifix dot com 2008-02-01 16:43 --- I ran into this problem as well. I was building x86 x mips64. FWIW, my solution was this: 2008-01-31 James Lemke <[EMAIL PROTECTED]> * configure.ac: For a cross, if --with-x was not specified supress it. * configure: Regenerate. Index: gcc/libjava/configure.ac === RCS file: /services/cvs/cvsroot/latest/gcc/libjava/configure.ac,v retrieving revision 1.1.1.9.2.6 diff -u -p -r1.1.1.9.2.6 configure.ac --- gcc/libjava/configure.ac25 Sep 2006 02:03:13 - 1.1.1.9.2.6 +++ gcc/libjava/configure.ac1 Feb 2008 16:25:52 - @@ -705,6 +705,10 @@ AC_SUBST(ZLIBSPEC) ZLIBTESTSPEC= AC_SUBST(ZLIBTESTSPEC) +if test "x${with_x-unset}" = xunset -a "x$cross_compiling" = xyes; then +with_x=no +fi + AC_PATH_XTRA # FIXME: this should be _libs on some hosts. -- jwlemke at specifix dot com changed: What|Removed |Added CC||jwlemke at specifix dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28009
[Bug fortran/19925] Implied do-loop in an initialization expression is broken
--- Comment #21 from sgk at troutmask dot apl dot washington dot edu 2008-02-01 16:04 --- Subject: Re: Implied do-loop in an initialization expression is broken On Fri, Feb 01, 2008 at 03:31:49PM -, dominiq at lps dot ens dot fr wrote: > > With the patch in comment #18, on a Core2Duo 2.16Ghz I get: > > 5000 0.54 secs > 1 1.82 > 2 6.74 > 436.5 > 6 206 > 65535 258 > 65536 68 <-- Error: Initialization expression didn't reduce > (1) > 8 149Ditto > 10 281Ditto > > So the threshold seems to be 2**16. 'grep ChangeLog-2005 6553'. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19925
[Bug c++/33802] g++ says `z' is used uninitialized but this is not true
--- Comment #8 from manu at gcc dot gnu dot org 2008-02-01 16:28 --- (In reply to comment #6) > Here is what happens (note that, differently from what was the case, now the > warning is give three times in a row): The "is used" warning is the same issue with virtual operands. The relevant part is this: # BLOCK 4, starting at line 3675 # PRED: 3 (true) # LOADS: { zD.189596 } [bug.cc : 3675] z.1883D.189607_8 = zD.189596; [bug.cc : 3675] *toD.188165_6(D) ={v} z.1883D.189607_8; [bug.cc : 3676] D.189608_9 = rD.189597_4; [bug.cc : 3676] goto ; # SUCC: 10 (fallthru) We see that zD.189596 has an empty definition, which is wrong since it has been passed by reference in a previous BB. Again, it won't be fixed until we teach Wuninitialized about VOPS. The "may be used" warnings appear after applying inline, so we end up with something like: # BLOCK 25 freq:1, starting at line 3670 # PRED: 3 [100.0%] (fallthru,exec) 6 [33.0%] (false,exec) 7 [100.0%] (fallthru,exec) 8 [100.0%] (fallthru,exec) 12 [33.0%] (false,exec) 13 [100.0%] (fallthru,ex\ ec) 15 [69.0%] (false,exec) 16 [100.0%] (fallthru,exec) 19 [33.0%] (false,exec) 20 [100.0%] (fallthru,exec) 22 [69.0%] (false,exec) 23 [100.0%] (fallthru,exec) 24\ [100.0%] (fallthru,exec) # zD.203060_41 = PHI # D.222111_38 = PHI <4(3), 33(6), 2(7), 4(8), 33(12), 2(13), 18(15), 1(16), 33(19), 2(20), 18(22), 1(23), 4(24)> D.222156_40 = D.222111_38; [bug.cc : 3670] rD.203116_7 = D.222156_40; [bug.cc : 3671] r.1882D.203125_9 = (intD.2) rD.203116_7; [bug.cc : 3671] switch (r.1882D.203125_9) Whether that is a correct PHI, I cannot tell because the testcase is too huge for me to understand how that happened. Yet, we should not be warning for each PHI operand, at a minimum. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33802
[Bug c/12245] [4.0/4.1/4.2/4.3 regression] Uses lots of memory when compiling large initialized arrays
--- Comment #36 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12245
[Bug tree-optimization/16876] [4.0/4.1/4.2 Regression] ICE on testcase with -O3 in fold-const
--- Comment #22 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16876
[Bug tree-optimization/19910] [4.2 regression] ICE with -ftree-loop-linear
--- Comment #18 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19910
[Bug target/22553] [4.1/4.2/4.3 regression] ICE building libstdc++
--- Comment #12 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22553
[Bug target/27880] [4.2/4.3 regression] undefined reference to `_Unwind_GetIPInfo'
--- Comment #21 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27880
[Bug target/28102] [4.2/4.3 Regression] GNU Hurd bootstrap error: 'OPTION_GLIBC' undeclared
--- Comment #27 from jsm28 at gcc dot gnu dot org 2008-02-01 16:53 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28102
[Bug libgomp/28482] Cannot use libgomp in shared library
--- Comment #9 from jsm28 at gcc dot gnu dot org 2008-02-01 16:53 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28482
[Bug c++/28239] [4.2/4.3 regression] ICE in gimple_add_tmp_var, at gimplify.c:720
--- Comment #6 from jsm28 at gcc dot gnu dot org 2008-02-01 16:53 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28239
[Bug middle-end/27478] entry and addressable and value-expr: and the gimplifier
--- Comment #13 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27478
[Bug bootstrap/25470] [4.2/4.3 Regression] fixincludes/ subdirectory not cleaned by "make distclean"
--- Comment #9 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25470
[Bug c++/22488] [4.1/4.2/4.3 Regression] push_fields_onto_fieldstack calculates offset incorrectly
--- Comment #50 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22488
[Bug c++/33802] bogus "is used uninitialized" (VOPs) (inlining)
--- Comment #10 from rguenth at gcc dot gnu dot org 2008-02-01 16:48 --- # zD.203060_41 = PHI The PHI is correct, you get one arg per incoming edge. But yes, we should warn only once for default definitions that appear multiple times in single PHI nodes and also in mulitple PHI nodes. But we mark the var with TREE_NO_WARNING, so it should not warn multiple times here. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33802
[Bug middle-end/29256] [4.2/4.3 regression] loop performance regression
--- Comment #23 from jsm28 at gcc dot gnu dot org 2008-02-01 16:53 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29256
[Bug c++/28639] [4.2 regression] ICE trying to print error on invalid template parameter
--- Comment #13 from jsm28 at gcc dot gnu dot org 2008-02-01 16:53 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28639
[Bug fortran/19925] Implied do-loop in an initialization expression is broken
--- Comment #22 from dominiq at lps dot ens dot fr 2008-02-01 16:41 --- For large values of n, most of the time is spent in gfc_append_constructor, starting from 5% and up to 92%. Most of the remaining time is spent in find_array_section, starting from 75% down to 2.5%. Although I did not follow closely the algorithm, I got it is basically quadratic (for an intrinsically linear problem). Also, each time gfc_get_constructor is called, there is a call to "gfc_getmem (sizeof(gfc_constructor))". -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19925
[Bug tree-optimization/17863] [4.0/4.1/4.2/4.3 Regression] performance loss (not inlining as much??)
--- Comment #40 from hubicka at gcc dot gnu dot org 2008-02-01 16:47 --- Well, I still meant that simplifying the cascaded addition into accumulator into direct addition from base makes the code to simplify. I implemented experimentally the trick in fwprop and will attach later, but the patch itself doesn't help. What happens is now obvious. For sequence like: D.185211 = *py.4861; d = D.180590 * D.185211; p1 = py.4861 + 8; D.185213 = *p1; d = D.180606 * D.185213; p1 = py.4861 + 16; D.185215 = *p1; d = D.180642 * D.185215; p1 = py.4861 + 24; D.185217 = *p1; d = D.180728 * D.185217; p1 = py.4861 + 32; D.185219 = *p1; d = D.180888 * D.185219; p1 = py.4861 + 40; D.185221 = *p1; d = D.181157 * D.185221; p1 = py.4861 + 48; D.185223 = *p1; D.185098 = D.181571 * D.185223; D.185094 = d + D.185098; D.185090 = d + D.185094; D.185086 = d + D.185090; D.185082 = d + D.185086; D.185078 = d + D.185082; D.185074 = d + D.185078; D.185210 = *pz; d = D.185074 * D.185210; py = pz + 8; d = D.180606 * D.185211; d = D.180642 * D.185213; d = D.180728 * D.185215; d = D.180888 * D.185217; d = D.181157 * D.185219; d = D.181571 * D.185221; D.185130 = D.182177 * D.185223; D.185126 = d + D.185130; D.185122 = d + D.185126; D.185118 = d + D.185122; D.185114 = d + D.185118; D.185110 = d + D.185114; D.185106 = d + D.185110; D.185225 = *py; d = D.185106 * D.185225; py = pz + 16; d = D.180642 * D.185211; d = D.180728 * D.185213; d = D.180888 * D.185215; d = D.181157 * D.185217; d = D.181571 * D.185219; d = D.182177 * D.185221; D.185162 = D.183023 * D.185223; D.185158 = d + D.185162; D.185154 = d + D.185158; D.185150 = d + D.185154; D.185146 = d + D.185150; D.185142 = d + D.185146; D.185138 = d + D.185142; D.185240 = *py; d = D.185138 * D.185240; py = pz + 24; d = D.180728 * D.185211; d = D.180888 * D.185213; d = D.181157 * D.185215; d = D.181571 * D.185217; d = D.182177 * D.185219; d = D.183023 * D.185221; D.185194 = D.184168 * D.185223; D.185190 = d + D.185194; D.185186 = d + D.185190; D.185182 = d + D.185186; D.185178 = d + D.185182; D.185174 = d + D.185178; D.185170 = d + D.185174; D.185255 = *py; d = D.185170 * D.185255; D.185134 = d + d; D.185102 = d + D.185134; D.185195 = d + D.185102; *ap1.4607 = D.185195; if (z1.4734 == 0) goto (); else goto ; that are accumulating values from array into few variables, TER merges all the arithmetic into single giant expression leaving the loads in the front of it. :; D.197135 = *pz; D.197137 = *(pz + 8); D.197139 = *(pz + 16); D.197141 = *(pz + 24); D.197143 = *(pz + 32); D.197145 = *(pz + 40); D.197147 = *(pz + 48); D.197149 = *(pz + 56); D.197151 = *(pz + 64); D.197153 = *(pz + 72); D.197155 = *(pz + 80); D.197157 = *(pz + 88); D.197159 = *(pz + 96); *ap1.4658 = (D.180590 * D.197135 + (D.180606 * D.197137 + (D.180642 * D.197139 + (D.180728 * D.197141 + (D.180888 * D.197143 + (D.181157 * D.197145 + (D.181571 * D.197147 + (D.182177 * D.197149 + (D.183023 * D.197151 + (D.184168 * D.197153 + (D.185672 * D.197155 + (D.187606 * D.197157 + D.190042 * D.197159 * *py.4912 + ((D.180606 * D.197135 + (D.180642 * D.197137 + (D.180728 * D.197139 + (D.180888 * D.197141 + (D.181157 * D.197143 + (D.181571 * D.197145 + (D.182177 * D.197147 + (D.183023 * D.197149 + (D.184168 * D.197151 + (D.185672 * D.197153 + (D.187606 * D.197155 + (D.190042 * D.197157 + D.193063 * D.197159 * *(py.4912 + 8) + (D.180642 * D.197135 + (D.180728 * D.197137 + (D.180888 * D.197139 + (D.181157 * D.197141 + (D.181571 * D.197143 + (D.182177 * D.197145 + (D.183023 * D.197147 + (D.184168 * D.197149 + (D.185672 * D.197151 + (D.187606 * D.197153 + (D.190042 * D.197155 + (D.193063 * D.197157 + D.196753 * D.197159 * *(py.4912 + 16)); if (z1.4780 == 0) goto (); else goto ; With the patch for fwprop and -fno-tree-ter I get 5.1s, that is same as in pre GCC-4.0. Why TER is not placing loads into expressions at first place? This seems like quite common pattern to kill register pressure to me. I have to leave but will play with it further, try if fwprop patch is needed and polish it. Honza -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17863
[Bug driver/14435] [4.0/4.1/4.2/4.3 Regression] gnatchop cannot use the compiled compiler in Ada's testsuite because of changed GCC_EXEC_PREFIX semantics
--- Comment #26 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14435
[Bug middle-end/24998] [4.2/4.3 Regression] Build failure: undefined symbol __floatunsitf
--- Comment #38 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24998
[Bug bootstrap/25438] [4.2/4.3 Regression] make: *** No rule to make target `bubblestrap'. Stop.
--- Comment #9 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25438
[Bug c++/23287] [4.0/4.1/4.2/4.3 regression] Explicitly invoking destructor of template class in a template and is dependent
--- Comment #18 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23287
[Bug c++/29363] [4.2/4.3 regression] ICE throwing undeclared object
--- Comment #8 from jsm28 at gcc dot gnu dot org 2008-02-01 16:53 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29363
[Bug c/26154] OpenMP extensions to the C language is not documented or doumented in the wrong spot
--- Comment #13 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26154
[Bug bootstrap/27367] [4.2/4.3 Regression] gstdint.h in libdecnumber is not cleaned up with make distclean
--- Comment #4 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27367
[Bug target/26415] [4.2/4.3 regression] m68k-linux bootstrap error during stage2
--- Comment #14 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26415
[Bug c++/29571] [4.2/4.3 regression] ICE with invalid static const member
--- Comment #4 from jsm28 at gcc dot gnu dot org 2008-02-01 16:53 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29571
[Bug target/25743] crosscompiler fails to build ada-rts for target platform.
--- Comment #9 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25743
[Bug testsuite/27376] treelang testsuite fails on cygwin
--- Comment #4 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27376
[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails
--- Comment #15 from jsm28 at gcc dot gnu dot org 2008-02-01 16:52 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707
[Bug middle-end/32327] [4.2 Regression] Incorrect stack sharing causing removal of live code
--- Comment #32 from jsm28 at gcc dot gnu dot org 2008-02-01 16:54 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32327
[Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
--- Comment #29 from jsm28 at gcc dot gnu dot org 2008-02-01 16:54 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32328
[Bug c++/33289] [4.2 Regression] __sprintf_chk etc. not DECL_ANTICIPATED
--- Comment #4 from jsm28 at gcc dot gnu dot org 2008-02-01 16:54 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33289
[Bug middle-end/33423] [4.2 regression]: internal compiler error: in expand_expr_real_1, at expr.c:8670
--- Comment #12 from jsm28 at gcc dot gnu dot org 2008-02-01 16:54 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33423
[Bug c++/33506] [4.2 Regression] TYPE_RAISES_EXCEPTIONS dumped with attributes
--- Comment #4 from jsm28 at gcc dot gnu dot org 2008-02-01 16:54 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33506
[Bug c++/33616] [4.1/4.2 regression] "lvalue required as unary '&' operand" with template pmf
--- Comment #6 from jsm28 at gcc dot gnu dot org 2008-02-01 16:54 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33616
[Bug c++/34336] [4.2 Regression] 4.2.2 internal error in stabilize_expr
--- Comment #9 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34336
[Bug tree-optimization/34363] [4.2 Regression] Aliasing failure during tree fre
--- Comment #3 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34363
[Bug c++/34357] [4.2 Regression] internal compiler error: in layout_type, at stor-layout.c:1864
--- Comment #4 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34357
[Bug ada/34496] [4.2 Regression] prefixed notation allows changing the value of a constant
--- Comment #2 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34496
[Bug tree-optimization/34825] [4.2 regression] ICE with -funsafe-math-optimizations
--- Comment #9 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34825
[Bug c++/34953] [4.1 Regression] ICE on destructor + noreturn-function at -O3
--- Comment #7 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34953
[Bug c++/33802] bogus "is used uninitialized" (VOPs) (inlining)
--- Comment #9 from manu at gcc dot gnu dot org 2008-02-01 16:29 --- Changing subject to something more informative. -- manu at gcc dot gnu dot org changed: What|Removed |Added Summary|g++ says `z' is used|bogus "is used |uninitialized but this is |uninitialized" (VOPs) |not true|(inlining) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33802
[Bug middle-end/27478] [4.2 regression] entry and addressable and value-expr: and the gimplifier
-- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added Summary|entry and addressable and |[4.2 regression] entry and |value-expr: and the |addressable and value-expr: |gimplifier |and the gimplifier Target Milestone|4.2.4 |--- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27478
[Bug fortran/29892] substring out of bounds: Missing variable name for variables with parameter attribute
-- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.4 |--- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29892
[Bug libfortran/30694] minval/maxval with +/-Inf
-- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.4 |--- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30694
[Bug c/29479] wrong may be used uninitialized in this function warnings
--- Comment #4 from manu at gcc dot gnu dot org 2008-02-01 17:08 --- ... to mark as a duplicate of PR 27289. They are almost the same testcase. The other one is shorter. *** This bug has been marked as a duplicate of 27289 *** -- manu at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE Summary|[4.2 Regression] wrong may |wrong may be used |be used uninitialized in|uninitialized in this |this function warnings |function warnings http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29479
[Bug middle-end/27289] Gcc produces spurious -Wuninitialized warning compiling gdb
--- Comment #4 from manu at gcc dot gnu dot org 2008-02-01 17:08 --- Argh, the other way around (this testcase is shorter). -- manu at gcc dot gnu dot org changed: What|Removed |Added OtherBugsDependingO||24639 nThis|| Status|RESOLVED|UNCONFIRMED Resolution|DUPLICATE | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27289
[Bug tree-optimization/5035] Incorrectly produces '`' might be used uninitialized in this function'
--- Comment #20 from manu at gcc dot gnu dot org 2008-02-01 17:05 --- See comment 17 and comment 19. This is fixed by chance by CCP, so not worth to keep it open. -- manu at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=5035
[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails
--- Comment #16 from rguenth at gcc dot gnu dot org 2008-02-01 16:58 --- Dave, is this test still failing on hppa? On the branch and trunk? -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707
[Bug fortran/19925] Implied do-loop in an initialization expression is broken
--- Comment #23 from dominiq at lps dot ens dot fr 2008-02-01 16:58 --- On ppc G5 1.8Ghz, I get an almost perfect quadratic behavior: 118 secs 272 4 290 6 655 65535 778 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19925
[Bug c++/34950] [4.2/4.3 Regression] ICE in svn boost math toolkit
--- Comment #10 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34950
[Bug c++/34750] [4.1/4.2 Regression] ICE in fold_convert, at fold-const.c:1955
--- Comment #6 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34750
[Bug c++/34917] [4.2 regression] ICE with const vector
--- Comment #6 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34917
[Bug c++/34213] [4.2 Regression] static member function in anonymous namespace can't be used as template argument
--- Comment #6 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34213
[Bug c/34146] [4.1/4.2 Regression] Inefficient code with compound literals inside a CONSTRUCTO
--- Comment #4 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34146
[Bug c++/33969] [4.2 regression] ICE with const and function pointer
--- Comment #4 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33969
[Bug c++/33887] [4.1/4.2 Regression] Reference to bitfield gets wrong value when optimizing
--- Comment #38 from jsm28 at gcc dot gnu dot org 2008-02-01 16:54 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33887
[Bug c++/33819] [4.2 Regression] Miscompiled shift of C++ bitfield
--- Comment #10 from jsm28 at gcc dot gnu dot org 2008-02-01 16:54 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33819
[Bug tree-optimization/33763] [4.1/4.2/4.3 Regression] Bogus inlining failed in call to `xxx': redefined extern inline functions are not considered for inlining
--- Comment #10 from jsm28 at gcc dot gnu dot org 2008-02-01 16:54 --- 4.2.3 is being released now, changing milestones of open bugs to 4.2.4. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.3 |4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33763