[Bug fortran/32555] [4.3 Regression] Miscompilation of NIST testsuite
--- Comment #2 from burnus at gcc dot gnu dot org 2007-06-30 06:49 --- FM403.f, FM900.f, and FM903.f fail to compile. I have confirmed this regression is caused by. 2050 FORMAT(2PF8.3,-2PE9.4,F9.4,0PF9.4,9X,-2PE9.4,F9.4) 1 Error: Unexpected element in format string at (1) The problem is that the big case block in check_format was checking only for FMT_POSINT and (for k P, Fortran2003: R1011/R1012) for FMT_SIGNED_INT; however, format_lex can return another state: FMT_ZERO. But due to a bug it was never returned. As P seems to be the only element where zero is allowed, I did the patch as follows. I'm not sure I can submit the patch in the coming days; feel free to submit it. Index: gcc/fortran/io.c === --- gcc/fortran/io.c(Revision 126114) +++ gcc/fortran/io.c(Arbeitskopie) @@ -487,6 +487,7 @@ format_item_1: goto format_item; case FMT_SIGNED_INT: +case FMT_ZERO: /* Signed integer can only precede a P format. */ t = format_lex (); if (t != FMT_P) -- burnus at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2007-06-30 06:49:13 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32555
[Bug bootstrap/32556] New: The libgcc configuration file doesn't swap CPP when it swaps CC - use of normal value breaks make
According to gcc-4_3-trunk/libgcc/configure's help we can set some environment vars before we compile gcc. Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -Llib dir if you have libraries in a nonstandard directory lib dir CPPFLAGSC/C++ preprocessor flags, e.g. -Iinclude dir if you have headers in a nonstandard directory include dir CPP C preprocessor Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. For what I am doing I have set CC and CPP. In the text that follows I have deleted portions for brevity and then substituted ... where I am reasonably sure I am not cutting out something of use. Here is a few lines from the config.log files: With CPP set in the environment - i686-pc-linux-gnu/libgcc/config.log: configure:3015: checking how to run the C preprocessor configure:3133: result: gcc -E configure:3157: gcc -E conftest.c configure:3163: $? = 0 configure:3195: gcc -E conftest.c Without CPP set in the environment - i686-pc-linux-gnu/libgcc/config.log: configure:3015: checking how to run the C preprocessor configure:3050: /opt/gcc-4_3-build-6/./gcc/xgcc -B/opt/gcc-4_3-build-6/./gcc/ ... configure:3056: $? = 0 configure:3088: /opt/gcc-4_3-build-6/./gcc/xgcc -B/opt/gcc-4_3-build-6/./gcc/ ... conftest.c:9:28: error: ac_nonexistent.h: No such file or directory configure:3094: $? = 1 configure: failed program was: | /* confdefs.h. */ | | #define PACKAGE_NAME GNU C Runtime Library | #define PACKAGE_TARNAME libgcc | #define PACKAGE_VERSION 1.0 | #define PACKAGE_STRING GNU C Runtime Library 1.0 | #define PACKAGE_BUGREPORT | /* end confdefs.h. */ | #include ac_nonexistent.h configure:3133: result: /opt/gcc-4_3-build-6/./gcc/xgcc -B/opt/gcc-4_3-build-6/./gcc/ ... configure:3157: /opt/gcc-4_3-build-6/./gcc/xgcc -B/opt/gcc-4_3-build-6/./gcc/ ... configure:3163: $? = 0 configure:3195: /opt/gcc-4_3-build-6/./gcc/xgcc -B/opt/gcc-4_3-build-6/./gcc/ ... The configure script is combining how to run the C preprocessor with the CPPFLAGS or alternately, once it figures out how to run the C preprocessor then it does not add the (internal) CPPFLAGS (the -B commands) so it can use the -B stuff with the chosen CPP. It is not using _my_ CPPFLAGS either but I can get over that. If your thinking that this has something to do with cross-targets then I would mention that I also set CC and it is using 'gcc-4_3-build-6/gcc/xgcc' for libgcc (which it likely should) - so when I have set CPP why doesn't it use 'the xcpp' (gcc-4_3-build-6/gcc/cpp) - with or without -B ... -isystem ... ? When the build thinks it is correct to switch from _my_ choice of CC to the recently built gcc (xgcc) why doesn't it switch from _my_ choice of CPP to the recently built xccp (simply called gcc/cpp) ? It follows that when one switches the other should at the same time. Here is some screen output that I logged: With CPP set in the environment: Line: 2077 /opt/gcc-4_3-build-5/make_26c_log.txt Configuring stage 1 in i686-pc-linux-gnu/libgcc checking whether we are using the GNU C compiler... yes checking whether /opt/gcc-4_3-build-5/./gcc/xgcc -B/opt/gcc-4_3-build-5/./gcc/ ... checking for /opt/gcc-4_3-build-5/./gcc/xgcc -B/opt/gcc-4_3-build-5/./gcc/ ... checking how to run the C preprocessor... gcc -E checking whether decimal floating point is supported... yes Without CPP set in the environment: Line: 2883 /opt/gcc-4_3-build-6/make_27_log.txt Configuring stage 1 in i686-pc-linux-gnu/libgcc checking whether we are using the GNU C compiler... yes checking whether /opt/gcc-4_3-build-6/./gcc/xgcc -B/opt/gcc-4_3-build-6/./gcc/ ... checking for /opt/gcc-4_3-build-6/./gcc/xgcc -B/opt/gcc-4_3-build-6/./gcc/ ... checking how to run the C preprocessor... /opt/gcc-4_3-build-6/./gcc/xgcc -B ... checking whether decimal floating point is supported... yes Notice on the checking how to run the C preprocessor line that if CPP is set then that is all you get, no -B - that could be OK if you wanted to use your own choice of cpp throughout. Why does the script think we can run gcc/xgcc and not gcc/cpp (is it worried about a cross). For _my_ purposes I will need to fix this. I don't know enough about all the cross environments that others use to suggest how the trunk needs to be changed in a compatable manner. Whatever the reasoning for keeping it we end up in trouble. To top it off, further on in the build the makefiles and configure scripts get confused and keep adding the library directory to the GCC command until the line gets too long and blows up collect2. It gets to here before it gets confused - first it is using xgcc, then it decides to use gcc with a short command line to link ./libgcc_s.so.1.tmp. Next it keeps adding more and more iterations of command fragments ... gcc -D_GNUCC -o ./libgcc_s.so.1.tmp
[Bug fortran/32555] [4.3 Regression] Miscompilation of NIST testsuite
--- Comment #3 from patchapp at dberlin dot org 2007-06-30 07:25 --- Subject: Bug number PR32555 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/2007-06/msg02142.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32555
[Bug rtl-optimization/32475] [4.3 Regression] function with asm() does not setup stack frame
--- Comment #9 from marcus at jet dot franken dot de 2007-06-30 08:05 --- This bug has resurfaced in the last two days. r126139 is affected. -- marcus at jet dot franken dot de changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|FIXED | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32475
[Bug c/32557] New: internal compiler error: RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:956
Building GCC SVN fails with RTL check. The configure line is: /cvs/gcc-svn/trunk/configure --prefix=/opt/gcc/4.3-devel --enable-checking=yes,rtl --enable-threads=posix --enable-clocale=gnu --enable-__cxa_atexit --enable-shared --enable-languages=c,c++,ada,treelang,java,fortran,objc --with-system-zlib --with-cpu=default32 --with-long-double-128 --enable-secureplt powerpc64-suse-linux-gnu libtool: compile: /abuild/aj/gcc/./gcc/xgcc -B/abuild/aj/gcc/./gcc/ -B/opt/gcc/4.3-devel/powerpc64-suse-linux-gnu/bin/ -B/opt/gcc/4.3-devel/powerpc64-suse-linux-gnu/lib/ -isystem /opt/gcc/4.3-devel/powerpc64-suse-linux-gnu/include -isystem /opt/gcc/4.3-devel/powerpc64-suse-linux-gnu/sys-include -DHAVE_CONFIG_H -I. -I/cvs/gcc-svn/trunk/libjava/classpath/native/fdlibm -I../../include -O2 -g -O2 -MT s_expm1.lo -MD -MP -MF .deps/s_expm1.Tpo -c /cvs/gcc-svn/trunk/libjava/classpath/native/fdlibm/s_expm1.c -fPIC -DPIC -o .libs/s_expm1.o /cvs/gcc-svn/trunk/libjava/classpath/native/fdlibm/s_expm1.c: In function 'expm1': /cvs/gcc-svn/trunk/libjava/classpath/native/fdlibm/s_expm1.c:228: internal compiler error: RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:956 Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. -- Summary: internal compiler error: RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:956 Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: aj at gcc dot gnu dot org GCC build triplet: powerpc64-suse-linux-gnu GCC host triplet: powerpc64-suse-linux-gnu GCC target triplet: powerpc64-suse-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32557
[Bug c++/30854] [4.3 Regression] Wrong number of arguments printed for constructor
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30854
[Bug objc++/31032] [4.3 Regression] expected tree that contains 'decl with RTL' structure, have 'field_decl' in assemble_external_real, at varasm.c:2225
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31032
[Bug c++/31027] [4.1/4.2/4.3 regression] Compiler segfaults in simple virtual inheritance situation
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
[Bug rtl-optimization/31849] [4.3 Regression] Code size regression caused by fix to PR 31360
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31849
[Bug target/30961] [4.1/4.2/4.3 regression] redundant reg/mem stores/moves
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Summary|[4.2/4.3 regression]|[4.1/4.2/4.3 regression] |redundant reg/mem |redundant reg/mem |stores/moves|stores/moves Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30961
[Bug libstdc++/31836] [4.3 Regression] FAIL: 27_io/basic_istream/extractors_arithmetic/char/12.cc execution test
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31836
[Bug c++/31941] [4.1/4.2/4.3 Regression] confused by earlier errors message without earlier error message
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31941
[Bug middle-end/32004] [4.1/4.2/4.3 regression] : can't find a register in class 'GENERAL_REGS' while reloading 'asm'
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32004
[Bug target/31897] [4.3 Regression] 30% speed regression with -m32 on Opteron with rnflow
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Summary|[Regression 4.3] 30% speed |[4.3 Regression] 30% speed |regression with -m32 on |regression with -m32 on |Opteron with rnflow |Opteron with rnflow Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31897
[Bug ada/32164] [4.1/4.2/4.3 Regression] Ada ICE when renaming predefined = and /=
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32164
[Bug target/32218] [4.2/4.3 Regression] segfault with -O1 -ftree-vectorize
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.2.1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32218
[Bug c++/32245] [4.1/4.2/4.3 Regression] wrong POD type initialization with pointer to member
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32245
[Bug fortran/31197] [4.2/4.4 regression] TRANSPOSE/RESHAPE and strings
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Severity|major |normal Summary|[4.3/4.2 regression^2] |[4.2/4.4 regression] |TRANSPOSE/RESHAPE and |TRANSPOSE/RESHAPE and |strings |strings Target Milestone|--- |4.2.1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31197
[Bug target/32275] [4.3 Regression] : FAIL: gcc.c-torture/execute/va-arg-24.c execution
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Keywords||wrong-code Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32275
[Bug ada/32286] [4.2/4.3 Regression] ICE in dwarf2out with -g: sees Ada f-e unconstrained_array_type node
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.2.1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32286
[Bug target/32276] [4.3 Regression] New libmudflap failures
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32276
[Bug c++/32256] [4.0/4.1/4.2/4.3 regression] pragma system_header doesn't suppress warnings in tree-cfg
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32256
[Bug c++/32400] [4.3 Regression] ICE in expand_or_defer_fn, at cp/semantics.c:3220
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32400
[Bug tree-optimization/31611] [4.3 regression] ICE with -ftree-loop-linear in remove_referenced_var for loc == *0
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31611
[Bug target/32130] [4.3 Regression] linking problems: multiple definition of `__DTOR_END__'
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Keywords||build Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32130
[Bug fortran/32526] [4.3 regression] Spurious error: Name 'x' at (1) is an ambiguous reference to 'x' from module 'y'
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32526
[Bug target/32462] [4.3 regression] Linking libgcj.so fails on Solaris 10/x86
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Keywords||build Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32462
[Bug rtl-optimization/32504] [4.3 Regression] internal compiler error: in df_refs_verify, at df-scan.c:4058
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Keywords||ice-on-valid-code Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32504
[Bug fortran/32554] [4.3 regression] Bug in P formatting
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32554
[Bug fortran/32555] [4.3 Regression] Miscompilation of NIST testsuite
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Keywords||rejects-valid Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32555
[Bug rtl-optimization/32557] [4.3 Regression] internal compiler error: RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:956
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Component|c |rtl-optimization Keywords||build, ice-checking, ice-on- ||valid-code Summary|internal compiler error: RTL|[4.3 Regression] internal |check: expected code 'reg', |compiler error: RTL check: |have 'subreg' in rhs_regno, |expected code 'reg', have |at rtl.h:956|'subreg' in rhs_regno, at ||rtl.h:956 Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32557
[Bug target/32558] New: unrecognizable insn compiling libgcc2 on 64-bit CPU
Configured with: /n/12/rask/src/all/configure --target v850-unknown-elf --with-newlib --enable-sim --disable-gdb --disable-nls There's an obvious incompatibility with building on a 64-bit system: /n/12/rask/src/all/libgcc/../gcc/libgcc2.c: In function '__divdi3': /n/12/rask/src/all/libgcc/../gcc/libgcc2.c:1102: error: unrecognizable insn: (insn 754 5 755 2 /n/12/rask/src/all/libgcc/../gcc/libgcc2.c:1084 (set (reg/f:SI 3 sp) (plus:SI (reg/f:SI 3 sp) (const_int 4294967292 [0xfffc]))) -1 (nil)) /n/12/rask/src/all/libgcc/../gcc/libgcc2.c:1102: internal compiler error: in extract_insn, at recog.c:1991 -- Summary: unrecognizable insn compiling libgcc2 on 64-bit CPU Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rask at sygehus dot dk GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: v850-unknown-elf http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32558
[Bug rtl-optimization/32475] [4.3 Regression] function with asm() does not setup stack frame
--- Comment #10 from zadeck at naturalbridge dot com 2007-06-30 11:47 --- Richard, Could you check to see if this bug is collateral damage from your latest fix to deletable_insn_p. It's appearance has been tied to that function in the past. kenny -- zadeck at naturalbridge dot com changed: What|Removed |Added CC||richard at codesourcery dot ||com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32475
[Bug rtl-optimization/32475] [4.3 Regression] function with asm() does not setup stack frame
--- Comment #11 from richard at codesourcery dot com 2007-06-30 12:19 --- Subject: Re: [4.3 Regression] function with asm() does not setup stack frame zadeck at naturalbridge dot com [EMAIL PROTECTED] writes: Could you check to see if this bug is collateral damage from your latest fix to deletable_insn_p. It's appearance has been tied to that function in the past. _My_ latest fix to deletable_insn_p? ;) All I did was rephrase your patch in terms of deletable_insn_p_1. I won't have time to work on this in the near future, so I'll just revert the patch for now. Richard -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32475
[Bug target/32437] [4.3 Regression] MIPS: FAIL in gcc.dg/cleanup-[8|9|10|11].c
--- Comment #21 from richard at codesourcery dot com 2007-06-30 12:26 --- Subject: Re: [4.3 Regression] MIPS: FAIL in gcc.dg/cleanup-[8|9|10|11].c Richard Sandiford [EMAIL PROTECTED] writes: Kenneth Zadeck [EMAIL PROTECTED] writes: 2007-06-23 Kenneth Zadeck [EMAIL PROTECTED] PR middle-end/32437 *dce.c (deletable_insn_p): Add extra parameter and recurse if insn is a PARALLEL. (prescan_insns_for_dce): Add extra parameter. Kenny found that this patch introduced problems on x86 (I think it was) because it applied the special handling for bare CLOBBERs to those inside PARALLELs as well. We don't want that; bare USEs and CLOBBERs are special DF markers, but USEs and CLOBBERs inside PARALLELs are parts of asms or define_insns. Kenny pre-approved the patch below. Bootstrapped regression-tested on x86_64-linux-gnu. Applied to mainline. This patch apparently caused 32475 to resurface, so I reverted it. Richard -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32437
[Bug middle-end/32559] New: [4.3 regression] ICE with vector arithmetic
The following valid code snippet triggers an ICE on mainline: = int __attribute__((vector_size (8))) v; void foo() { v += ~v; } = bug.c: In function 'foo': bug.c:5: internal compiler error: in build_int_cst_wide, at tree.c:886 Please submit a full bug report, [etc.] -- Summary: [4.3 regression] ICE with vector arithmetic Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-valid-code, monitored Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32559
[Bug middle-end/32559] [4.3 regression] ICE with vector arithmetic
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32559
[Bug c++/32560] New: [4.3 regression] ICE on invalid declaration in template
The following invalid code snippet triggers an ICE on mainline: = namespace N {} templatetypename struct A { int Atypename N::X; }; = bug.cc:5: error: 'X' in namespace 'N' does not name a type bug.cc:5: error: template argument 1 is invalid bug.cc:5: error: expected `::' before ';' token bug.cc:5: error: expected `*' before ';' token bug.cc:5: error: expected unqualified-id before ';' token bug.cc:5: internal compiler error: in cp_parser_make_indirect_declarator, at cp/parser.c:2714 Please submit a full bug report, [etc.] The regression was introduced between 2007-05-26 and 2007-06-07, probably by the patch 2007-05-30 Russell Yanofsky [EMAIL PROTECTED] Douglas Gregor [EMAIL PROTECTED] Pedro Lamarao [EMAIL PROTECTED] Howard Hinnant [EMAIL PROTECTED] PR c++/7412 PR c++/29939 ... (cp_parser_make_indirect_declarator): New. ... -- Summary: [4.3 regression] ICE on invalid declaration in template Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code, error-recovery, monitored Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32560
[Bug c++/32560] [4.3 regression] ICE on invalid declaration in template
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32560
[Bug c/4076] -Wunused doesn't warn about static function only called by itself.
--- Comment #21 from manu at gcc dot gnu dot org 2007-06-30 12:56 --- Subject: Bug 4076 Author: manu Date: Sat Jun 30 12:56:43 2007 New Revision: 126144 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126144 Log: 2007-06-30 Manuel Lopez-Ibanez [EMAIL PROTECTED] PR c/4076 * c-typeck.c (build_external_ref): Don't mark as used if called from itself. * calls.c (rtx_for_function_call): Likewise. testsuite/ * gcc.dg/Wunused-function.c: New. Added: trunk/gcc/testsuite/gcc.dg/Wunused-function.c Modified: trunk/gcc/ChangeLog trunk/gcc/c-typeck.c trunk/gcc/calls.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4076
[Bug rtl-optimization/32475] [4.3 Regression] function with asm() does not setup stack frame
--- Comment #12 from richard at codesourcery dot com 2007-06-30 12:58 --- Subject: Re: [4.3 Regression] function with asm() does not setup stack frame richard at codesourcery dot com [EMAIL PROTECTED] writes: zadeck at naturalbridge dot com [EMAIL PROTECTED] writes: Could you check to see if this bug is collateral damage from your latest fix to deletable_insn_p. It's appearance has been tied to that function in the past. _My_ latest fix to deletable_insn_p? ;) All I did was rephrase your patch in terms of deletable_insn_p_1. Sorry, I shouldn't have said that. Kenny's original patch was basically an implementation of something I'd suggested on IRC, so the ultimate blame does lie with me. I think the upshot is still the same: I don't really have time to work on this, and given that what I suggested was either wrong, or exposed some other latent problem, I think reverting the patch is the correct thing to do under the circumstances. I suggest that someone else looks at the problem that the patch was trying to solve (which AIUI was a pessimisation rather than a wrong-code bug). Richard -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32475
[Bug c/4076] -Wunused doesn't warn about static function only called by itself.
--- Comment #22 from manu at gcc dot gnu dot org 2007-06-30 12:58 --- Fixed for GCC 4.3 -- manu 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=4076
[Bug c++/32561] New: [4.3 regression] ICE with duplicate template parameter
The following invalid code snippet triggers an ICE on mainline: = templateint N, int N struct A; = bug.cc:1: internal compiler error: tree check: expected var_decl, have const_decl in redeclaration_error_message, at cp/decl.c:2198 Please submit a full bug report, [etc.] The regression was introduced between 2007-06-07 and 2007-06-16, probably by the patch 2007-06-15 Mark Mitchell [EMAIL PROTECTED] * cp-tree.h (DECL_VAR_MARKED_P): Remove. (DECL_ANON_UNION_VAR_P): New macro. * class.c (fixed_type_or_null): Tidy. Use a hash table, rather than DECL_VAR_MARKED_P, to keep track of which variables we have seen. * decl.c (redeclaration_error_message): Complain about redeclaring anonymous union members at namespace scope. * decl2.c (build_anon_union_vars): Set DECL_ANON_UNION_VAR_P. -- Summary: [4.3 regression] ICE with duplicate template parameter Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-valid-code, monitored Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32561
[Bug c++/32562] New: -Wunused doesn't warn about static function only called by itself.
This bug is solved in the C front-end (bug 4076). The original patch also addressed the C++ front-end http://gcc.gnu.org/ml/gcc-patches/2007-03/msg00171.html However, some issues were raised about functions in anonymous namespaces: http://gcc.gnu.org/ml/gcc-patches/2007-03/msg01103.html -- Summary: -Wunused doesn't warn about static function only called by itself. Product: gcc Version: unknown Status: UNCONFIRMED Keywords: diagnostic Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: manu at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32562
[Bug c++/32561] [4.3 regression] ICE with duplicate template parameter
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32561
[Bug testsuite/25241] DejaGNU does not distinguish between errors and warnings
--- Comment #54 from manu at gcc dot gnu dot org 2007-06-30 13:03 --- Subject: Bug 25241 Author: manu Date: Sat Jun 30 13:02:48 2007 New Revision: 126145 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126145 Log: 2007-06-30 Manuel Lopez-Ibanez [EMAIL PROTECTED] PR testsuite/25241 testsuite/ * gcc.dg/pch/valid-1.c: Match each diagnostic with its own directive. * gcc.dg/pch/valid-2.c: Likewise. * gcc.dg/pch/valid-3.c: Likewise. * gcc.dg/pch/warn-1.c: Likewise. * gcc.dg/pch/valid-4.c: Match a warning instead of an error. Modified: trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/pch/valid-1.c trunk/gcc/testsuite/gcc.dg/pch/valid-2.c trunk/gcc/testsuite/gcc.dg/pch/valid-3.c trunk/gcc/testsuite/gcc.dg/pch/valid-4.c trunk/gcc/testsuite/gcc.dg/pch/warn-1.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25241
[Bug debug/32563] New: [4.2/4.3 regression] ICE on pointer arithmetic
The following valid code snippet triggers an ICE since GCC 4.2.0 (when compiled with g++ -g): = struct A { char c[1]; } a; const int i = (int)a.c[0] - 1; = bug.cc:5: internal compiler error: in loc_descriptor, at dwarf2out.c:9181 Please submit a full bug report, [etc.] When compiled as C code the snippet compiles fine. -- Summary: [4.2/4.3 regression] ICE on pointer arithmetic Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-valid-code, monitored Severity: normal Priority: P3 Component: debug AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32563
[Bug debug/32563] [4.2/4.3 regression] ICE on pointer arithmetic
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.2.1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32563
[Bug testsuite/25241] DejaGNU does not distinguish between errors and warnings
--- Comment #55 from manu at gcc dot gnu dot org 2007-06-30 13:06 --- Subject: Bug 25241 Author: manu Date: Sat Jun 30 13:06:45 2007 New Revision: 126146 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126146 Log: 2007-06-30 Manuel Lopez-Ibanez [EMAIL PROTECTED] PR testsuite/25241 testsuite/ * gcc.dg/cpp/2625-1.c: Without dg-options the default is -pedantic-errors, so we should match errors. * gcc.dg/cpp/escape-1.c: Likewise. * gcc.dg/cpp/charconst.c: Empty character constants are errors. * gcc.dg/cpp/direct2.c: This is a mandatory error instead of a warning. * gcc.dg/cpp/endif-pedantic2.c: Use -pedantic-errors to obtain errors instead of warnings. * gcc.dg/cpp/extratokens.c: Use dg-warning instead of dg-error for a pedantic warning. * gcc.dg/cpp/arith-3.c: Likewise. Modified: trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/cpp/2625-1.c trunk/gcc/testsuite/gcc.dg/cpp/arith-3.c trunk/gcc/testsuite/gcc.dg/cpp/charconst.c trunk/gcc/testsuite/gcc.dg/cpp/direct2.c trunk/gcc/testsuite/gcc.dg/cpp/endif-pedantic2.c trunk/gcc/testsuite/gcc.dg/cpp/escape-1.c trunk/gcc/testsuite/gcc.dg/cpp/extratokens.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25241
[Bug fortran/32472] ICE in trans-const.c:106 for REPEAT initialization expression of non-parameter
--- Comment #5 from pault at gcc dot gnu dot org 2007-06-30 13:08 --- Subject: Bug 32472 Author: pault Date: Sat Jun 30 13:08:19 2007 New Revision: 126147 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126147 Log: 2007-06-30 Paul Thomas [EMAIL PROTECTED] PR fortran/32472 * simplify.c (gfc_simplify_repeat): Add handling of character literal for first argument. 2007-06-30 Paul Thomas [EMAIL PROTECTED] PR fortran/30284 * gfortran.dg/repeat_f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/repeat_5.f90 Modified: trunk/gcc/fortran/simplify.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32472
[Bug fortran/30284] [4.1 only] ICE in gfc_add_modify with internal reads
--- Comment #9 from pault at gcc dot gnu dot org 2007-06-30 13:08 --- Subject: Bug 30284 Author: pault Date: Sat Jun 30 13:08:19 2007 New Revision: 126147 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126147 Log: 2007-06-30 Paul Thomas [EMAIL PROTECTED] PR fortran/32472 * simplify.c (gfc_simplify_repeat): Add handling of character literal for first argument. 2007-06-30 Paul Thomas [EMAIL PROTECTED] PR fortran/30284 * gfortran.dg/repeat_f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/repeat_5.f90 Modified: trunk/gcc/fortran/simplify.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30284
[Bug fortran/30284] [4.1 only] ICE in gfc_add_modify with internal reads
--- Comment #10 from pault at gcc dot gnu dot org 2007-06-30 13:09 --- Subject: Bug 30284 Author: pault Date: Sat Jun 30 13:09:14 2007 New Revision: 126148 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126148 Log: 2007-06-30 Paul Thomas [EMAIL PROTECTED] PR fortran/32472 * simplify.c (gfc_simplify_repeat): Add handling of character literal for first argument. 2007-06-30 Paul Thomas [EMAIL PROTECTED] PR fortran/30284 * gfortran.dg/repeat_f90: New test. Modified: trunk/gcc/fortran/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30284
[Bug fortran/32472] ICE in trans-const.c:106 for REPEAT initialization expression of non-parameter
--- Comment #6 from pault at gcc dot gnu dot org 2007-06-30 13:09 --- Subject: Bug 32472 Author: pault Date: Sat Jun 30 13:09:14 2007 New Revision: 126148 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126148 Log: 2007-06-30 Paul Thomas [EMAIL PROTECTED] PR fortran/32472 * simplify.c (gfc_simplify_repeat): Add handling of character literal for first argument. 2007-06-30 Paul Thomas [EMAIL PROTECTED] PR fortran/30284 * gfortran.dg/repeat_f90: New test. Modified: trunk/gcc/fortran/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32472
[Bug tree-optimization/31651] [4.3 Regression] FRE does not fold intermediate CCP results, FRE does no longer look through loads
--- Comment #5 from dberlin at gcc dot gnu dot org 2007-06-30 14:15 --- Subject: Bug 31651 Author: dberlin Date: Sat Jun 30 14:15:26 2007 New Revision: 126149 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126149 Log: 2007-06-30 Daniel Berlin [EMAIL PROTECTED] Fix PR tree-optimization/32540 Fix PR tree-optimization/31651 * tree-ssa-sccvn.c: New file. * tree-ssa-sccvn.h: Ditto. * tree-vn.c: Include tree-ssa-sccvn.h (val_expr_paid_d): Removed. (value_table): Ditto. (vn_compute): Ditto. (val_expr_pair_hash): Ditto. (val_expr_pair_expr_eq): Ditto. (copy_vuses_from_stmt): Ditto. (vn_delete): Ditto. (vn_init): Ditto. (shared_vuses_from_stmt): Ditto. (print_creation_to_file): Moved up. (sort_vuses): Ditto. (sort_vuses_heap): Ditto. (set_value_handle): Make non-static. (make_value_handle): Ditto. (vn_add): Rewritten to use sccvn lookups. (vn_add_with_vuses): Ditto. (vn_lookup): Ditto (and second argument removed). (vn_lookup_with_vuses): Ditto. (vn_lookup_or_add): Ditto (and second argument removed); (vn_lookup_or_add_with_vuses): Ditto. (vn_lookup_with_stmt): New. (vn_lookup_or_add_with_stmt): Ditto. (create_value_handle_for_expr): Ditto. * tree-ssa-pre.c: Include tree-ssa-sccvn.h. (seen_during_translate): New function. (phi_trans_lookup): Use iterative_hash_expr, not vn_compute. (phi_trans_add): Ditto. (constant_expr_p): FIELD_DECL is always constant. (phi_translate_1): Renamed from phi_translate, add seen bitmap. Use constant_expr_p. Avoid infinite recursion on mutually valued expressions. Change callers of vn_lookup_or_add. (phi_translate): New function. (compute_antic_safe): Allow phi nodes. (create_component_ref_by_pieces): Update for FIELD_DECL change. (find_or_generate_expression): Rewrite slightly. (create_expression_by_pieces): Updated for vn_lookup_or_add change. Update VN_INFO for new names. (insert_into_preds_of_block): Update for new names. (add_to_exp_gen): New function. (add_to_sets): Use vn_lookup_or_add_with_stmt. (find_existing_value_expr): Rewrite to changed vn_lookup. (create_value_expr_from): Ditto, and use add_to_exp_gen. (try_look_through_load): Removed. (try_combine_conversion): Ditto. (get_sccvn_value): New function. (make_values_for_phi): Ditto. (make_values_for_stmt): Ditto. (compute_avail): Rewritten for vn_lookup_or_add changes and to use SCCVN. (init_pre): Update for SCCVN changes. (fini_pre): Ditto. (execute_pre): Ditto. * tree-flow.h (make_value_handle): Declare. (set_value_handle): Ditto. (sort_vuses_heap): Ditto. (vn_lookup_or_add_with_stmt): Ditto. (vn_lookup_with_stmt): Ditto. (vn_compute): Remove. (vn_init): Ditto. (vn_delete): Ditto. (vn_lookup): Update arguments. * Makefile.in (tree-ssa-pre.o): Add tree-ssa-sccvn.h (tree-vn.o): Ditto. (tree-ssa-sccvn.o): New. (OBJS-common): Add tree-ssa-sccvn.o Added: trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-1.c - copied unchanged from r125553, branches/gcc-pre-vn/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-1.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-2.c - copied unchanged from r125553, branches/gcc-pre-vn/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-2.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-3.c - copied unchanged from r125553, branches/gcc-pre-vn/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-3.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-4.c - copied unchanged from r125553, branches/gcc-pre-vn/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-4.c trunk/gcc/tree-ssa-sccvn.c - copied, changed from r125553, branches/gcc-pre-vn/gcc/tree-ssa-sccvn.c trunk/gcc/tree-ssa-sccvn.h - copied, changed from r125553, branches/gcc-pre-vn/gcc/tree-ssa-sccvn.h Modified: trunk/gcc/ChangeLog trunk/gcc/Makefile.in trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-1.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-3.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-4.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-5.c trunk/gcc/tree-flow.h trunk/gcc/tree-ssa-operands.h trunk/gcc/tree-ssa-pre.c trunk/gcc/tree-vn.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31651
[Bug tree-optimization/32540] [4.3 Regression] Exponential time behavior in PRE
--- Comment #3 from dberlin at gcc dot gnu dot org 2007-06-30 14:15 --- Subject: Bug 32540 Author: dberlin Date: Sat Jun 30 14:15:26 2007 New Revision: 126149 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126149 Log: 2007-06-30 Daniel Berlin [EMAIL PROTECTED] Fix PR tree-optimization/32540 Fix PR tree-optimization/31651 * tree-ssa-sccvn.c: New file. * tree-ssa-sccvn.h: Ditto. * tree-vn.c: Include tree-ssa-sccvn.h (val_expr_paid_d): Removed. (value_table): Ditto. (vn_compute): Ditto. (val_expr_pair_hash): Ditto. (val_expr_pair_expr_eq): Ditto. (copy_vuses_from_stmt): Ditto. (vn_delete): Ditto. (vn_init): Ditto. (shared_vuses_from_stmt): Ditto. (print_creation_to_file): Moved up. (sort_vuses): Ditto. (sort_vuses_heap): Ditto. (set_value_handle): Make non-static. (make_value_handle): Ditto. (vn_add): Rewritten to use sccvn lookups. (vn_add_with_vuses): Ditto. (vn_lookup): Ditto (and second argument removed). (vn_lookup_with_vuses): Ditto. (vn_lookup_or_add): Ditto (and second argument removed); (vn_lookup_or_add_with_vuses): Ditto. (vn_lookup_with_stmt): New. (vn_lookup_or_add_with_stmt): Ditto. (create_value_handle_for_expr): Ditto. * tree-ssa-pre.c: Include tree-ssa-sccvn.h. (seen_during_translate): New function. (phi_trans_lookup): Use iterative_hash_expr, not vn_compute. (phi_trans_add): Ditto. (constant_expr_p): FIELD_DECL is always constant. (phi_translate_1): Renamed from phi_translate, add seen bitmap. Use constant_expr_p. Avoid infinite recursion on mutually valued expressions. Change callers of vn_lookup_or_add. (phi_translate): New function. (compute_antic_safe): Allow phi nodes. (create_component_ref_by_pieces): Update for FIELD_DECL change. (find_or_generate_expression): Rewrite slightly. (create_expression_by_pieces): Updated for vn_lookup_or_add change. Update VN_INFO for new names. (insert_into_preds_of_block): Update for new names. (add_to_exp_gen): New function. (add_to_sets): Use vn_lookup_or_add_with_stmt. (find_existing_value_expr): Rewrite to changed vn_lookup. (create_value_expr_from): Ditto, and use add_to_exp_gen. (try_look_through_load): Removed. (try_combine_conversion): Ditto. (get_sccvn_value): New function. (make_values_for_phi): Ditto. (make_values_for_stmt): Ditto. (compute_avail): Rewritten for vn_lookup_or_add changes and to use SCCVN. (init_pre): Update for SCCVN changes. (fini_pre): Ditto. (execute_pre): Ditto. * tree-flow.h (make_value_handle): Declare. (set_value_handle): Ditto. (sort_vuses_heap): Ditto. (vn_lookup_or_add_with_stmt): Ditto. (vn_lookup_with_stmt): Ditto. (vn_compute): Remove. (vn_init): Ditto. (vn_delete): Ditto. (vn_lookup): Update arguments. * Makefile.in (tree-ssa-pre.o): Add tree-ssa-sccvn.h (tree-vn.o): Ditto. (tree-ssa-sccvn.o): New. (OBJS-common): Add tree-ssa-sccvn.o Added: trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-1.c - copied unchanged from r125553, branches/gcc-pre-vn/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-1.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-2.c - copied unchanged from r125553, branches/gcc-pre-vn/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-2.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-3.c - copied unchanged from r125553, branches/gcc-pre-vn/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-3.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-4.c - copied unchanged from r125553, branches/gcc-pre-vn/gcc/testsuite/gcc.dg/tree-ssa/ssa-sccvn-4.c trunk/gcc/tree-ssa-sccvn.c - copied, changed from r125553, branches/gcc-pre-vn/gcc/tree-ssa-sccvn.c trunk/gcc/tree-ssa-sccvn.h - copied, changed from r125553, branches/gcc-pre-vn/gcc/tree-ssa-sccvn.h Modified: trunk/gcc/ChangeLog trunk/gcc/Makefile.in trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-1.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-3.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-4.c trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-5.c trunk/gcc/tree-flow.h trunk/gcc/tree-ssa-operands.h trunk/gcc/tree-ssa-pre.c trunk/gcc/tree-vn.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32540
[Bug tree-optimization/32540] [4.3 Regression] Exponential time behavior in PRE
--- Comment #4 from dberlin at gcc dot gnu dot org 2007-06-30 14:16 --- Fixed -- dberlin at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32540
[Bug tree-optimization/31651] [4.3 Regression] FRE does not fold intermediate CCP results, FRE does no longer look through loads
--- Comment #6 from dberlin at gcc dot gnu dot org 2007-06-30 14:17 --- Fixed -- dberlin at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31651
[Bug c/32564] New: [libcpp] ICE in print_location() when stat() in remove_duplicates() fails
I had gcc 4.1.1 configured in such a way that when the resulting cc1 got invoked, the stat() call in remove_duplicates() failed with an errno different than ENOENT (calling chain at that moment was: remove_duplications() - merge_include_chains() - register_include_chains() - c_common_post_options() - toplev_main()). This results in calling cpp_errno() - cpp_error() - _cpp_begin_message() and finally print_location() which ICEs because map variable was NULL. The reason is that print_location()'s 'line' parameter was bogus (random value). That value was determined in cpp_error() as src_loc : src_loc = pfile-cur_token[-1].src_loc;. The pfile-cur_token[-1] struct contains bogus values at this point. In attached patch I address this ICE twofold: 1) Make src_loc 0 in cpp_error() when no tokens have been read yet. 2) Check for NULL result of linemap_lookup(). -- Summary: [libcpp] ICE in print_location() when stat() in remove_duplicates() fails Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: John dot Tytgat at aaug dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32564
[Bug c/32564] [libcpp] ICE in print_location() when stat() in remove_duplicates() fails
--- Comment #1 from John dot Tytgat at aaug dot net 2007-06-30 15:02 --- Created an attachment (id=13807) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13807action=view) Suggested fix -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32564
[Bug c++/32549] Wrong template instance resolution among multiple object files.
--- Comment #3 from opichals at seznam dot cz 2007-06-30 15:05 --- I am not sure about the standard wording. But logically typedefs local to a .cpp file should stay local to that file. They in fact are. However the template instances are not. If it should not be that way then the compiler should complain about such conflicts in some way not to get the two confused at runtime. Especially in huge application merges this is very critical. note: I am sorry, will be out of reach for the next few weeks to discuss in detail. I would appreciate any pointers or more detailed explanations you could provide. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32549
[Bug fortran/32472] ICE in trans-const.c:106 for REPEAT initialization expression of non-parameter
--- Comment #7 from pault at gcc dot gnu dot org 2007-06-30 15:11 --- This, I seem to think is well, fixed on trunk. Thanks for the report, Tibias. Paul -- pault at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32472
[Bug rtl-optimization/32504] [4.3 Regression] internal compiler error: in df_refs_verify, at df-scan.c:4058
--- Comment #4 from jojelino at gmail dot com 2007-06-30 15:13 --- confirmed. it seems fixed. maybe i need to clean object files instead getting ICE. -- jojelino at gmail dot com changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||WORKSFORME http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32504
[Bug rtl-optimization/32296] [4.3 Regression] Bootstrap failure in stage1 on hppa*-*-*
--- Comment #21 from danglin at gcc dot gnu dot org 2007-06-30 15:20 --- Fixed by http://gcc.gnu.org/ml/gcc-patches/2007-06/msg02152.html -- danglin at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32296
[Bug tree-optimization/32533] [4.1/4.2 regression] miscompilation at -O3 -ffast-math -ftree-vectorize -march=native
--- Comment #6 from ubizjak at gmail dot com 2007-06-30 15:39 --- Hm, in the dump (gcc-4.1.3), preceeding ifcvt, we have: L4:; D.985_28 = iftmp.5_4 + D.964_27; M.2_29 = (int4) D.985_28; if (M.2_29 1) goto L7; else goto L9; L7:; if (M.2_29 20) goto L10; else goto L9; # M.2_61 = PHI M.2_29(4), 1(3); here L9:; pretmp.98_1 = (real8) M.2_61; # prephitmp.99_39 = PHI 2.0e+1(4), pretmp.98_1(5); # M.2_3 = PHI 20(4), M.2_61(5); L10:; Isn't marked statement unreachable? Comparing _.ssa dumps between 4.1 (wrong result) and 4.3 (correct result), we have: (4.1) --cut here-- L5:; M.1_36 = D.966_29; goto bb 8 (L7); L6:; M.1_35 = 1; # M.1_2 = PHI M.1_36(6), M.1_35(7); here (4.1) L7:; if (M.1_2 20) goto L8; else goto L9; L8:; M.2_34 = 20; goto bb 11 (L10); --cut here-- versus (4.3) --cut here-- bb 8: M.1_17 = D.1365_16; goto bb 10; bb 9: M.1_18 = 1; bb 10: # M.1_1 = PHI M.1_17(8), M.1_18(9)here (4.3) if (20 M.1_1) goto bb 11; else goto bb 12; bb 11: M.2_19 = 20; goto bb 13; ---cut here--- -- ubizjak at gmail dot com changed: What|Removed |Added CC||ubizjak at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32533
[Bug fortran/32555] [4.3 Regression] Miscompilation of NIST testsuite
--- Comment #4 from burnus at gcc dot gnu dot org 2007-06-30 16:01 --- Subject: Bug 32555 Author: burnus Date: Sat Jun 30 16:01:25 2007 New Revision: 126152 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126152 Log: 2007-06-30 Tobias Burnus [EMAIL PROTECTED] PR fortran/32555 * io.c (check_format): Allow zero to precede the P edit descriptor. 2007-06-30 Tobias Burnus [EMAIL PROTECTED] PR fortran/32555 * gfortran.dg/fmt_zero_check.f90: New. Added: trunk/gcc/testsuite/gfortran.dg/fmt_zero_check.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/io.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32555
[Bug fortran/31205] aliased operator assignment produces wrong result
--- Comment #6 from patchapp at dberlin dot org 2007-06-30 16:19 --- Subject: Bug number PR31205 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/2007-06/msg02151.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31205
[Bug fortran/17711] Wrong operator name in error message
--- Comment #8 from patchapp at dberlin dot org 2007-06-30 16:23 --- Subject: Bug number PR17711 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/2007-06/msg02153.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17711
[Bug fortran/20373] INTRINSIC symbols can be given the wrong type
--- Comment #15 from dfranke at gcc dot gnu dot org 2007-06-30 16:27 --- Subject: Bug 20373 Author: dfranke Date: Sat Jun 30 16:26:55 2007 New Revision: 126153 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126153 Log: gcc/fortran: 2007-06-30 Daniel Franke [EMAIL PROTECTED] PR fortran/20373 * intrinsic.c (add_functions): Additional function types. (gfc_convert_type_warn): Remove intrinsic-flag from conversion functions. * resolve.c (resolve_symbol): Added type checks to explicitly defined intrinsics. gcc/testsuite: 2007-06-28 Daniel Franke [EMAIL PROTECTED] PR fortran/20373 * gfortran.dg/intrinsic.f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/intrinsic.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/intrinsic.c trunk/gcc/fortran/resolve.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20373
[Bug fortran/20373] INTRINSIC symbols can be given the wrong type
--- Comment #16 from dfranke at gcc dot gnu dot org 2007-06-30 16:30 --- Fixed in trunk. Closing. -- dfranke at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Known to fail|4.2.1 4.3.0 |4.2.1 Known to work||4.3.0 Resolution||FIXED Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20373
[Bug c++/32565] New: [4.3 regression] ICE with specialization of variadic template
The following valid code snippet triggers an ICE on mainline: templatetypename... struct A; templatetemplateint... class T struct AT0 {}; templateint struct B; AB0 a; bug.cc:7: internal compiler error: tree check: expected class 'expression', have 'constant' (integer_cst) in unify, at cp/pt.c:12796 Please submit a full bug report, [etc.] A similar testcase generates a slightly different error message: templatetypename... struct A; templatetemplatetypename... class T struct ATint {}; templatetypename struct B; ABint a; bug.cc:7: internal compiler error: tree check: expected class 'expression', have 'type' (integer_type) in unify, at cp/pt.c:12796 Please submit a full bug report, [etc.] -- Summary: [4.3 regression] ICE with specialization of variadic template Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-valid-code, monitored Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32565
[Bug c++/32565] [4.3 regression] ICE with specialization of variadic template
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32565
[Bug c++/32566] New: [4.3 regression] ICE with invalid specialization of variadic template
The following invalid code snippet triggers an ICE on mainline: templateint... struct A; templatetemplateint class... T struct AT... {}; bug.cc:3: error: type/value mismatch at argument 1 in template parameter list for 'templateint anonymous struct A' bug.cc:3: internal compiler error: tree check: expected tree that contains 'decl minimal' structure, have 'type_pack_expansion' in convert_template_argument, at cp/pt.c:4693 Please submit a full bug report, [etc.] -- Summary: [4.3 regression] ICE with invalid specialization of variadic template Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code, error-recovery, monitored Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32566
[Bug c++/32566] [4.3 regression] ICE with invalid specialization of variadic template
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32566
[Bug c++/32567] New: [4.3 regression] ICE on invalid use of parameter pack
The following invalid code snippet triggers an ICE on mainline: template typename... T struct A { static T t; static const int i = sizeof(++t); }; int x[Aint::i]; bug.cc:3: error: parameter packs not expanded with `...': bug.cc:3: note: 'T' bug.cc: In instantiation of 'const int Aint::i': bug.cc:7: instantiated from here bug.cc:4: error: invalid use of template type parameter 'T' bug.cc:4: internal compiler error: tree check: expected class 'type', have 'exceptional' (error_mark) in get_unwidened, at tree.c:5887 Please submit a full bug report, [etc.] -- Summary: [4.3 regression] ICE on invalid use of parameter pack Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code, error-recovery, monitored Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32567
[Bug c++/32567] [4.3 regression] ICE on invalid use of parameter pack
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32567
[Bug c++/32111] [4.3 regression] ICE declaring destructor as friend
--- Comment #5 from simartin at gcc dot gnu dot org 2007-06-30 17:02 --- Fixed. -- simartin at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32111
[Bug target/32433] Code for __builtin_ffs does not benefit from compiler optimizations
--- Comment #4 from ubizjak at gmail dot com 2007-06-30 17:07 --- Fixed. -- ubizjak at gmail dot com changed: What|Removed |Added Status|ASSIGNED|RESOLVED GCC build triplet||x86_64-pc-gnu-linux GCC host triplet||x86_64-pc-gnu-linux GCC target triplet||x86_64-pc-gnu-linux Resolution||FIXED Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32433
[Bug target/32433] Code for __builtin_ffs does not benefit from compiler optimizations
--- Comment #3 from uros at gcc dot gnu dot org 2007-06-30 17:06 --- Subject: Bug 32433 Author: uros Date: Sat Jun 30 17:05:49 2007 New Revision: 126154 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126154 Log: PR target/32433 * config/i386/i386.md (ffssi2): Expand as ffs_cmove for TARGET_CMOVE. (ffs_cmove): New expander to expand using ctz pattern. (*ffs_cmove): Remove pattern. (*ffs_no_cmove): Enable only for !TARGET_CMOVE. (ffsdi2): Expand using ctz pattern. (*ffs_rex64): Remove pattern. Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/i386.md -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32433
[Bug target/32437] [4.3 Regression] MIPS: FAIL in gcc.dg/cleanup-[8|9|10|11].c
--- Comment #22 from zadeck at naturalbridge dot com 2007-06-30 17:24 --- Subject: Re: [4.3 Regression] MIPS: FAIL in gcc.dg/cleanup-[8|9|10|11].c richard at codesourcery dot com wrote: --- Comment #21 from richard at codesourcery dot com 2007-06-30 12:26 --- Subject: Re: [4.3 Regression] MIPS: FAIL in gcc.dg/cleanup-[8|9|10|11].c Richard Sandiford [EMAIL PROTECTED] writes: Kenneth Zadeck [EMAIL PROTECTED] writes: 2007-06-23 Kenneth Zadeck [EMAIL PROTECTED] PR middle-end/32437 *dce.c (deletable_insn_p): Add extra parameter and recurse if insn is a PARALLEL. (prescan_insns_for_dce): Add extra parameter. Kenny found that this patch introduced problems on x86 (I think it was) because it applied the special handling for bare CLOBBERs to those inside PARALLELs as well. We don't want that; bare USEs and CLOBBERs are special DF markers, but USEs and CLOBBERs inside PARALLELs are parts of asms or define_insns. Kenny pre-approved the patch below. Bootstrapped regression-tested on x86_64-linux-gnu. Applied to mainline. This patch apparently caused 32475 to resurface, so I reverted it. Richard The comment #3 of this bug is mostly right, the part that pinskia got wrong is the fact that it is the dce subpass of dse that is deleting the insn. I do not see any obvious reason that this insn should not be deleted except that the insn is marked as frame related. Given that dse retains /f insns, I guess that that is what is needed here. Iant, is this correct. If so, i will restore richards code but add a test for frame_relatedness. Kenny -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32437
[Bug target/32437] [4.3 Regression] MIPS: FAIL in gcc.dg/cleanup-[8|9|10|11].c
--- Comment #23 from ian at airs dot com 2007-06-30 17:57 --- The patch in comment #19 of PR 32437 looks clearly correct. That patch should not be reverted, at least not by itself. I'm not clear on whether that was the patch that was reverted, but, if it was, I don't think it should have been. We are not in a time critical situation here. Let's take the time to figure out the right fix even if Richard doesn't have time to work on it. This is DCE, not DSE. In DSE we can not eliminate frame related instructions, because the stores into the frame are used by code which dataflow doesn't see: the exception unwinder. That does not apply to DCE. In DCE, we should be able to eliminate changes to the stack pointer when the stack pointer is not used, even though those changes are frame related. So I think this patch should be unreverted, and I don't think you should add a test for frame relatedness. Then we should fix PR 32475. Further comments over there. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32437
[Bug fortran/32555] [4.3 Regression] Miscompilation of NIST testsuite
--- Comment #5 from jvdelisle at gcc dot gnu dot org 2007-06-30 18:07 --- Fixed, thanks Tobias -- jvdelisle at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32555
[Bug rtl-optimization/32475] [4.3 Regression] function with asm() does not setup stack frame
--- Comment #13 from ian at airs dot com 2007-06-30 18:08 --- The problem here is that although the stack pointer is not used in the function, adjusting it does reserve space on the stack for the local variables which are used. The local variables are accessed via the frame pointer with a negative offset. Deleting the adjustment of the stack pointer is causing that the reference to be implicitly invalid. This test case makes the problem obvious via an asm which essentially does a function call which the compiler doesn't know about. If the asm weren't there, though, there would still be a difficult to diagnose problem in that an interrupt at the wrong time would corrupt the value of the local variables. One possible approach to this is that DF should note that any reference to a local variable via the frame pointer is implicitly a use of the stack pointer. Note that this doesn't necessarily mean a negative offset from the frame pointer, although it does in this case. On processors like the Thumb even local variables are accessed as positive offsets from the frame pointer, and parameters are accessed by larger positive offsets. We also need to consider whether any asm statement is a use of the stack pointer. It may be that DF should treat an asm statement however it treats a function call with regard to uses of the stack pointer. A non-volatile asm would be a const call, and a volatile asm would be an ordinary call. I'm not completely sure about that, but it seems worth considering. A simpler approach would be for DCE to simply not remove adjustments to the stack pointer. I believe this would have to be done whether the adjustment was frame related or not. I think the fact that the instruction is frame related is probably a red herring here. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32475
[Bug middle-end/32559] [4.3 regression] ICE with vector arithmetic
--- Comment #1 from ubizjak at gmail dot com 2007-06-30 19:58 --- Patch at http://gcc.gnu.org/ml/gcc-patches/2007-06/msg02161.html -- ubizjak at gmail dot com changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |ubizjak at gmail dot com |dot org | URL||http://gcc.gnu.org/ml/gcc- ||patches/2007- ||06/msg02161.html Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Keywords||patch Last reconfirmed|-00-00 00:00:00 |2007-06-30 19:58:19 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32559
[Bug fortran/32554] [4.3 regression] Bug in P formatting
--- Comment #7 from patchapp at dberlin dot org 2007-06-30 20:00 --- Subject: Bug number PR32554 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/2007-06/msg02162.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32554
[Bug rtl-optimization/32475] [4.3 Regression] function with asm() does not setup stack frame
--- Comment #14 from zadeck at naturalbridge dot com 2007-06-30 20:11 --- Subject: Re: [4.3 Regression] function with asm() does not setup stack frame ian at airs dot com wrote: --- Comment #13 from ian at airs dot com 2007-06-30 18:08 --- The problem here is that although the stack pointer is not used in the function, adjusting it does reserve space on the stack for the local variables which are used. The local variables are accessed via the frame pointer with a negative offset. Deleting the adjustment of the stack pointer is causing that the reference to be implicitly invalid. This test case makes the problem obvious via an asm which essentially does a function call which the compiler doesn't know about. If the asm weren't there, though, there would still be a difficult to diagnose problem in that an interrupt at the wrong time would corrupt the value of the local variables. One possible approach to this is that DF should note that any reference to a local variable via the frame pointer is implicitly a use of the stack pointer. Note that this doesn't necessarily mean a negative offset from the frame pointer, although it does in this case. On processors like the Thumb even local variables are accessed as positive offsets from the frame pointer, and parameters are accessed by larger positive offsets. We also need to consider whether any asm statement is a use of the stack pointer. It may be that DF should treat an asm statement however it treats a function call with regard to uses of the stack pointer. A non-volatile asm would be a const call, and a volatile asm would be an ordinary call. I'm not completely sure about that, but it seems worth considering. A simpler approach would be for DCE to simply not remove adjustments to the stack pointer. I believe this would have to be done whether the adjustment was frame related or not. I think the fact that the instruction is frame related is probably a red herring here. it is interesting to read the comments as a historical record to what we do. Looking at it from the point of view that we should treat asms more like function calls, there is a disturbing comment in the code that scans the asm inputs: case ASM_INPUT: { /* Traditional and volatile asm instructions must be considered to use and clobber all hard registers, all pseudo-registers and all of memory. So must TRAP_IF and UNSPEC_VOLATILE operations. Consider for instance a volatile asm that changes the fpu rounding mode. An insn should not be moved across this even if it only uses pseudo-regs because it might give an incorrectly rounded result. However, flow.c's liveness computation did *not* do this, giving the reasoning as ?!? Unfortunately, marking all hard registers as live causes massive problems for the register allocator and marking all pseudos as live creates mountains of uninitialized variable warnings. In order to maintain the status quo with regard to liveness and uses, we do what flow.c did and just mark any regs we can find in ASM_OPERANDS as used. In global asm insns are scanned and regs_asm_clobbered is filled out. For all ASM_OPERANDS, we must traverse the vector of input operands. We can not just fall through here since then we would be confused by the ASM_INPUT rtx inside ASM_OPERANDS, which do not indicate traditional asms unlike their normal usage. */ if (code == ASM_OPERANDS) { int j; for (j = 0; j ASM_OPERANDS_INPUT_LENGTH (x); j++) df_uses_record (collection_rec, ASM_OPERANDS_INPUT (x, j), DF_REF_REG_USE, bb, insn, flags); return; } break; } Asside from the fallout in the register allocator or uninitialized warnings, there really is not problem adding the stack_pointer. Flow could get away with it because it could assume that the rest of the optimizations were stupid or had been neutered. I do not think that is the way to go. We add the stack pointer not matter if the function call is a const call or not. Note that const calls do generally read the stack. Adding the stack pointer for asms is certainly the easiest thing to do. If you think that we want to view mem refs off the frame pointer as if they also touch the stack pointer, we can do that, but i would ask the question as to why just in dce? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32475
[Bug target/31674] [4.3 Regression] internal consistency failure on ia64 with -O
--- Comment #8 from aoliva at gcc dot gnu dot org 2007-06-30 21:24 --- Sorry about the delay. The patch that introduced this problem was reverted, and the revised version thereof, still awaiting review, does not trigger the problem any more. -- aoliva at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31674
[Bug c/28706] [4.1 Regression] Compile failure with --combine and explicitly aligned structures
--- Comment #5 from aoliva at gcc dot gnu dot org 2007-06-30 21:29 --- How about posting the backported-and-tested patch to gcc-patches, indicating on which platform you've tested it? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28706
[Bug tree-optimization/31966] Miscompiles valid code with -ftree-vectorize and -march=nocona
--- Comment #2 from lloyd at randombit dot net 2007-06-30 22:11 --- The behavior still exists in the 4.3 20070622 snapshot. It does not occur using -march=core2 (the actual CPU in question). The bad value results when using -ftree-vectorize and -march or -mtune =nocona. -O, -O2, or -O3 is also required; a binary compiled with -Os produces the correct value. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31966
[Bug tree-optimization/18892] missed optimization with and ==
--- Comment #8 from pinskia at gcc dot gnu dot org 2007-07-01 00:12 --- This was fixed with one of the forwprop patches, I don't know which one though. -- pinskia 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=18892
[Bug middle-end/25529] (unsigned * 2)/2 is not changed into unsigned 0x7FFFFFFF
--- Comment #1 from pinskia at gcc dot gnu dot org 2007-07-01 00:34 --- Related to PR 25530. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25529
[Bug tree-optimization/30186] accessing an element via a pointer on a vector does not cause vec_extract to be used (non-zero index)
--- Comment #1 from pinskia at gcc dot gnu dot org 2007-07-01 00:52 --- Confirmed. -- 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 |2007-07-01 00:52:52 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30186
[Bug tree-optimization/23346] [4.1/4.2 Regression] FRE before DCE makes a mess of loads or need to sink loads
--- Comment #16 from pinskia at gcc dot gnu dot org 2007-07-01 01:07 --- The new SCCVN fixes this testcase. So this is fixed for 4.3.0. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Known to work||4.3.0 Summary|[4.1/4.2/4.3 Regression] FRE|[4.1/4.2 Regression] FRE |before DCE makes a mess of |before DCE makes a mess of |loads or need to sink loads |loads or need to sink loads http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23346
[Bug tree-optimization/28868] [4.0/4.1/4.2/4.3 Regression] Not elimintating the PHIs which have the same arguments
--- Comment #9 from pinskia at gcc dot gnu dot org 2007-07-01 01:09 --- We get in .fre now: Value numbers: d_2 = c_1 But we still get the PHIs: # d_2 = PHI a_4(D)(2), b_7(D)(3) # c_1 = PHI a_4(D)(2), b_7(D)(3) -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Last reconfirmed|2007-01-15 20:22:29 |2007-07-01 01:09:42 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28868
[Bug tree-optimization/30966] (long long)(int_var) == (long long)(int_var1) is not simplified down to int_var == int_var1 when expanded
--- Comment #2 from pinskia at gcc dot gnu dot org 2007-07-01 01:12 --- It turns out this is the same issue as PR 15017. :) Sometimes I file dups myself :). *** This bug has been marked as a duplicate of 15017 *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30966
[Bug tree-optimization/15017] compare with casts (equal) are not removed in forwprop
--- Comment #13 from pinskia at gcc dot gnu dot org 2007-07-01 01:12 --- *** Bug 30966 has been marked as a duplicate of this bug. *** -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15017
[Bug tree-optimization/25553] Missed removal of load
--- Comment #6 from pinskia at gcc dot gnu dot org 2007-07-01 01:18 --- Note for the Cell this is even more important so you don't run into the LHS hazzard. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Last reconfirmed|2006-01-28 04:06:19 |2007-07-01 01:18:12 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25553
[Bug tree-optimization/31981] Missed forw prop with indirect ref and addr. due to CCP
--- Comment #4 from pinskia at gcc dot gnu dot org 2007-07-01 01:22 --- OFFSET + OBJ. Well pointer plus was merged so it is always OBJ + OFFSET :). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31981
[Bug rtl-optimization/32475] [4.3 Regression] function with asm() does not setup stack frame
--- Comment #15 from iant at google dot com 2007-07-01 01:58 --- Subject: Re: [4.3 Regression] function with asm() does not setup stack frame Adding the stack pointer for asms is certainly the easiest thing to do. I don't know if that is enough. Maybe it is, maybe it isn't. You can't delete the subtraction of the stack pointer if there is any use of any local variable on the frame in any way. If an interrupt occurs, and the stack pointer has not been decremented to be below the local variables, then the local variables will be corrupted by the interrupt handler. If you think that we want to view mem refs off the frame pointer as if they also touch the stack pointer, we can do that, but i would ask the question as to why just in dce? I meant it should be done when doing dataflow scanning, not in DCE. I agree there is nothing special about DCE here. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32475
[Bug java/32568] New: internal compiler error: in vn_lookup, at tree-vn.c:290
during the build, I encountered the following error sequence: libtool: compile: /Users/frank/build/./gcc/xgcc -shared-libgcc -B/Users/frank/build/./gcc -nostdinc++ -L/Users/frank/build/powerpc-apple-darwin8.10.0/ppc64/libstdc++-v3/src -L/Users/frank/build/powerpc-apple-darwin8.10.0/ppc64/libstdc++-v3/src/.libs -B/usr/local/powerpc-apple-darwin8.10.0/bin/ -B/usr/local/powerpc-apple-darwin8.10.0/lib/ -isystem /usr/local/powerpc-apple-darwin8.10.0/include -isystem /usr/local/powerpc-apple-darwin8.10.0/sys-include -m64 -DHAVE_CONFIG_H -I. -I../../../../gcc/libjava -I./include -I./gcj -I../../../../gcc/libjava -Iinclude -I../../../../gcc/libjava/include -I../../../../gcc/libjava/classpath/include -Iclasspath/include -I../../../../gcc/libjava/classpath/native/fdlibm -I../../../../gcc/libjava/../boehm-gc/include -I../boehm-gc/include -I../../../../gcc/libjava/libltdl -I../../../../gcc/libjava/libltdl -I../../../../gcc/libjava/.././libjava/../gcc -I../../../../gcc/libjava/../zlib -I../../../../gcc/libjava/../libffi/include -I../libffi/include -fno-rtti -fnon-call-exceptions -fdollars-in-identifiers -Wswitch-enum -D_FILE_OFFSET_BITS=64 -Wextra -Wall -D_GNU_SOURCE -DPREFIX=\/usr/local\ -DTOOLEXECLIBDIR=\/usr/local/lib/ppc64\ -DJAVA_HOME=\/usr/local\ -DBOOT_CLASS_PATH=\/usr/local/share/java/libgcj-4.3.0.jar\ -DJAVA_EXT_DIRS=\/usr/local/share/java/ext\ -DGCJ_ENDORSED_DIRS=\/usr/local/share/java/gcj-endorsed\ -DGCJ_VERSIONED_LIBDIR=\/usr/local/lib/ppc64/gcj-4.3.0\ -DPATH_SEPARATOR=\:\ -DECJ_JAR_FILE=\\ -DLIBGCJ_DEFAULT_DATABASE=\/usr/local/lib/ppc64/gcj-4.3.0/classmap.db\ -DLIBGCJ_DEFAULT_DATABASE_PATH_TAIL=\gcj-4.3.0/classmap.db\ -g -O2 -m64 -MT prims.lo -MD -MP -MF .deps/prims.Tpo -c ../../../../gcc/libjava/prims.cc -fno-common -DPIC -o .libs/prims.o ../../../../gcc/libjava/prims.cc: In function 'java::lang::Class* _Jv_FindClassFromSignatureNoException(char*, java::lang::ClassLoader*, char**)': ../../../../gcc/libjava/prims.cc:923: internal compiler error: in vn_lookup, at tree-vn.c:290 Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. make[5]: *** [prims.lo] Error 1 make[4]: *** [all-recursive] Error 1 make[3]: *** [multi-do] Error 1 make[2]: *** [all-multi] Error 2 make[1]: *** [all-target-libjava] Error 2 make: *** [all] Error 2 I did a bug search on vn_lookup and found no bug report; therefore, I am submitting a report as per requested by the error sequence. The gcc version I am using to perform the build is gcc-4.0.1. The build is on an upgraded Quicksilver (dual 1.73 GHz PowerPC G4 - 7448) w/ 1.5 GB memory. -- Summary: internal compiler error: in vn_lookup, at tree-vn.c:290 Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: trog24 at comcast dot net GCC build triplet: 4.3.0 GCC host triplet: powerpc-apple-darwin8.8.0 GCC target triplet: powerpc-apple-darwin8.8.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32568
[Bug tree-optimization/32568] [4.3 Regression] internal compiler error: in vn_lookup, at tree-vn.c:290
--- Comment #1 from pinskia at gcc dot gnu dot org 2007-07-01 02:49 --- Already fixed by: 2007-06-30 Daniel Berlin [EMAIL PROTECTED] * tree-ssa-pre.c (is_exception_related): New function (can_value_number_operation): Use it. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Component|java|tree-optimization Keywords||build, ice-on-valid-code Resolution||FIXED Summary|internal compiler error: in |[4.3 Regression] internal |vn_lookup, at tree-vn.c:290 |compiler error: in ||vn_lookup, at tree-vn.c:290 Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32568