[Bug libfortran/32770] New: -fdefault-integer-8 and the library

2007-07-15 Thread tkoenig at gcc dot gnu dot org
-fdefault-integer-8 has some "interesting" interactions with
the library, especially on big-endian systems.

Look at the following program:

$ cat maxloc-mask.f90 
program main
  real, dimension(2) :: a
  call random_number(a)
  print *,maxloc(a,mask=.true.)
end program main
$ gfortran -fdump-tree-original -fdefault-integer-8 -fdefault-real-8
maxloc-mask.f90 

This produces

{
  int8 A.4[1];
  struct array1_int8 atmp.3;
  static logical8 C.1015 = 1;
  struct array1_real8 parm.2;

  parm.2.dtype = 537;
  parm.2.dim[0].lbound = 1;
  parm.2.dim[0].ubound = 2;
  parm.2.dim[0].stride = 1;
  parm.2.data = (void *) &a[0];
  parm.2.offset = -1;
  atmp.3.dtype = 521;
  atmp.3.dim[0].stride = 1;
  atmp.3.dim[0].lbound = 0;
  atmp.3.dim[0].ubound = 0;
  atmp.3.data = (void *) &A.4;
  atmp.3.offset = 0;
  _gfortran_smaxloc0_8_r8 (&atmp.3, &parm.2, &C.1015);

and the function called is

extern void smaxloc0_8_r8 (gfc_array_i8 * const restrict,
gfc_array_r8 * const restrict, GFC_LOGICAL_4 *);

Works on little-endian systems, won't work on big-endian systems.

Intrinsics this probably causes problems on:

maxloc, maxval, minloc, minval.

There may be other places like this.

I don't have a big-endian system, so I can't test this.  I'd appreciate a
confirmation.


-- 
   Summary: -fdefault-integer-8 and the library
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Keywords: wrong-code
  Severity: normal
  Priority: P3
 Component: libfortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: tkoenig at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32770



[Bug rtl-optimization/32557] [4.3 Regression] internal compiler error: RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:956

2007-07-15 Thread rask at sygehus dot dk


--- Comment #1 from rask at sygehus dot dk  2007-07-15 14:29 ---
I get something similiar with my 16-bit x86 port compiling libgcc:

/home/rask/cvsbuild/gcc/./gcc/xgcc -B/home/rask/cvsbuild/gcc/./gcc/ -nostdinc
-B/home/rask/cvsbuild/gcc/ia16-elf/newlib/ -isystem
/home/rask/cvsbuild/gcc/ia16-elf/newlib/targ-include -isystem
/home/rask/cvssrc/gcc/newlib/libc/include -B/usr/local/gcc/ia16-elf/bin/
-B/usr/local/gcc/ia16-elf/lib/ -isystem /usr/local/gcc/ia16-elf/include
-isystem /usr/local/gcc/ia16-elf/sys-include -O2 -g -O2 -fno-split-wide-types
-O2  -O2 -g -O2  -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE   -W -Wall
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
 -isystem ./include   -g  -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc
-I. -I. -I../../.././gcc -I../../../../../cvssrc/gcc/libgcc
-I../../../../../cvssrc/gcc/libgcc/. -I../../../../../cvssrc/gcc/libgcc/../gcc
-I../../../../../cvssrc/gcc/libgcc/../include  -DHAVE_CC_TLS -o _mulvsi3.o -MT
_mulvsi3.o -MD -MP -MF _mulvsi3.dep -DL_mulvsi3 -c
../../../../../cvssrc/gcc/libgcc/../gcc/libgcc2.c \

../../../../../cvssrc/gcc/libgcc/../gcc/libgcc2.c: In function '__mulvsi3':
../../../../../cvssrc/gcc/libgcc/../gcc/libgcc2.c:169: internal compiler error:
RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:972

This patch seems to fix it:

Index: gcc/df-problems.c
===
--- gcc/df-problems.c   (revision 126653)
+++ gcc/df-problems.c   (working copy)
@@ -4023,8 +4023,9 @@ df_note_bb_compute (unsigned int bb_inde
   while (*mws_rec)
{
  struct df_mw_hardreg *mws = *mws_rec; 
+ rtx reg = REG_P (mws->mw_reg) ? mws->mw_reg : SUBREG_REG
(mws->mw_reg);
  if ((mws->type != DF_REF_REG_DEF)  
- && !df_ignore_stack_reg (REGNO (mws->mw_reg)))
+ && !df_ignore_stack_reg (REGNO (reg)))
old_dead_notes
  = df_set_dead_notes_for_mw (insn, old_dead_notes, 
  mws, live, do_not_gen,


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32557



[Bug rtl-optimization/32557] [4.3 Regression] internal compiler error: RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:956

2007-07-15 Thread ebotcazou at gcc dot gnu dot org


--- Comment #2 from ebotcazou at gcc dot gnu dot org  2007-07-15 15:43 
---
> I get something similiar with my 16-bit x86 port compiling libgcc:

Same on SPARC/Solaris:
  http://gcc.gnu.org/ml/gcc-patches/2007-06/msg02135.html

> This patch seems to fix it:
> 
> Index: gcc/df-problems.c
> ===
> --- gcc/df-problems.c   (revision 126653)
> +++ gcc/df-problems.c   (working copy)
> @@ -4023,8 +4023,9 @@ df_note_bb_compute (unsigned int bb_inde
>while (*mws_rec)
> {
>   struct df_mw_hardreg *mws = *mws_rec; 
> + rtx reg = REG_P (mws->mw_reg) ? mws->mw_reg : SUBREG_REG
> (mws->mw_reg);
>   if ((mws->type != DF_REF_REG_DEF)  
> - && !df_ignore_stack_reg (REGNO (mws->mw_reg)))
> + && !df_ignore_stack_reg (REGNO (reg)))
> old_dead_notes
>   = df_set_dead_notes_for_mw (insn, old_dead_notes, 
>   mws, live, do_not_gen,

See the discussion at
  http://gcc.gnu.org/ml/gcc-patches/2007-06/msg01894.html


-- 

ebotcazou at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||ebotcazou at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2007-07-15 15:43:00
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32557



[Bug libfortran/32611] Print sign of negative zero

2007-07-15 Thread jvdelisle at gcc dot gnu dot org


--- Comment #6 from jvdelisle at gcc dot gnu dot org  2007-07-15 16:26 
---
Subject: Bug 32611

Author: jvdelisle
Date: Sun Jul 15 16:26:22 2007
New Revision: 126654

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=126654
Log:
2007-07-15  Jerry DeLisle  <[EMAIL PROTECTED]>
Francois-Xavier Coudert  <[EMAIL PROTECTED]>

PR fortran/32611
* runtime/compile_options.c (set_std): Remove.
(set_options): New function.
(init_compile_options): Add initialization for -fsign-zero option.
* gfortran.map (GFORTRAN_1.0): Rename _gfortran_set_std into
_gfortran_set_options.
* libgfortran.h (compile_options_t): Add sign_zero field.
* io/write.c (output_float): Use the sign bit of the value to determine
if a negative sign should be emitted for zero values.  Do not emit the
negative sign for zero if -fno-sign-zero was set during compile.

Modified:
trunk/libgfortran/ChangeLog
trunk/libgfortran/gfortran.map
trunk/libgfortran/io/write.c
trunk/libgfortran/libgfortran.h
trunk/libgfortran/runtime/compile_options.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32611



[Bug libfortran/32611] Print sign of negative zero

2007-07-15 Thread jvdelisle at gcc dot gnu dot org


--- Comment #7 from jvdelisle at gcc dot gnu dot org  2007-07-15 16:29 
---
Subject: Bug 32611

Author: jvdelisle
Date: Sun Jul 15 16:29:19 2007
New Revision: 126655

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=126655
Log:
2007-07-15  Jerry DeLisle  <[EMAIL PROTECTED]>
Francois-Xavier Coudert  <[EMAIL PROTECTED]>

PR fortran/32611
* gfortran.h (gfc_option_t): Add flag_sign_zero field.
* lang.opt (-fsign-zero): New option.
* trans.h: Rename gfor_fndecl_set_std into gfor_fndecl_set_options.
* trans-decl.c (gfc_build_builtin_function_decls): Build the function
declaration to pass an array containing the options to be used by the
runtime library. (gfc_generate_function_code): Build an array that
contains option values to be passed to the runtime library and the call
to the function. 
* options.c (gfc_init_options): Initialize the flag_sign_zero field.
(gfc_handle_option): Handle the -fsign-zero option.

Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/gfortran.h
trunk/gcc/fortran/lang.opt
trunk/gcc/fortran/options.c
trunk/gcc/fortran/trans-decl.c
trunk/gcc/fortran/trans.h


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32611



[Bug libfortran/32611] Print sign of negative zero

2007-07-15 Thread jvdelisle at gcc dot gnu dot org


--- Comment #8 from jvdelisle at gcc dot gnu dot org  2007-07-15 16:35 
---
Subject: Bug 32611

Author: jvdelisle
Date: Sun Jul 15 16:35:07 2007
New Revision: 126656

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=126656
Log:
2007-07-15  Jerry DeLisle  <[EMAIL PROTECTED]>

PR libfortran/32611
* gfortran.dg/large_real_kind_1.f90: Update test.
* gfortran.dg/pr17706.f90: Update test.
* gfortran.dg/fmt_zero_digits.f90: Update test.
* gfortran.dg/fmt_zero_precision.f90: Update test.
* gfortran.dg/real_const_3.f90: Update test.

Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gfortran.dg/fmt_zero_digits.f90
trunk/gcc/testsuite/gfortran.dg/fmt_zero_precision.f90
trunk/gcc/testsuite/gfortran.dg/large_real_kind_1.f90
trunk/gcc/testsuite/gfortran.dg/pr17706.f90
trunk/gcc/testsuite/gfortran.dg/real_const_3.f90


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32611



[Bug libfortran/32611] Print sign of negative zero

2007-07-15 Thread jvdelisle at gcc dot gnu dot org


--- Comment #9 from jvdelisle at gcc dot gnu dot org  2007-07-15 16:36 
---
Fixed on trunk, closing


-- 

jvdelisle at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32611



[Bug libfortran/32752] Segfault on WRITE with modified unix_stream structure

2007-07-15 Thread jvdelisle at gcc dot gnu dot org


--- Comment #4 from jvdelisle at gcc dot gnu dot org  2007-07-15 16:50 
---
Fixed on trunk, no backport.


-- 

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=32752



[Bug tree-optimization/32591] [4.3 Regression] ICE: in vn_binary_op_insert, at tree-ssa-sccvn.c:852

2007-07-15 Thread danglin at gcc dot gnu dot org


--- Comment #3 from danglin at gcc dot gnu dot org  2007-07-15 17:08 ---
Fixed.


-- 

danglin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32591



[Bug middle-end/32769] [4.3 Regression] __builtin_eh_return broken by dataflow merge

2007-07-15 Thread danglin at gcc dot gnu dot org


--- Comment #5 from danglin at gcc dot gnu dot org  2007-07-15 17:19 ---
Subject: Bug 32769

Author: danglin
Date: Sun Jul 15 17:19:13 2007
New Revision: 126657

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=126657
Log:
PR middle-end/32398
PR middle-end/32769
* pa-protos.h (pa_eh_return_handler_rtx): Declare.
* pa.c (pa_extra_live_on_entry, rp_saved): Declare.
(TARGET_EXTRA_LIVE_ON_ENTRY): Define.
(pa_output_function_prologue): Use rp_saved and
current_function_is_leaf
to generate .CALLINFO statement.
(hppa_expand_prologue): Set rp_saved.
(hppa_expand_epilogue): Use rp_saved.
(pa_extra_live_on_entry, pa_eh_return_handler_rtx): New functions.
* pa.h (EH_RETURN_HANDLER_RTX): Use pa_eh_return_handler_rtx.


Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/pa/pa-protos.h
trunk/gcc/config/pa/pa.c
trunk/gcc/config/pa/pa.h


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32769



[Bug middle-end/32398] [4.3 Regression] checking for suffix of object files... configure: error: cannot compute suffix of f object files: cannot compile

2007-07-15 Thread danglin at gcc dot gnu dot org


--- Comment #20 from danglin at gcc dot gnu dot org  2007-07-15 17:19 
---
Subject: Bug 32398

Author: danglin
Date: Sun Jul 15 17:19:13 2007
New Revision: 126657

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=126657
Log:
PR middle-end/32398
PR middle-end/32769
* pa-protos.h (pa_eh_return_handler_rtx): Declare.
* pa.c (pa_extra_live_on_entry, rp_saved): Declare.
(TARGET_EXTRA_LIVE_ON_ENTRY): Define.
(pa_output_function_prologue): Use rp_saved and
current_function_is_leaf
to generate .CALLINFO statement.
(hppa_expand_prologue): Set rp_saved.
(hppa_expand_epilogue): Use rp_saved.
(pa_extra_live_on_entry, pa_eh_return_handler_rtx): New functions.
* pa.h (EH_RETURN_HANDLER_RTX): Use pa_eh_return_handler_rtx.


Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/pa/pa-protos.h
trunk/gcc/config/pa/pa.c
trunk/gcc/config/pa/pa.h


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32398



[Bug middle-end/32769] [4.3 Regression] __builtin_eh_return broken by dataflow merge

2007-07-15 Thread danglin at gcc dot gnu dot org


--- Comment #6 from danglin at gcc dot gnu dot org  2007-07-15 17:21 ---
Fixed by change.


-- 

danglin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32769



[Bug middle-end/32398] [4.3 Regression] checking for suffix of object files... configure: error: cannot compute suffix of f object files: cannot compile

2007-07-15 Thread danglin at gcc dot gnu dot org


--- Comment #21 from danglin at gcc dot gnu dot org  2007-07-15 17:23 
---
Fixed by change.


-- 

danglin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32398



[Bug fortran/32380] misaligned stores don't get vectorized

2007-07-15 Thread dorit at gcc dot gnu dot org


--- Comment #3 from dorit at gcc dot gnu dot org  2007-07-15 18:31 ---
> With loop distribution we could vectorize these loops using peeling to handle
> misaligned stores (multiple stores make peeling for alignment insufficient
> here).

wonder what the loop-distribution pass in the graphite branch can do with these
loops (http://gcc.gnu.org/ml/gcc-patches/2007-05/msg01130.html)


-- 

dorit at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||spop at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32380



[Bug fortran/32380] misaligned stores don't get vectorized

2007-07-15 Thread tprince at computer dot org


--- Comment #4 from tprince at computer dot org  2007-07-15 18:43 ---
The arrays in this example all have compatible alignment.  This is one of the
advantages many compilers see in the use of the "old-fashioned" block COMMON.
In the usual case lft==1 all arrays in COMMON are aligned, with the size
declarations given here.  So it is undesirable to split the loop to handle
alignment.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32380



[Bug fortran/32380] misaligned stores don't get vectorized

2007-07-15 Thread dorit at gcc dot gnu dot org


--- Comment #5 from dorit at gcc dot gnu dot org  2007-07-15 19:02 ---
(In reply to comment #4)
> The arrays in this example all have compatible alignment.  This is one of the
> advantages many compilers see in the use of the "old-fashioned" block COMMON.
> In the usual case lft==1 all arrays in COMMON are aligned, with the size
> declarations given here.  So it is undesirable to split the loop to handle
> alignment.

ah, ok. so the real issue here is to make the vectorizer notice that all these
accesses have the same alignment (we have a way in the vectorizer to mark
accesses that have the same alignment even if the alignment itself is unknown).
to be continued...


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32380



[Bug libstdc++/31906] "-Xcompiler" is inserted after "-Xlinker" when building libstdc++

2007-07-15 Thread mark at codesourcery dot com


--- Comment #12 from mark at codesourcery dot com  2007-07-15 19:27 ---
Subject: Re:  "-Xcompiler" is inserted after "-Xlinker"
 when building libstdc++

pcarlini at suse dot de wrote:
> --- Comment #11 from pcarlini at suse dot de  2007-07-14 23:51 ---
> I advice against committing anything to 4_2-branch, at this time. In any case,
> we don't have a regression wrt 4.2.0 - only wrt 4.1.x if confirmed - and we
> have a workaround.

I agree.  I'd certainly like to see this fixed in 4.2.2 (or whatever the
version number ends up being for the release following 4.2.1) but I
don't think we should make this change for 4.2.1, at this very late date.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31906



[Bug libstdc++/31906] "-Xcompiler" is inserted after "-Xlinker" when building libstdc++

2007-07-15 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2
   Target Milestone|--- |4.2.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31906



Fail to compile mjpegtools-1

2007-07-15 Thread calvesmit
make[2]: Entering directory 
`/home/calves/mydownloads/mjpegtools-1.9.0rc2/y4mdenoise' 
if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I/usr/include -I../utils   
-DNDEBUG -finline-functions -fno-PIC -march=k8 -mcpu=k8 -g -O2 -pthread -MT 
newdenoise.o -MD -MP -MF ".deps/newdenoise.Tpo" -c -o newdenoise.o 
newdenoise.cc; \ 
then mv -f ".deps/newdenoise.Tpo" ".deps/newdenoise.Po"; else rm -f 
".deps/newdenoise.Tpo"; exit 1; fi 
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead. 
MotionSearcher.hh: In instantiation of ‘MotionSearcher, 
ReferencePixel >, ReferenceFrame >, short int, int> 
>::MatchThrottleFloodFillControl’: 
MotionSearcher.hh:507:   instantiated from ‘MotionSearcher, 
ReferencePixel >, ReferenceFrame >, short int, int> >’ 
newdenoise.cc:32:   instantiated from here 
MotionSearcher.hh:2444: internal compiler error: in tsubst, at cp/pt.c:7226 
Please submit a full bug report, 
with preprocessed source if appropriate. 
See http://gcc.gnu.org/bugs.html> for instructions. 
For Debian GNU/Linux specific bug reporting instructions, 
see . 
Preprocessed source stored into /tmp/ccbya50C.out file, please attach this 
to your bugreport. 
make[2]: *** [newdenoise.o] Error 1 
make[2]: Leaving directory 
`/home/calves/mydownloads/mjpegtools-1.9.0rc2/y4mdenoise' 
make[1]: *** [all-recursive] Error 1 
make[1]: Leaving directory `/home/calves/mydownloads/mjpegtools-1.9.0rc2' 
make: *** [all] Error 2 
[EMAIL PROTECTED]:~/mydownloads/mjpegtools-1.9.0rc2$ 




Fail to compile mjpegtools-1.9.0rc2

2007-07-15 Thread calvesmit
Hi guys, 
I was trying to compile mjpegtools-1.9.0rc2 
(http://sourceforge.net/projects/mjpeg/), then when making the usual: 
./configure 
make 

I got the error below, I don't know if it's a real gcc bug or just 
a code bug! Anyway, someone could help me pointing me out what's 
could be wrong? 

Carlos Alberto 
Brazil 

gcc -v command line gives me: 
[EMAIL PROTECTED]:~/mydownloads/mjpegtools-1.9.0rc2$ gcc -v 
Using built-in specs. 
Target: x86_64-linux-gnu 
Configured with: ../src/configure -v 
--enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr 
--enable-shared --with-system-zlib --libexecdir=/usr/lib 
--without-included-gettext --enable-threads=posix --enable-nls 
--program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu 
--enable-libstdcxx-debug --enable-mpfr --enable-checking=release 
x86_64-linux-gnu 
Thread model: posix 
gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) 
[EMAIL PROTECTED]:~/mydownloads/mjpegtools-1.9.0rc2$ 

--- 

make[2]: Entering directory 
`/home/calves/mydownloads/mjpegtools-1.9.0rc2/y4mdenoise' 
if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I/usr/include -I../utils   
-DNDEBUG -finline-functions -fno-PIC -march=k8 -mcpu=k8 -g -O2 -pthread -MT 
newdenoise.o -MD -MP -MF ".deps/newdenoise.Tpo" -c -o newdenoise.o 
newdenoise.cc; \ 
then mv -f ".deps/newdenoise.Tpo" ".deps/newdenoise.Po"; else rm -f 
".deps/newdenoise.Tpo"; exit 1; fi 
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead. 
MotionSearcher.hh: In instantiation of ‘MotionSearcher, 
ReferencePixel >, ReferenceFrame >, short int, int> 
>::MatchThrottleFloodFillControl’: 
MotionSearcher.hh:507:   instantiated from ‘MotionSearcher, 
ReferencePixel >, ReferenceFrame >, short int, int> >’ 
newdenoise.cc:32:   instantiated from here 
MotionSearcher.hh:2444: internal compiler error: in tsubst, at cp/pt.c:7226 
Please submit a full bug report, 
with preprocessed source if appropriate. 
See http://gcc.gnu.org/bugs.html> for instructions. 
For Debian GNU/Linux specific bug reporting instructions, 
see . 
Preprocessed source stored into /tmp/ccbya50C.out file, please attach this 
to your bugreport. 
make[2]: *** [newdenoise.o] Error 1 
make[2]: Leaving directory 
`/home/calves/mydownloads/mjpegtools-1.9.0rc2/y4mdenoise' 
make[1]: *** [all-recursive] Error 1 
make[1]: Leaving directory `/home/calves/mydownloads/mjpegtools-1.9.0rc2' 
make: *** [all] Error 2 
[EMAIL PROTECTED]:~/mydownloads/mjpegtools-1.9.0rc2$ 




[Bug c++/32671] Segment violation

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2007-07-15 20:43 ---
Can you attach the preprocessed source which can be found via using the
-save-temps flag?
You can find more information about the process at http://gcc.gnu.org/bugs.html
which mentions what exact information we need to be able to fix this bug.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32671



[Bug java/32706] gcj -M's dependency list is empty

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2007-07-15 20:46 ---
Can you stop reporting bugs against RedHat's 4.1.1 to this bug database?
If you are going to report them, please report them against 4.3.0 after trying
that version.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32706



[Bug c++/32716] [4.2/4.3 Regression] Wrong code generation. Alias and C++ virtual bases problem.

2007-07-15 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.3.0   |4.2.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32716



[Bug bootstrap/32726] [4.3 Regression] ICE when compiling emit-rtl.c

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2007-07-15 20:50 ---
Fixed.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
   Keywords||build, ice-on-valid-code
 Resolution||FIXED
Summary|ICE when compiling emit-|[4.3 Regression] ICE when
   |rtl.c   |compiling emit-rtl.c
   Target Milestone|--- |4.3.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32726



[Bug tree-optimization/32723] [4.2 Regression] memory hog in solve_graph

2007-07-15 Thread pinskia at gcc dot gnu dot org


-- 

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=32723



[Bug tree-optimization/32713] [4.3 regression] ICE in copy_reference_ops_from_ref, at tree-ssa-sccvn.c:550

2007-07-15 Thread pinskia at gcc dot gnu dot org


-- 

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=32713



[Bug c/32728] g++: Internal error: Terminated (program cc1plus)

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2007-07-15 20:52 ---
Can you attach the preprocessed source as requested by
http://gcc.gnu.org/bugs.html ?


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32728



[Bug rtl-optimization/32729] [4.3 Regression] : Loop unrolling not performed with large constant loop bound

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #7 from pinskia at gcc dot gnu dot org  2007-07-15 20:53 ---
Fixed.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
Summary|Regression: Loop unrolling  |[4.3 Regression] : Loop
   |not performed with large|unrolling not performed with
   |constant loop bound |large constant loop bound
   Target Milestone|--- |4.3.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32729



[Bug tree-optimization/32720] [4.3 Regression] No coalesce ssa_names

2007-07-15 Thread pinskia at gcc dot gnu dot org


-- 

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=32720



[Bug bootstrap/32753] building a crosscompiler for arm-elf fails because of an error in cirrus.md

2007-07-15 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||mmitchel at gcc dot gnu dot
   ||org
   Target Milestone|--- |4.2.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32753



[Bug rtl-optimization/32747] [4.3 Regression] ICE segmentation fault or abort in combine on alpha

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #2 from pinskia at gcc dot gnu dot org  2007-07-15 21:01 ---
This seems related to:
http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01379.html


-- 

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=32747



[Bug tree-optimization/32733] [4.3 regression] error: definition in block 11 does not dominate use in block 12

2007-07-15 Thread pinskia at gcc dot gnu dot org


-- 

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=32733



[Bug java/32758] ecj1 hangs

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2007-07-15 21:03 ---
If ecj is hanging this might not be a GCJ bug but an ecj one.
Can you attach picture.java?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32758



[Bug tree-optimization/32759] False claim of that "xyz is used uninitialized"

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2007-07-15 21:05 ---
What is happening is that for the switch statement, we don't know that the
value can't be just 0 or 1 at the point where we warn.  We should be able to
lower this switch statement into an if statement and get better results.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
  Component|c   |tree-optimization
 Ever Confirmed|0   |1
   Keywords||diagnostic
   Last reconfirmed|-00-00 00:00:00 |2007-07-15 21:05:38
   date||
Summary|False claim of that "xyz is |False claim of that "xyz is
   |used uninitialized" |used uninitialized"


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32759



[Bug middle-end/32749] [4.3 regression]: gfortran.dg/auto_array_1.f90

2007-07-15 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

  Component|target  |middle-end
   Target Milestone|--- |4.3.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32749



[Bug debug/32764] [4.3 regression] : Failed to bootstrap on Linux/ia64

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #4 from pinskia at gcc dot gnu dot org  2007-07-15 21:08 ---
PS Where is the preprocessed source?


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

  Component|bootstrap   |debug
   Keywords||build, ice-on-valid-code


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32764



[Bug target/32765] Testsuite failures due to undefined symbol ___emutls_get_address

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2007-07-15 21:09 ---
This is more likely a target issue of not including these functions in the
shared version of libgcc.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
  Component|testsuite   |target
   Keywords||link-failure


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32765



[Bug c++/32768] error compiling openoffice.org-2.0 via FreeBSD ports

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #2 from pinskia at gcc dot gnu dot org  2007-07-15 21:10 ---
Can you attach the preprocessed source as requested by
http://gcc.gnu.org/bugs.html ?


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32768



[Bug c++/32767] ICE in constructing a template object using statement expression on AMD64.

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2007-07-15 21:14 ---
Fixed in 4.2.0 and above.

*** This bug has been marked as a duplicate of 27115 ***


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32767



[Bug c++/27115] [4.0/4.1 Regression] ICE in cp_expr_size or miscompilation with statement expressions and constructors (and ?: )

2007-07-15 Thread pinskia at gcc dot gnu dot org


--- Comment #8 from pinskia at gcc dot gnu dot org  2007-07-15 21:14 ---
*** Bug 32767 has been marked as a duplicate of this bug. ***


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||bisqwit at iki dot fi


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27115



[Bug libfortran/32731] pack/unpack with kind=1 or kind=2 mask

2007-07-15 Thread pinskia at gcc dot gnu dot org


-- 

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=32731



[Bug target/32748] [4.3 regression]: gfortran.dg/array_constructor_6.f90

2007-07-15 Thread pinskia at gcc dot gnu dot org


-- 

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=32748



[Bug libfortran/32752] Segfault on WRITE with modified unix_stream structure

2007-07-15 Thread pinskia at gcc dot gnu dot org


-- 

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=32752



[Bug c++/32767] ICE in constructing a template object using statement expression on AMD64.

2007-07-15 Thread bisqwit at iki dot fi


--- Comment #4 from bisqwit at iki dot fi  2007-07-15 21:17 ---
Also is reported that on some 32-bit platforms, instead of causing an ICE, it
causes a rampant memory eating phenomenon.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32767



[Bug target/32753] [4.2 Regression] building a crosscompiler for arm-elf fails because of an error in cirrus.md

2007-07-15 Thread mmitchel at gcc dot gnu dot org


--- Comment #2 from mmitchel at gcc dot gnu dot org  2007-07-15 21:24 
---
Paul, can you confirm that it is impossible to build an arm-elf cross-compiler
with GCC 4.2.1?  AFAICT, nothing has changed in cirrus.md in a long time, and
cirrus.md is included in all ARM configurations, so I would think that this
means that GCC 4.2.1 for ARM is completely broken?


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pbrook at gcc dot gnu dot
   ||org
   Priority|P3  |P1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32753



[Bug target/32748] [4.3 regression]: gfortran.dg/array_constructor_6.f90

2007-07-15 Thread jb at gcc dot gnu dot org


--- Comment #9 from jb at gcc dot gnu dot org  2007-07-15 21:33 ---
Subject: Bug 32748

Author: jb
Date: Sun Jul 15 21:33:32 2007
New Revision: 126662

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=126662
Log:
2007-07-16  Janne Blomqvist  <[EMAIL PROTECTED]>

PR fortran/32748
* trans-decl.c (gfc_build_builtin_function_decls): Remove
DECL_IS_MALLOC attribute from internal_realloc, thus reverting
part of my 2007-07-03 patch.


Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/trans-decl.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32748



[Bug target/32748] [4.3 regression]: gfortran.dg/array_constructor_6.f90

2007-07-15 Thread jb at gcc dot gnu dot org


--- Comment #10 from jb at gcc dot gnu dot org  2007-07-15 21:35 ---
With the 126662 commit, this should now be fixed, closing.


-- 

jb at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32748



[Bug other/32771] New: Fixincludes should fix realloc in in glibc

2007-07-15 Thread hjl at lucon dot org
In  from glibc, there are

/* Re-allocate the previously allocated block
   in PTR, making the new block SIZE bytes long.  */
extern void *realloc (void *__ptr, size_t __size)
 __THROW __attribute_malloc__ __attribute_warn_unused_result__;

However, when a function is marked as mallloc-like, gcc assumes it will
return an address which can alias something else. In case like

#include 

int *p;
p = malloc (4);
*p = 0;
p = realloc (p, 4);
*p = 1;

will have VOPs that do not prevent re-ordering of the two stores.
fixincludes should remove __attribute_malloc__ from realloc.


-- 
   Summary: Fixincludes should fix realloc in  in glibc
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: other
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl at lucon dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32771



[Bug debug/32764] [4.3 regression] : Failed to bootstrap on Linux/ia64

2007-07-15 Thread hjl at lucon dot org


--- Comment #5 from hjl at lucon dot org  2007-07-15 22:49 ---
Created an attachment (id=13916)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13916&action=view)
_moddi3 source

#  ./xgcc -B./ -O -g _moddi3.i -S
/net/gnu-13/export/gnu/src/gcc/gcc/libgcc/../gcc/libgcc2.c: In function
‘__modti3’:
/net/gnu-13/export/gnu/src/gcc/gcc/libgcc/../gcc/libgcc2.c:1125: internal
compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html> for instructions.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32764



[Bug other/32771] Fixincludes should fix realloc in in glibc

2007-07-15 Thread bkorb at gnu dot org


--- Comment #1 from bkorb at gnu dot org  2007-07-15 22:53 ---
I'd take ownership, but I cannot.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32771



[Bug target/32753] [4.2 Regression] building a crosscompiler for arm-elf fails because of an error in cirrus.md

2007-07-15 Thread rask at sygehus dot dk


--- Comment #3 from rask at sygehus dot dk  2007-07-15 23:39 ---
There are test results for GCC 4.2.1 20070706 on arm-elf here:
http://gcc.gnu.org/ml/gcc-testresults/2007-07/msg00334.html>.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32753



[Bug c/32772] New: [4.3 Regression] error: found real variable when subvariables should have appeared

2007-07-15 Thread bunk at stusta dot de
I got the following compile error when trying to compile Linux kernel
2.6.22-rc6-mm1 with a recent gcc SVN snapshot:

$ /usr/local/DIR/gcc-svn20070715/bin/gcc -Wp,-MD,mm/.page_alloc.o.d  -nostdinc
-isystem /usr/local/DIR/gcc-svn20070715/lib/gcc/i686-pc-linux-gnu/4.3.0/include
-D__KERNEL__ -Iinclude  -include include/linux/autoconf.h -Wall -Wundef
-Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common
-Werror-implicit-function-declaration -Werror-implicit-function-declaration -Os
-pipe -msoft-float -mregparm=3 -freg-struct-return -mpreferred-stack-boundary=2
 -march=athlon -ffreestanding -maccumulate-outgoing-args -DCONFIG_AS_CFI=1
-DCONFIG_AS_CFI_SIGNAL_FRAME=1 -Iinclude/asm-i386/mach-generic
-Iinclude/asm-i386/mach-default -fno-omit-frame-pointer
-fno-optimize-sibling-calls -fasynchronous-unwind-tables  -fno-stack-protector
-Wdeclaration-after-statement -Wno-pointer-sign-D"KBUILD_STR(s)=#s"
-D"KBUILD_BASENAME=KBUILD_STR(page_alloc)" 
-D"KBUILD_MODNAME=KBUILD_STR(page_alloc)" -c -o mm/page_alloc.o
mm/page_alloc.c: In function ‘__build_all_zonelists’:
mm/page_alloc.c:2381: error: found real variable when subvariables should have
appeared
while verifying SSA_NAME used_mask_87 in statement
# node_2_cpu_mask_468 = VDEF 
# node_data_469 = VDEF 
# zone_reclaim_mode_470 = VDEF 
# policy_zone_471 = VDEF 
# node_load_472 = VDEF 
# node_order_473 = VDEF 
# used_mask_87 = VDEF 
# tmp_474 = VDEF 
# SFT.3392_475 = VDEF 
# SFT.3393_476 = VDEF 
# SMT.3398_196 = VDEF 
D.24412_7->node_zonelists[i.600_23].zlcache_ptr = zlc_26;
...


-- 
   Summary: [4.3 Regression] error: found real variable when
subvariables should have appeared
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: bunk at stusta dot de
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32772



[Bug c/32772] [4.3 Regression] error: found real variable when subvariables should have appeared

2007-07-15 Thread bunk at stusta dot de


--- Comment #1 from bunk at stusta dot de  2007-07-15 23:56 ---
Created an attachment (id=13917)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13917&action=view)
complete error messages


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32772



[Bug c/32772] [4.3 Regression] error: found real variable when subvariables should have appeared

2007-07-15 Thread bunk at stusta dot de


--- Comment #2 from bunk at stusta dot de  2007-07-15 23:59 ---
Created an attachment (id=13918)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13918&action=view)
preprocessed code


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32772



[Bug tree-optimization/32772] [4.3 Regression] error: found real variable when subvariables should have appeared

2007-07-15 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

  Component|c   |tree-optimization
   Keywords||ice-on-valid-code
   Target Milestone|--- |4.3.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32772



[Bug target/32753] [4.2 Regression] building a crosscompiler for arm-elf fails because of an error in cirrus.md

2007-07-15 Thread pbrook at gcc dot gnu dot org


--- Comment #4 from pbrook at gcc dot gnu dot org  2007-07-16 01:04 ---
Builds fine for me.

The bogus constraint is in a pattern that is never used - the predicate is
"TARGET_ARM && TARGET_HARD_FLOAT && TARGET_MAVERICK && 0 [...]"

gen* are clever enough to eliminate it before it causes problems.
My guess is you broke genconditions by overriding CFLAGS.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32753



[Bug target/32753] [4.2 Regression] building a crosscompiler for arm-elf fails because of an error in cirrus.md

2007-07-15 Thread pbrook at gcc dot gnu dot org


--- Comment #5 from pbrook at gcc dot gnu dot org  2007-07-16 01:28 ---
In further investigation building with a prehistoric (<3.0.1) host compiler may
also cause the same failure.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32753



[Bug target/32753] [4.2 Regression] building a crosscompiler for arm-elf fails because of an error in cirrus.md

2007-07-15 Thread mmitchel at gcc dot gnu dot org


--- Comment #6 from mmitchel at gcc dot gnu dot org  2007-07-16 02:08 
---
Paul --

Thanks for investigating.

Since this should occur only for a minority of people, this is not a
showstopper.  However, would you please remove the disabled pattern?  It's not
doing anything useful, and we have some evidence that it can do something
harmful.  It's OK to remove this now, or wait until after 4.2.1 is released, as
you like.

Thanks,

-- Mark


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pbrook at gcc dot gnu dot
   |dot org |org
   Priority|P1  |P2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32753



[Bug tree-optimization/32199] jc1: out of memory allocating 4072 bytes after a total of 805021000 bytes

2007-07-15 Thread mmitchel at gcc dot gnu dot org


--- Comment #7 from mmitchel at gcc dot gnu dot org  2007-07-16 02:25 
---
Because this is a Java issue, I'm not too concerned about this -- but because
it breaks the build, I'm more concerned than I would be if it was "just" a bug
in using Java.  So, I've marked this P2.


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32199



[Bug rtl-optimization/32773] New: [4.3 Regression] SH: ICE in create_pre_exit, at mode-switching.c:223

2007-07-15 Thread kkojima at gcc dot gnu dot org
With -m4 -O -fprofile-use, sh-elf compiler fails for

void foo (int *p)
{
  if (p)
*p = 0;
}

with

  internal compiler error: in create_pre_exit, at mode-switching.c:223

It starts to fail after the patch

r126576 | rakdver | 2007-07-12 19:24:19 +0900 (Thu, 12 Jul 2007) | 5 lines

PR rtl-optimization/32729
* cfghooks.c (can_duplicate_block_p): Do not forbid duplicating blocks
that fallthru to exit.

mode-switching.c:create_pre_exit seems to assume that there is
at most one fallthru predecessor to exit block.  Unfortunately,
cfg_layout_finalize can't fix the problem, as mode-switching pass
runs before reload_completed and cfg_layout_finalize calls
fixup_fallthru_exit_predecessor only after reload_completed.


-- 
   Summary: [4.3 Regression] SH: ICE in create_pre_exit, at mode-
switching.c:223
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P3
 Component: rtl-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: kkojima at gcc dot gnu dot org
GCC target triplet: sh-elf


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32773