[Bug c++/43863] New: C++ without exceptions is deficient

2010-04-23 Thread sebastian dot huber at embedded-brains dot de
You can use the configure option

--enable-cxx-flags=-fno-exceptions

to create a C++ compiler without exceptions for the standard C++ library and
the built in new/delete operators.

In some cases you want this to save code space.  Unfortunately this goal cannot
be achieved.  In guard.cc the class __gnu_cxx::recursive_init_error is defined
which pulls in pure.cc via std::exception which depends on the IO libary.


-- 
   Summary: C++ without exceptions is deficient
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sebastian dot huber at embedded-brains dot de


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



[Bug c++/43863] C++ without exceptions is deficient

2010-04-23 Thread sebastian dot huber at embedded-brains dot de


--- Comment #1 from sebastian dot huber at embedded-brains dot de  
2010-04-23 06:55 ---
Created an attachment (id=20468)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20468action=view)
Proposed changes.

An alternative is to define this class in a separate file.


-- 


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



[Bug tree-optimization/43833] false warning: array subscript is above array bounds with -O3

2010-04-23 Thread jiez at gcc dot gnu dot org


--- Comment #2 from jiez at gcc dot gnu dot org  2010-04-23 07:23 ---
Updated patch

http://gcc.gnu.org/ml/gcc-patches/2010-04/msg01386.html


-- 


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



[Bug middle-end/43864] New: Same basic blocks should be merged

2010-04-23 Thread carrot at google dot com
Following is a simple example:

#include stdio.h
void foo (char*, FILE*);
char* hprofStartupp(char *outputFileName, char *ctx)
{
char fileName[1000];
FILE *fp;
sprintf(fileName, outputFileName);
if (access(fileName, 1) == 0) {
free(ctx);   //A
return 0;//A
}

fp = fopen(fileName, 0);
if (fp == 0) {
free(ctx);   //B
return 0;//B
}

foo(outputFileName, fp);

return ctx;
}

Basic block A and basic block B are exact same. They do some cleanup work and
exit the function. This pattern is quite common in large software. GCC failed
to merge them in this test case. With options -march=armv7-a -mthumb -Os, gcc
generates:

...
bl  access
mov r7, r0
cbnzr0, .L2
mov r0, r4//C
mov r4, r7//C
bl  free  //C
b   .L3   //C
.L2:
mov r0, sp
movsr1, #0
bl  fopen
mov r5, r0
cbnzr0, .L4
mov r0, r4//D
mov r4, r5//D
bl  free  //D
b   .L3   //D
.L4:
...

Here basic block C corresponds to basic block A, and basic block D corresponds
basic block B. They can be merged as following:

...
bl  access
mov r5, r0
cbz r0, .L9
.L2:
mov r0, sp
movsr1, #0
bl  fopen
mov r5, r0
cbnzr0, .L4
.L9:
mov r0, r4
mov r4, r5   
bl  free 
b   .L3  
.L4:
...

The rtl cfg optimization can do some merge optimization. But it often fails due
to difference of register numbers. We may need to do this at tree level.


-- 
   Summary: Same basic blocks should be merged
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: carrot at google dot com
 GCC build triplet: i686-linux
  GCC host triplet: i686-linux
GCC target triplet: arm-eabi


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



[Bug middle-end/43864] Same basic blocks should be merged

2010-04-23 Thread carrot at google dot com


--- Comment #1 from carrot at google dot com  2010-04-23 07:28 ---
Created an attachment (id=20469)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20469action=view)
test case


-- 


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



[Bug middle-end/43864] Same basic blocks should be merged

2010-04-23 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-04-23 07:38 ---


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


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


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



[Bug rtl-optimization/20070] If-conversion can't match equivalent code, and cross-jumping only works for literal matches

2010-04-23 Thread steven at gcc dot gnu dot org


--- Comment #33 from steven at gcc dot gnu dot org  2010-04-23 07:38 ---
*** Bug 43864 has been marked as a duplicate of this bug. ***


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||carrot at google dot com


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



[Bug fortran/43841] Missing temporary for ELEMENTAL function call

2010-04-23 Thread pault at gcc dot gnu dot org


--- Comment #7 from pault at gcc dot gnu dot org  2010-04-23 08:12 ---
I posted a fix this morning.

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pault at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED
   Keywords||wrong-code
   Last reconfirmed|2010-04-22 08:28:12 |2010-04-23 08:12:46
   date||


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



[Bug libstdc++/43863] C++ without exceptions is deficient

2010-04-23 Thread redi at gcc dot gnu dot org


--- Comment #2 from redi at gcc dot gnu dot org  2010-04-23 09:09 ---
In Bug 43852 I thought you meant building with -fno-exceptions fails, but it
works for me ... do you just mean the resulting library is not as small as it
could be?


-- 


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



[Bug c++/43865] New: C++ in freestanding environment

2010-04-23 Thread sebastian dot huber at embedded-brains dot de
You can disable the requirement of a hosted environment for C++ and use the
freestanding environment via a configure option:

--disable-hosted-libstdcxx

This leads to build errors.  The configure command line was:

$source_dir/configure \
--prefix=/opt/rtems-4.10 \
--target=arm-rtems4.10 \
--verbose \
--enable-serial-configure \
--with-gnu-as \
--with-gnu-ld \
--with-newlib \
--disable-libstdcxx-pch \
--disable-nls \
--without-included-gettext \
--disable-win32-registry \
--enable-version-specific-runtime-libs \
--enable-threads \
--enable-newlib-io-c99-formats \
--enable-languages=c,c++ \
--disable-hosted-libstdcxx

The first observation is that the build looked successful (no errors from
make), but a

$ find -name libstdc++.a

reveals that no such library exists in the build tree.  Now lets try this

$ cd arm-rtems4.10/libstdc++-v3/src
$ make

and we have a compile error.  Output from

$ make -i

follows.


-- 
   Summary: C++ in freestanding environment
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sebastian dot huber at embedded-brains dot de


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



[Bug middle-end/43866] New: wrong code with -O3 -fbounds-check

2010-04-23 Thread jv244 at cam dot ac dot uk
compiling the testcase below with

gfortran -O3 -fbounds-check 

yields under 'valgrind --tool=memcheck ./a.out'

 ==23130==
==23130== Conditional jump or move depends on uninitialised value(s)
==23130==at 0x4008BD: __m1_MOD_cp_fm_upper_to_full (in
/data03/vondele/bugs/ttt/a.out)
==23130==by 0x400FD7: MAIN__ (in /data03/vondele/bugs/ttt/a.out)
==23130==by 0x401059: main (fmain.c:21)
==23130==
==23130== ERROR SUMMARY: 16 errors from 1 contexts (suppressed: 3 from 1)

the valgrind error is absent if '-O2 -fbounds-check' is being employed.

This happens with trunk as well as older versions.

Testcase:

MODULE M1
  INTEGER, PARAMETER :: sp=4, dp=8
  TYPE cp_fm_type
 REAL(KIND=sp), DIMENSION(:,:), POINTER :: local_data_sp
 REAL(KIND=dp), DIMENSION(:,:), POINTER :: local_data
 INTEGER :: nrow_global,ncol_global
 LOGICAL :: use_sp
  END TYPE
CONTAINS
  SUBROUTINE cp_fm_upper_to_full(matrix,work)
TYPE(cp_fm_type), POINTER  :: matrix,work
INTEGER :: irow_global, ncol_global, nrow_global
REAL(KIND = dp), DIMENSION(:,:), POINTER :: a
REAL(KIND = sp), DIMENSION(:,:), POINTER :: a_sp

nrow_global=matrix%nrow_global
ncol_global=matrix%ncol_global
a = matrix%local_data
a_sp = matrix%local_data_sp

DO irow_global=1,nrow_global
   DO icol_global=irow_global+1,ncol_global
  IF(matrix%use_sp) THEN
 a_sp(icol_global,irow_global)=a_sp(irow_global,icol_global)
  ELSE
 a(icol_global,irow_global)=a(irow_global,icol_global)
  ENDIF
   ENDDO
ENDDO
  END SUBROUTINE cp_fm_upper_to_full
END MODULE M1

  USE M1
  TYPE(cp_fm_type), POINTER :: a,b
  INTEGER :: N
  N=17
  ALLOCATE(a,b)
  ALLOCATE(a%local_data(N,N),b%local_data(N,N))
  a%nrow_global=N
  a%ncol_global=N
  b%nrow_global=N
  b%ncol_global=N
  a%use_sp=.FALSE.
  b%use_sp=.FALSE.
  a%local_data=0
  CALL cp_fm_upper_to_full(a,b)
END


-- 
   Summary: wrong code with -O3 -fbounds-check
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Keywords: wrong-code
  Severity: normal
  Priority: P3
 Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug c++/43865] C++ in freestanding environment

2010-04-23 Thread sebastian dot huber at embedded-brains dot de


--- Comment #1 from sebastian dot huber at embedded-brains dot de  
2010-04-23 09:14 ---
Created an attachment (id=20470)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20470action=view)
Compile errors from above $ make -i.


-- 


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



[Bug libstdc++/43852] Embedded systems friendly libstdc++

2010-04-23 Thread sebastian dot huber at embedded-brains dot de


--- Comment #4 from sebastian dot huber at embedded-brains dot de  
2010-04-23 09:16 ---
Bug report for 1. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43863.

Bug report for 2. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43865


-- 


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



[Bug libstdc++/43852] Embedded systems friendly libstdc++

2010-04-23 Thread sebastian dot huber at embedded-brains dot de


--- Comment #5 from sebastian dot huber at embedded-brains dot de  
2010-04-23 09:20 ---
Created an attachment (id=20471)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20471action=view)
Lets call it quiet.

Configure option may be --enable-quiet-cxx.


-- 


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



[Bug middle-end/43866] wrong code with -fbounds-check -funswitch-loops

2010-04-23 Thread jv244 at cam dot ac dot uk


--- Comment #1 from jv244 at cam dot ac dot uk  2010-04-23 09:21 ---
The error also appears with:

gfortran  -fbounds-check -O1  -funswitch-loops test.f90


-- 

jv244 at cam dot ac dot uk changed:

   What|Removed |Added

Summary|wrong code with -O3 -   |wrong code with -fbounds-
   |fbounds-check   |check -funswitch-loops


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



[Bug middle-end/43866] wrong code with -fbounds-check -funswitch-loops

2010-04-23 Thread jv244 at cam dot ac dot uk


--- Comment #2 from jv244 at cam dot ac dot uk  2010-04-23 09:25 ---
reduced testcase:

  IMPLICIT NONE
  INTEGER, PARAMETER :: sp=4, dp=8
  TYPE cp_fm_type
 REAL(KIND=sp), DIMENSION(:,:), POINTER :: local_data_sp
 REAL(KIND=dp), DIMENSION(:,:), POINTER :: local_data
 INTEGER :: nrow_global,ncol_global
 LOGICAL :: use_sp
  END TYPE
  TYPE(cp_fm_type), POINTER :: amat
  INTEGER :: N
  INTEGER :: irow_global, ncol_global, nrow_global, icol_global
  REAL(KIND = dp), DIMENSION(:,:), POINTER :: a
  REAL(KIND = sp), DIMENSION(:,:), POINTER :: a_sp
  N=17
  ALLOCATE(amat)
  ALLOCATE(amat%local_data(N,N))
  amat%nrow_global=N
  amat%ncol_global=N
  amat%use_sp=.FALSE.
  amat%local_data=0

nrow_global=amat%nrow_global
ncol_global=amat%ncol_global
a = amat%local_data
a_sp = amat%local_data_sp

DO irow_global=1,nrow_global
   DO icol_global=irow_global+1,ncol_global
  IF(amat%use_sp) THEN
 a_sp(icol_global,irow_global)=a_sp(irow_global,icol_global)
  ELSE
 a(icol_global,irow_global)=a(irow_global,icol_global)
  ENDIF
   ENDDO
ENDDO


END


-- 


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



[Bug libstdc++/43863] C++ without exceptions is deficient

2010-04-23 Thread sebastian dot huber at embedded-brains dot de


--- Comment #3 from sebastian dot huber at embedded-brains dot de  
2010-04-23 09:28 ---
(In reply to comment #2)
 In Bug 43852 I thought you meant building with -fno-exceptions fails, but it
 works for me ... do you just mean the resulting library is not as small as it
 could be?
 

Sorry for the misunderstanding.  The build works fine, but the library is not
as small as it could be.  This is due to the inclusion of the unused
__gnu_cxx::recursive_init_error class.  For small target systems this is
dramatic.


-- 


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



[Bug libstdc++/43865] C++ in freestanding environment

2010-04-23 Thread redi at gcc dot gnu dot org


-- 

redi at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
  Component|c++ |libstdc++
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-04-23 09:34:19
   date||


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



[Bug libstdc++/43863] Unused recursive_init_error class defined with -fno-exceptions

2010-04-23 Thread redi at gcc dot gnu dot org


--- Comment #4 from redi at gcc dot gnu dot org  2010-04-23 09:36 ---
confirmed as an enhancement request


-- 

redi at gcc dot gnu dot org changed:

   What|Removed |Added

   Severity|normal  |enhancement
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-04-23 09:36:22
   date||
Summary|C++ without exceptions is   |Unused recursive_init_error
   |deficient   |class defined with -fno-
   ||exceptions


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



[Bug libstdc++/43852] Embedded systems friendly libstdc++

2010-04-23 Thread redi at gcc dot gnu dot org


--- Comment #6 from redi at gcc dot gnu dot org  2010-04-23 09:37 ---
thanks for filing the other two bugs

confirmed as an enhancement


-- 

redi at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-04-23 09:37:15
   date||


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



[Bug libstdc++/43863] Unused recursive_init_error class defined with -fno-exceptions

2010-04-23 Thread redi at gcc dot gnu dot org


--- Comment #5 from redi at gcc dot gnu dot org  2010-04-23 10:02 ---
Simply removing this class now would break the ABI, which is not acceptable.
If Bug 43852 was resolved by adding a quiet mode, would that make this
enhancement unnecessary?  That mode would also change the ABI, but would have
to be explicitly requested by users, and would be documented as changing the
ABI.

Am I right in thinking that putting recursive_init_error in a separate file
would only help when using static linking?


-- 


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



[Bug rtl-optimization/43804] [4.5/4.6 regression] ICE in reload_cse_simplify_operands

2010-04-23 Thread mkuvyrkov at gcc dot gnu dot org


--- Comment #10 from mkuvyrkov at gcc dot gnu dot org  2010-04-23 10:20 
---
The problem seems to be in Richard's patch
(http://article.gmane.org/gmane.comp.gcc.patches/130602) checked in r120961.

All and all, it seems that revision 120961 should be reverted to enable 'T'
constraint for (flag_pic  !TARGET_PCREL).

The 's' constraint is defined as
==
  case 's':
if (CONST_INT_P (op)
|| (GET_CODE (op) == CONST_DOUBLE
 GET_MODE (op) == VOIDmode))
  break;
  case 'i':
if (CONSTANT_P (op))
  win = 1;
break;
==

So, unless I'm missing something, the statement
... 's' doesn't accept anything if flag_pic
is just wrong.

FYI, the story behind 'T' constraint is described in comment in r27576:

+   In parallel with these new predicates, two new constraint letters
+   were defined: 'S' and 'T'.  'S' is the -mpcrel analog of 'm'.
+   'T' replaces 's' in the non-pcrel case.  It is a no-op in the pcrel case.
+   In the pcrel case 's' is only valid in combination with 'a' registers.
+   See addsi3, subsi3, cmpsi, and movsi patterns for a better understanding
+   of how these constraints are used.
+
...
+   All of the ugliness with predicates and constraints is due to the
+   simple fact that the m68k does not allow a pc-relative addressing
+   mode as a destination.  gcc does not distinguish between source and
+   destination addresses.  Hence, if we claim that pc-relative address
+   modes are valid, e.g. GO_IF_LEGITIMATE_ADDRESS accepts them, then we
+   end up with invalid code.  To get around this problem, we left
+   pc-relative modes as invalid addresses, and then added special
+   predicates and constraints to accept them.


-- 

mkuvyrkov at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rdsandiford at googlemail
   ||dot com


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



[Bug libstdc++/43865] C++ in freestanding environment

2010-04-23 Thread redi at gcc dot gnu dot org


--- Comment #2 from redi at gcc dot gnu dot org  2010-04-23 10:27 ---
building 4.6.0 with --disable-hosted-libstdcxx I get

In file included from
../../../../gcc-4.x/libstdc++-v3/libsupc++/eh_call.cc:27:0:
/home/redi/src/gcc/buildfree/x86_64-unknown-linux-gnu/libstdc++-v3/include/cstdlib:60:40:
error: expected initializer before ‘_GLIBC_NORETURN’
/home/redi/src/gcc/buildfree/x86_64-unknown-linux-gnu/libstdc++-v3/include/cstdlib:62:38:
error: expected initializer before ‘_GLIBC_NORETURN’
In file included from
../../../../gcc-4.x/libstdc++-v3/libsupc++/eh_call.cc:33:0:
/home/redi/src/gcc/gcc-4.x/libstdc++-v3/../gcc/unwind-pe.h: In function
‘unsigned int size_of_encoded_value(unsigned char)’:
/home/redi/src/gcc/gcc-4.x/libstdc++-v3/../gcc/unwind-pe.h:88:3: error: ‘abort’
is not a member of ‘std’
/home/redi/src/gcc/gcc-4.x/libstdc++-v3/../gcc/unwind-pe.h: In function
‘_Unwind_Ptr base_of_encoded_value(unsigned char, _Unwind_Context*)’:
/home/redi/src/gcc/gcc-4.x/libstdc++-v3/../gcc/unwind-pe.h:120:3: error:
‘abort’ is not a member of ‘std’
/home/redi/src/gcc/gcc-4.x/libstdc++-v3/../gcc/unwind-pe.h: In function ‘const
unsigned char* read_encoded_value_with_base(unsigned char, _Unwind_Ptr, const
unsigned char*, _Unwind_Ptr*)’:
/home/redi/src/gcc/gcc-4.x/libstdc++-v3/../gcc/unwind-pe.h:257:4: error:
‘abort’ is not a member of ‘std’
make[4]: *** [eh_call.lo] Error 1


-- 


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



[Bug middle-end/43866] wrong code with -fbounds-check -funswitch-loops

2010-04-23 Thread jv244 at cam dot ac dot uk


--- Comment #3 from jv244 at cam dot ac dot uk  2010-04-23 10:30 ---
It looks like in the .optimized dump these:

  a_sp$offset = amat-local_data_sp.offset;
  a_sp$dim$1$stride = amat-local_data_sp.dim[1].stride;
  a_sp$dim$1$ubound = amat-local_data_sp.dim[1].ubound;
  a_sp$dim$1$lbound = amat-local_data_sp.dim[1].lbound;

are indeed accessing fields of local_data_sp even though it never got
allocated. 


-- 


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



[Bug libstdc++/43863] Unused recursive_init_error class defined with -fno-exceptions

2010-04-23 Thread sebastian dot huber at embedded-brains dot de


--- Comment #6 from sebastian dot huber at embedded-brains dot de  
2010-04-23 10:59 ---
(In reply to comment #5)
 Simply removing this class now would break the ABI, which is not acceptable.
 If Bug 43852 was resolved by adding a quiet mode, would that make this
 enhancement unnecessary?  That mode would also change the ABI, but would have
 to be explicitly requested by users, and would be documented as changing the
 ABI.
 
 Am I right in thinking that putting recursive_init_error in a separate file
 would only help when using static linking?
 

Yes, it helps only if you use static linking.

From my point of view moving this class implementation into a separate
compilation unit would help in case size really matters.  In these situations
you likely use static linking, because otherwise you need a runtime
infrastructure for dynamic linking which is also not that trivial.

If you suppose that users who care about size always choose the quiet mode
then this change is virtually unnecessary, but not optimal.


-- 


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



[Bug middle-end/43866] wrong code with -fbounds-check -funswitch-loops

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2010-04-23 12:29 ---
Hm, I can't reproduce this.


-- 


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



[Bug bootstrap/43858] [4.6 Regression] Bootstrap failure for powerpc-apple-darwin9: cannot compute suffix of object files

2010-04-23 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.6.0


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



[Bug lto/43857] -fresolution causes an ICE

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2010-04-23 12:35 ---
-fresolution is an internal option.


-- 


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



[Bug middle-end/43853] [4.6 Regression] FAIL: gcc.dg/lto/20090126-1 c_lto_20090126-1_0.o-c_lto_20090126-1_0.o

2010-04-23 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||hubicka at gcc dot gnu dot
   ||org
   Target Milestone|--- |4.6.0


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



[Bug inline-asm/43518] ARM register constraint for ldrd and strd instructions

2010-04-23 Thread rearnsha at gcc dot gnu dot org


--- Comment #3 from rearnsha at gcc dot gnu dot org  2010-04-23 12:44 
---
EABI configurations will guarantee that 64-bit sized objects will be in
even/odd register pairs.  It's best not to use LDRD on the old ABI because in
general the ABI can't guarantee the alignment requirements for memory either.

Plus, the old ABI is heading for obsolescence.  So not planning to fix.


-- 

rearnsha at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||WONTFIX


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



[Bug lto/42653] ICE with -g and -flto (requires both flags to crash)

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2010-04-23 12:55 ---
I have a patch.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2010-01-08 11:54:31 |2010-04-23 12:55:13
   date||


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



[Bug lto/43377] lto decreases C++ stacktrace readability (debuginfo pubnames).

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2010-04-23 13:23 ---
(In reply to comment #2)
 Because we drop DECL_CONTEXT.

Rather because lang_hooks.dwarf_name returns what
lang_hooks.decl_printable_name
returns which in turn returns DECL_NAME.

We can either save what the langhook produces in DECL_NAME during fld or
for example use the assembler name (which is mangled).  Of course the
langhook has a variant to request a name with or without the scope ...


-- 


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



[Bug middle-end/43866] wrong code with -fbounds-check -funswitch-loops

2010-04-23 Thread jv244 at cam dot ac dot uk


--- Comment #5 from jv244 at cam dot ac dot uk  2010-04-23 13:32 ---
(In reply to comment #4)
 Hm, I can't reproduce this.

I see, the reduced testcase (comment #2) indeed doesn't fail with trunk
anymore, but the original does (but only at -O3 -fbounds-check). 


-- 


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



[Bug lto/43455] ICE in fold_convert_loc, at fold-const.c:2670 with -O2 -flto

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2010-04-23 13:39 ---
I am testing a patch to tree_can_inline_p instead.  That doesn't work with
WPA as we do not have the call_stmt available there - Honza, any idea where
to re-apply the check?


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||hubicka at gcc dot gnu dot
   ||org


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



[Bug tree-optimization/43845] [4.4 Regression] Segfault when using __attribute__((const)), versions 4.4.3 and 4.6

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2010-04-23 14:07 ---
Subject: Bug 43845

Author: rguenth
Date: Fri Apr 23 14:07:38 2010
New Revision: 158665

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158665
Log:
2010-04-23  Richard Guenther  rguent...@suse.de

Backport from mainline
2010-04-22  Richard Guenther  rguent...@suse.de

PR tree-optimization/43845
* tree-ssa-pre.c (create_component_ref_by_pieces_1): Properly
lookup the CALL_EXPR function and arguments.

* gcc.c-torture/compile/pr43845.c: New testcase.

Added:
branches/gcc-4_5-branch/gcc/testsuite/gcc.c-torture/compile/pr43845.c
Modified:
branches/gcc-4_5-branch/gcc/ChangeLog
branches/gcc-4_5-branch/gcc/testsuite/ChangeLog
branches/gcc-4_5-branch/gcc/tree-ssa-pre.c


-- 


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



[Bug libgomp/43706] scheduling two threads on one core leads to starvation

2010-04-23 Thread singler at kit dot edu


--- Comment #13 from singler at kit dot edu  2010-04-23 14:17 ---
The default spin count is not 2,000,000 cycles, but even 20,000,000.  As
commented in libgomp/env.c, this is supposed to correspond to 200ms.  The
timings we see here are even larger, but the number of cycles is just a rough
estimation.

Throttling the spincount in the awareness of too many threads is a good idea,
but it is just a heuristic.  If there are other processes, the cores might be
loaded anyway, and libgomp has little chances to figure that out.  This gets
even more difficult when having multiple programs using libgomp at the same
time.  So I would like the non-throttling value to be chosen more conservative,
better balancing worst case behavior in difficult situations and best case
behavior on an unloaded machine.

There are algorithms in libstdc++ parallel mode that show speedups for as
little as less than 1ms of sequential running time (when taking threads from
the pool), so users will accept a parallelization overhead for such small
computing times.  However, if they are then hit by a 200ms penalty, this
results in catastrophic slowdowns.  Calling such short-lived parallel regions
several times will make this very noticeable, although it need not be.  So
IMHO, by default, the spinning should take about as long as rescheduling a
thread takes (that was already migrated on another core), by that making things
at most twice as bad as in the best case.
From my experience, this is a matter of a few milliseconds, so I propose to
lower the default spincount to something like 10,000, at most 100,000.  I think
that spinning for even longer than a usual time slice like now is questionable
anyway.

Are nested threads taken into account when deciding on whether to throttle or
not?


-- 

singler at kit dot edu changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|FIXED   |


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



[Bug lto/42653] ICE with -g and -flto (requires both flags to crash)

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2010-04-23 14:21 ---
Subject: Bug 42653

Author: rguenth
Date: Fri Apr 23 14:20:59 2010
New Revision: 158666

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158666
Log:
2010-04-23  Richard Guenther  rguent...@suse.de

PR lto/42653
* tree.c (free_lang_data_in_decl): Do not reset DECL_CONTEXT
of FUNCTION_DECLs.

* g++.dg/lto/20100423-1_0.C: New testcase.

Added:
trunk/gcc/testsuite/g++.dg/lto/20100423-1_0.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree.c


-- 


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



[Bug bootstrap/39023] lto-plugin.c uses mkdtemp unconditionally

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2010-04-23 14:33 ---
This was fixed by

2009-11-05  Rafael Avila de Espindola  espind...@google.com

* lto-plugin.c (temp_obj_dir_name): Remove.
(arguments_file_name): New.
(free_2): Free arguments_file_name instead of temp_obj_dir_name.
(exec_lto_wrapper):  Create arguments file with make_temp_file.
(cleanup_handler): Don't remove the temporary directory. Remove the
arguments file.
(onload): Don't create the temporary directory.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|REOPENED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.5.0


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



[Bug lto/40702] lto-elf.c fails to compile on Solaris

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2010-04-23 14:34 ---
What's the status of this bug?


-- 


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



[Bug middle-end/43835] [4.5 Regression] IPA-SRA doesn't rewrite attributes

2010-04-23 Thread jamborm at gcc dot gnu dot org


--- Comment #5 from jamborm at gcc dot gnu dot org  2010-04-23 14:43 ---
Subject: Bug 43835

Author: jamborm
Date: Fri Apr 23 14:43:10 2010
New Revision: 158667

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158667
Log:
2010-04-23  Martin Jambor  mjam...@suse.cz

PR middle-end/43835
* tree-sra.c (ipa_sra_preliminary_function_checks): Check that the
function does not have type attributes.

* testsuite/gcc.c-torture/execute/pr43835.c: New test.


Added:
trunk/gcc/testsuite/gcc.c-torture/execute/pr43835.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-sra.c


-- 


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



[Bug c++/43818] internal compiler error: Segmentation fault

2010-04-23 Thread oberlaender at fzi dot de


--- Comment #18 from oberlaender at fzi dot de  2010-04-23 14:52 ---
(In reply to comment #17)
 (In reply to comment #16)
  This has been fixed on the 4.4 branch, I can reproduce it with 4.4.3.
 
 OK, thanks for the information.  I'm currently compiling gcc from the 4.4
 branch in svn to verify.

Just tested against the current SVN gcc-4_4-branch, which works fine.

Thanks for your help!


-- 

oberlaender at fzi dot de changed:

   What|Removed |Added

 Status|RESOLVED|VERIFIED


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



[Bug tree-optimization/43846] [4.5 Regression] array vs members, total scalarization issues

2010-04-23 Thread jamborm at gcc dot gnu dot org


--- Comment #5 from jamborm at gcc dot gnu dot org  2010-04-23 14:52 ---
Subject: Bug 43846

Author: jamborm
Date: Fri Apr 23 14:52:06 2010
New Revision: 158668

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158668
Log:
2010-04-23  Martin Jambor  mjam...@suse.cz

PR tree-optimization/43846
* tree-sra.c (struct access): New flag grp_assignment_read.
(build_accesses_from_assign): Set grp_assignment_read.
(sort_and_splice_var_accesses): Propagate grp_assignment_read.
(enum mark_read_status): New type.
(analyze_access_subtree): Propagate grp_assignment_read, create
accesses also if both direct_read and root-grp_assignment_read.

* testsuite/gcc.dg/tree-ssa/sra-10.c: New test.


Added:
trunk/gcc/testsuite/gcc.dg/tree-ssa/sra-10.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-sra.c


-- 


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



[Bug lto/41550] Fix security and portability issues in lto-plugin

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2010-04-23 15:05 ---
I have patches.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|espindola at google dot com |rguenth at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-04-23 15:05:28
   date||


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



[Bug lto/43455] ICE in fold_convert_loc, at fold-const.c:2670 with -O2 -flto

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2010-04-23 15:18 ---
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
  Known to fail||4.5.0
 Resolution||FIXED
   Target Milestone|--- |4.6.0


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



[Bug lto/43455] ICE in fold_convert_loc, at fold-const.c:2670 with -O2 -flto

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2010-04-23 15:18 ---
Subject: Bug 43455

Author: rguenth
Date: Fri Apr 23 15:18:24 2010
New Revision: 158669

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158669
Log:
2010-04-23  Richard Guenther  rguent...@suse.de

PR lto/43455
* tree-inline.c (tree_can_inline_p): Also check compatibility
of return types.

* gcc.dg/lto/20100423-1_0.c: New testcase.
* gcc.dg/lto/20100423-1_1.c: Likewise.

Added:
trunk/gcc/testsuite/gcc.dg/lto/20100423-1_0.c
trunk/gcc/testsuite/gcc.dg/lto/20100423-1_1.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-inline.c


-- 


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



[Bug lto/41588] LTO bugs to be addressed before release

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2010-04-23 15:26 ---
WONTFIX - we didn't fix this meta-bug before the release.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||WONTFIX
Summary|[4.5 Regression] LTO bugs to|LTO bugs to be addressed
   |be addressed before release |before release


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



[Bug middle-end/41734] ICE in cgraph_mark_functions_to_output, at cgraphunit.c:1137 with -fwhopr

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2010-04-23 15:32 ---
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
  Known to fail||4.5.0
 Resolution||FIXED
   Target Milestone|--- |4.6.0


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



[Bug middle-end/41734] ICE in cgraph_mark_functions_to_output, at cgraphunit.c:1137 with -fwhopr

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #7 from rguenth at gcc dot gnu dot org  2010-04-23 15:32 ---
Subject: Bug 41734

Author: rguenth
Date: Fri Apr 23 15:32:22 2010
New Revision: 158670

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158670
Log:
2010-04-23  Richard Guenther  rguent...@suse.de

PR lto/41734
* gcc.dg/lto/20100423-2_0.c: New testcase.
* gcc.dg/lto/20100423-2_0.c: Likewise.

Added:
trunk/gcc/testsuite/gcc.dg/lto/20100423-2_0.c
trunk/gcc/testsuite/gcc.dg/lto/20100423-2_1.c
Modified:
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug tree-optimization/41835] ICE with -flto -O3 (BB N can not throw but has an EH edge)

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2010-04-23 15:38 ---
Seems to work for me, even with the 4.5.0 release.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.5.0


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



[Bug lto/41902] Compile error in gcc/lto/lto-elf.c (SHN_XINDEX undeclared)

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2010-04-23 15:39 ---
Not a gcc bug.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||INVALID


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



[Bug middle-end/41925] ICE in get_alias_set, at alias.c:710

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2010-04-23 15:44 ---
The testcase no longer fails :/


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/43572] [4.5 Regression] FAIL: gfortran.dg/PR19872.f execution test; formatted read - wrong numbers

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #31 from rguenth at gcc dot gnu dot org  2010-04-23 15:46 
---
Subject: Bug 43572

Author: rguenth
Date: Fri Apr 23 15:46:23 2010
New Revision: 158671

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158671
Log:
2010-04-23  Richard Guenther  rguent...@suse.de

PR tree-optimization/43572
* tree-tailcall.c (find_tail_calls): Allow PARM_DECL uses.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/tree-tailcall.c


-- 


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



[Bug tree-optimization/43572] [4.5 Regression] FAIL: gfortran.dg/PR19872.f execution test; formatted read - wrong numbers

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #32 from rguenth at gcc dot gnu dot org  2010-04-23 15:48 
---
Subject: Bug 43572

Author: rguenth
Date: Fri Apr 23 15:47:44 2010
New Revision: 158672

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158672
Log:
2010-04-23  Richard Guenther  rguent...@suse.de

PR tree-optimization/43572
* tree-tailcall.c (find_tail_calls): Allow PARM_DECL uses.

Modified:
branches/gcc-4_5-branch/gcc/ChangeLog
branches/gcc-4_5-branch/gcc/tree-tailcall.c


-- 


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



[Bug lto/41550] Fix security and portability issues in lto-plugin

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2010-04-23 15:49 ---
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

  Known to fail||4.5.0
   Target Milestone|--- |4.6.0


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



[Bug lto/41550] Fix security and portability issues in lto-plugin

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2010-04-23 15:49 ---
Subject: Bug 41550

Author: rguenth
Date: Fri Apr 23 15:49:10 2010
New Revision: 158673

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158673
Log:
2010-04-23  Richard Guenther  rguent...@suse.de

PR lto/41550
* lto-plugin.c (parse_table_entry): Use xstrdup and xrealloc.
(translate): Likewise.
(all_symbols_read_handler): Likewise.
(claim_file_handler): Likewise.
(process_option): Likewise.
(add_output_files): Likewise.  Remove filename length limit.

Modified:
trunk/lto-plugin/ChangeLog
trunk/lto-plugin/lto-plugin.c


-- 


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



[Bug lto/41550] Fix security and portability issues in lto-plugin

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2010-04-23 15:49 ---
,


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/42341] ICE in insert_value_copy_on_edge, at tree-outof-ssa.c:228

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2010-04-23 15:51 ---


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


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||DUPLICATE


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



[Bug lto/41159] [LTO] ICE in insert_value_copy_on_edge, at tree-outof-ssa.c:225

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #7 from rguenth at gcc dot gnu dot org  2010-04-23 15:51 ---
*** Bug 42341 has been marked as a duplicate of this bug. ***


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||ubizjak at gmail dot com


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



[Bug regression/43867] New: ICE on valid with PGO and -fwhole-program options on small example (istringstream) with gcc 4.5.0 only

2010-04-23 Thread martin dot audet at imi dot cnrc-nrc dot gc dot ca
The following little program:


#include sstream

int main(int argc, char *argv[])
{
   int nn;

   return (argc != 2)  ||  !(std::istringstream(argv[1])  nn);
}

when compiled with gcc 4.5.0 with both -fwhole-program and -fprofile-use
options generate an ICE. Note that this doesn't happen with gcc 4.4.3 or if I
don't use -fwhole-program option. There is no problem when compiling and
running the above little program with gcc 4.5.0 with -fwhole-program and
-fprogram-generate options. The ICE happens when trying to use the feedback
information.

For example, the command (the small program is in a file named mv.cpp):

rm -f mv.gcda  g++ -Wall -fwhole-program -fprofile-generate mv.cpp  
./a.out 1000  g++ -Wall -fwhole-program -fprofile-use mv.cpp

Produce the following output during the second compilation (profile-use):

mv.cpp:8:1: internal compiler error: in ipcp_iterate_stage, at ipa-cp.c:760
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.


Now here are some information about my gcc and my system:
[au...@mc1 experiences]$ gcc --version
gcc (GCC) 4.5.0
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Note my gcc version is identical to the official except it include the
following patch (r158484) to fix the problem 43771 I submited last week:


--- trunk/gcc/tree-vect-slp.c   2010/04/18 10:52:26 158483
+++ trunk/gcc/tree-vect-slp.c   2010/04/18 12:20:34 158484
@@ -844,7 +844,11 @@

   SET_BIT (load_index, prev);
 }
-
+
+  for (j = 0; j  group_size; j++)
+if (!TEST_BIT (load_index, j))
+  return false;
+
   sbitmap_free (load_index);

   if (supported  i == group_size * group_size




[au...@mc1 experiences]$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/home/publique/gcc45/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-4.5.0/configure --prefix=/usr/local/gcc45
--enable-shared --enable-threads=posix --with-system-zlib
--with-gmp=/usr/local/gmp-4.3.2 --with-mpfr=/usr/local/mpfr-2.4.2
--with-mpc=/usr/local/mpc-0.8.1 --with-ppl=/usr/local/ppl-0.10.2
--with-cloog=/usr/local/cloog-ppl-0.15.9 --with-libelf=/usr/local/libelf-0.8.12
--enable-__cxa_atexit --enable-languages=c,c++,fortran
Thread model: posix
gcc version 4.5.0 (GCC)
[au...@mc1 experiences]$ uname -a
Linux mc1 2.6.22.9-91.fc7 #1 SMP Thu Jun 18 16:01:22 EDT 2009 x86_64 x86_64
x86_64 GNU/Linux
[au...@mc1 experiences]$

As you can see my system uses Fedora Linux 7 distribution. gcc was compiled and
tested (make -k check) on this machine. Only a small fraction of
the tests failled.

Regards,

Martin Audet


-- 
   Summary: ICE on valid with PGO and -fwhole-program options on
small example (istringstream) with gcc 4.5.0 only
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: regression
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: martin dot audet at imi dot cnrc-nrc dot gc dot ca


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



[Bug debug/42425] ICE declaring local class

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2010-04-23 15:58 ---
Testing a patch.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2009-12-19 12:15:48 |2010-04-23 15:58:28
   date||


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



[Bug regression/43867] ICE on valid with PGO and -fwhole-program options on small example (istringstream) with gcc 4.5.0 only

2010-04-23 Thread martin dot audet at imi dot cnrc-nrc dot gc dot ca


--- Comment #1 from martin dot audet at imi dot cnrc-nrc dot gc dot ca  
2010-04-23 15:58 ---
Oups !

In the bug description when I said option -fprogram-generate, I meant
-fprofile-generate.


-- 


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



[Bug c++/15218] [DR 421] rvalue.field is not an lvalue

2010-04-23 Thread wb at fnal dot gov


--- Comment #4 from wb at fnal dot gov  2010-04-23 16:00 ---
Created an attachment (id=20472)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20472action=view)
test case; incorrectly compiles


-- 


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



[Bug lto/42441] lto segfaults

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2010-04-23 16:01 ---
No response from reporter.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||INVALID


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



[Bug lto/42451] 'warning: type of array does not match original declaration' with -flto/-fwhopr

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #7 from rguenth at gcc dot gnu dot org  2010-04-23 16:03 ---
Confirmed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-04-23 16:03:35
   date||


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



[Bug fortran/43829] Scalarization of reductions

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #7 from rguenth at gcc dot gnu dot org  2010-04-23 16:09 ---
Mine.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2010-04-21 12:51:53 |2010-04-23 16:09:17
   date||


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



[Bug lto/42776] LTO doesn't work on non-ELF platforms.

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #42 from rguenth at gcc dot gnu dot org  2010-04-23 16:10 
---
Fixed?


-- 


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



[Bug lto/42826] lto1: ICE in ipcp_iterate_stage, at ipa-cp.c:759

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2010-04-23 16:10 ---
No response from reporter.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||INVALID


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



[Bug other/42903] Compare-debug fails on files compiled with -flto

2010-04-23 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Severity|normal  |enhancement


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



[Bug lto/42928] crash when compiling scummvm on Ubuntu 9.10/amd64 with -flto and -fuse-linker-plugin

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2010-04-23 16:12 ---
We need a testcase.  There also were dups like this which were fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


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



[Bug lto/42776] LTO doesn't work on non-ELF platforms.

2010-04-23 Thread davek at gcc dot gnu dot org


--- Comment #43 from davek at gcc dot gnu dot org  2010-04-23 16:13 ---
(In reply to comment #42)
 Fixed?
 

Still awaiting build system maintainer approval as per your request.  Ten days
is just on the lower margin of the range that I let a patch wait before pinging
it; I'll do so shortly.


-- 


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



[Bug lto/43038] DECL_PRESERVE_P static globals not completely preserved with -flto

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2010-04-23 16:14 ---
Honza, you might want to have a look here.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||hubicka at gcc dot gnu dot
   ||org
   Last reconfirmed|2010-02-11 16:42:09 |2010-04-23 16:14:36
   date||


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



[Bug c++/43859] transparent_union mishandled

2010-04-23 Thread bergner at gcc dot gnu dot org


--- Comment #4 from bergner at gcc dot gnu dot org  2010-04-23 16:15 ---
Interesting, using:

  union __attribute__ ((transparent_union)) q
  {
unsigned n;
unsigned get_n () const { return n; }
  };

does seem to cure it.  However, is the attribute location really incorrect?  It
seems the gcc docs on variable attributes have several examples where an
attribute is located at the end of the declaration.  And the attribute syntax
documention has this tidbit:

An attribute specifier list may appear as part of a struct, union or enum
specifier. It may go either immediately after the struct, union or enum
keyword, or after the closing brace. The former syntax is preferred. Where
attribute specifiers follow the closing brace, they are considered to relate to
the structure, union or enumerated type defined, not to any enclosing
declaration the type specifier appears in, and the type defined is not complete
until after the attribute specifiers. 

So it looks to me like it should work where I have it, doesn't it?


-- 


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



[Bug middle-end/43835] [4.5 Regression] IPA-SRA doesn't rewrite attributes

2010-04-23 Thread jamborm at gcc dot gnu dot org


--- Comment #6 from jamborm at gcc dot gnu dot org  2010-04-23 16:16 ---
Subject: Bug 43835

Author: jamborm
Date: Fri Apr 23 16:15:39 2010
New Revision: 158674

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158674
Log:
2010-04-23  Martin Jambor  mjam...@suse.cz

PR middle-end/43835
* tree-sra.c (ipa_sra_preliminary_function_checks): Check that the
function does not have type attributes.

* testsuite/gcc.c-torture/execute/pr43835.c: New test.


Added:
branches/gcc-4_5-branch/gcc/testsuite/gcc.c-torture/execute/pr43835.c
Modified:
branches/gcc-4_5-branch/gcc/ChangeLog
branches/gcc-4_5-branch/gcc/testsuite/ChangeLog
branches/gcc-4_5-branch/gcc/tree-sra.c


-- 


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



[Bug middle-end/43835] [4.5 Regression] IPA-SRA doesn't rewrite attributes

2010-04-23 Thread jamborm at gcc dot gnu dot org


--- Comment #7 from jamborm at gcc dot gnu dot org  2010-04-23 16:19 ---
Fixed.


-- 

jamborm at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug c++/43080] ICE with anonymous union and -flto

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2010-04-23 16:22 ---
I have a fix.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-04-23 16:22:45
   date||


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



[Bug c++/43859] transparent_union mishandled

2010-04-23 Thread bergner at gcc dot gnu dot org


--- Comment #5 from bergner at gcc dot gnu dot org  2010-04-23 16:24 ---
Sorry, I meant type attribute where I mentioned variable attribute.


-- 


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



[Bug lto/43212] [LTO] error: control flow in the middle of basic block

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2010-04-23 16:25 ---
Honza, you might want to have a look here.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||hubicka at gcc dot gnu dot
   ||org
   Last reconfirmed|2010-03-01 10:43:50 |2010-04-23 16:25:03
   date||


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



[Bug c++/43868] New: ICE with -g

2010-04-23 Thread joachim dot reichel at gmx dot de
g++ -c code.i works, g++ -c -g code.i gives

tmp/code.i: In instantiation of 'Foo_implint (Bar::*)()const::Helper':
tmp/code.i:19:27:   instantiated from 'void Foo_implR
(O::*)()const::do_something() [with R = int, O = Bar]'
tmp/code.i:34:1:   instantiated from here
tmp/code.i:13:5: internal compiler error: Segmentation fault

This is a regression against g++ 4.4.x.

Replacing Some_type by int works. An empty body for do_something() works as
well.

g++ -v:

Using built-in specs.
COLLECT_GCC=/some/prefix/gcc-4.5.0/x86_64-unknown-linux-gnu/bin/g++
COLLECT_LTO_WRAPPER=/some/prefix/gcc-4.5.0/x86_64-unknown-linux-gnu/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../configure --prefix=/some/prefix/gcc-4.5.0
--exec-prefix=/some/prefix/gcc-4.5.0/x86_64-unknown-linux-gnu
--enable-version-specific-runtime-libs --enable-stage1-checking
--disable-nls --with-system-zlib --enable-multilib
--enable-languages=c,c++,objc
--with-gmp-include=/some/prefix/gmp-4.2.2/x86_64-unknown-linux-gnu/include
--with-gmp-lib=/some/prefix/gmp-4.2.2/x86_64-unknown-linux-gnu/lib
--with-mpfr-include=/some/prefix/mpfr-2.4.2/include
--with-mpfr-lib=/some/prefix/mpfr-2.4.2/x86_64-unknown-linux-gnu/lib
--with-mpc-include=/some/prefix/mpc-0.8.1/include
--with-mpc-lib=/some/prefix/mpc-0.8.1/x86_64-unknown-linux-gnu/lib
--with-gnu-as
--with-as=/some/prefix/binutils-2.20.1/x86_64-unknown-linux-gnu/bin/as
--with-gnu-ld
--with-ld=/some/prefix/binutils-2.20.1/x86_64-unknown-linux-gnu/bin/ld
Thread model: posix
gcc version 4.5.0 (GCC)


-- 
   Summary: ICE with -g
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: joachim dot reichel at gmx dot de
 GCC build triplet: x86_64-unknown-linux-gnu
  GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64-unknown-linux-gnu


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



[Bug c++/43868] ICE with -g

2010-04-23 Thread joachim dot reichel at gmx dot de


--- Comment #1 from joachim dot reichel at gmx dot de  2010-04-23 16:31 
---
Created an attachment (id=20473)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20473action=view)
test case


-- 


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



[Bug c++/43868] [4.5/4.6 Regression] ICE with -g

2010-04-23 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2010-04-23 16:35 ---
Confirmed.

Program received signal SIGSEGV, Segmentation fault.
0x007541dd in pp_cxx_unqualified_id (pp=0x18e1280, t=0x0)
at /space/rguenther/src/svn/trunk/gcc/cp/cxx-pretty-print.c:150
150   enum tree_code code = TREE_CODE (t);
(gdb) bt
#0  0x007541dd in pp_cxx_unqualified_id (pp=0x18e1280, t=0x0)
at /space/rguenther/src/svn/trunk/gcc/cp/cxx-pretty-print.c:150
#1  0x00754634 in pp_cxx_unqualified_id (pp=0x18e1280, 
t=0x75b48a80)
at /space/rguenther/src/svn/trunk/gcc/cp/cxx-pretty-print.c:202
#2  0x0075602d in pp_cxx_qualified_id (pp=0x18e1280, t=0x75b48a80)
at /space/rguenther/src/svn/trunk/gcc/cp/cxx-pretty-print.c:319
#3  0x0075ac83 in pp_cxx_simple_type_specifier (pp=0x18e1280, 
t=0x75b48a80)
at /space/rguenther/src/svn/trunk/gcc/cp/cxx-pretty-print.c:1220
#4  0x007c1f5c in pp_c_specifier_qualifier_list (pp=0x18e1280, 
t=0x75b48a80)
at /space/rguenther/src/svn/trunk/gcc/c-pretty-print.c:471
...
#18 0x0061a524 in dump_type (t=0x75b5abd0, flags=0)
at /space/rguenther/src/svn/trunk/gcc/cp/error.c:383
#19 0x00623f9f in dump_function_name (t=0x75b53400, flags=0)
at /space/rguenther/src/svn/trunk/gcc/cp/error.c:1430
#20 0x0062b382 in lang_decl_name (decl=0x75b53400, v=0, 
translate=0 '\000') at /space/rguenther/src/svn/trunk/gcc/cp/error.c:2361
#21 0x006fa0e7 in cxx_printable_name_internal (decl=0x75b53400, 
v=0, translate=0 '\000')
at /space/rguenther/src/svn/trunk/gcc/cp/tree.c:1406
#22 0x006fa3db in cxx_printable_name (decl=0x75b53400, v=0)
at /space/rguenther/src/svn/trunk/gcc/cp/tree.c:1443
#23 0x004a0e5e in cxx_dwarf_name (t=0x75b53400, verbosity=0)
at /space/rguenther/src/svn/trunk/gcc/cp/cp-lang.c:148
#24 0x008d3838 in dwarf2_name (decl=0x75b53400, scope=0)
at /space/rguenther/src/svn/trunk/gcc/dwarf2out.c:10848
#25 0x008e5570 in add_name_and_src_coords_attributes (
die=0x75b57e70, decl=0x75b53400)
at /space/rguenther/src/svn/trunk/gcc/dwarf2out.c:16802
#26 0x008e9483 in gen_subprogram_die (decl=0x75b53400, 
context_die=0x75b57dc0)
at /space/rguenther/src/svn/trunk/gcc/dwarf2out.c:17960
#27 0x008efcd7 in gen_decl_die (decl=0x75b53400, 


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Keywords||ice-on-valid-code
   Last reconfirmed|-00-00 00:00:00 |2010-04-23 16:35:42
   date||
Summary|ICE with -g |[4.5/4.6 Regression] ICE
   ||with -g
   Target Milestone|--- |4.5.1


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



[Bug middle-end/43866] [4.3/4.4/4.5/4.6 Regression] wrong code with -fbounds-check -funswitch-loops

2010-04-23 Thread jv244 at cam dot ac dot uk


--- Comment #6 from jv244 at cam dot ac dot uk  2010-04-23 17:29 ---
both testcases work with 4.1.2. I've also checked various versions of valgrind,
which all report consistent results. Also 4.5 only fails on the original
testcase. for reference, -v gives:


 gcc-4.5/bin/gfortran-4.5 -O3 -fbounds-check -g -static -v t.f90
Driving: gcc-4.5/bin/gfortran-4.5 -O3 -fbounds-check -g -static -v t.f90
-lgfortran -lm
Using built-in specs.
COLLECT_GCC=gcc-4.5/bin/gfortran-4.5
COLLECT_LTO_WRAPPER=/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /lustre/ESPFS/scratch/pci/vondele/gcc-4.5/gcc-4.5.0/configure
--prefix=/home/pci/vondele/gcc-4.5 --enable-languages=c,c++,fortran
--program-suffix=-4.5 --disable-multilib --with-gmp=/home/pci/vondele/gcc-4.5
--with-mpfr=/home/pci/vondele/gcc-4.5 --with-mpc=/home/pci/vondele/gcc-4.5
Thread model: posix
gcc version 4.5.0 (GCC)
COLLECT_GCC_OPTIONS='-O3' '-fbounds-check' '-g' '-static' '-v' '-mtune=generic'
'-march=x86-64'

/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.0/f951
t.f90 -quiet -dumpbase t.f90 -mtune=generic -march=x86-64 -auxbase t -g -O3
-version -fbounds-check -fintrinsic-modules-path
/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.0/finclude
-o /tmp/cc4wFHAz.s
GNU Fortran (GCC) version 4.5.0 (x86_64-unknown-linux-gnu)
compiled by GNU C version 4.5.0, GMP version 4.2.4, MPFR version 2.4.1,
MPC version 0.8
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU Fortran (GCC) version 4.5.0 (x86_64-unknown-linux-gnu)
compiled by GNU C version 4.5.0, GMP version 4.2.4, MPFR version 2.4.1,
MPC version 0.8
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
COLLECT_GCC_OPTIONS='-O3' '-fbounds-check' '-g' '-static' '-v' '-mtune=generic'
'-march=x86-64'
 as -V -Qy --64 -o /tmp/ccvIH9et.o /tmp/cc4wFHAz.s
GNU assembler version 2.16.91.0.5 (x86_64-suse-linux) using BFD version
2.16.91.0.5 20051219 (SUSE Linux)
COMPILER_PATH=/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.0/:/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../libexec/gcc/
LIBRARY_PATH=/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.0/:/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../lib/gcc/:/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.0/../../../../lib64/:/lib/../lib64/:/usr/lib/../lib64/:/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.0/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-O3' '-fbounds-check' '-g' '-static' '-v' '-mtune=generic'
'-march=x86-64'

/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.0/collect2
-m elf_x86_64 -static /usr/lib/../lib64/crt1.o /usr/lib/../lib64/crti.o
/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.0/crtbeginT.o
-L/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.0
-L/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../lib/gcc
-L/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.0/../../../../lib64
-L/lib/../lib64 -L/usr/lib/../lib64
-L/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.0/../../..
/tmp/ccvIH9et.o -lgfortran -lm --start-group -lgcc -lgcc_eh -lc --end-group
/panfs/panfs0.ften.es.hpcn.uzh.ch/es/home/pci/vondele/gcc-4.5/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.0/crtend.o
/usr/lib/../lib64/crtn.o


-- 

jv244 at cam dot ac dot uk changed:

   What|Removed |Added

  Known to fail|4.3.1 4.4.0 4.6.0   |4.3.1 4.4.0 4.5.0 4.6.0
  Known to work||4.1.2
Summary|wrong code with -fbounds-   |[4.3/4.4/4.5/4.6 Regression]
   |check -funswitch-loops  |wrong code with -fbounds-
   ||check -funswitch-loops
   Target Milestone|--- |4.3.5


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



[Bug lto/40702] lto-elf.c fails to compile on Solaris

2010-04-23 Thread ebotcazou at gcc dot gnu dot org


--- Comment #6 from ebotcazou at gcc dot gnu dot org  2010-04-23 18:08 
---
This at least works for me on SPARC/Solaris 8, 9 and 10.


-- 

ebotcazou at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||ebotcazou at gcc dot gnu dot
   ||org


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



[Bug libfortran/43844] open(unit, status=scratch) fails to create tempporary file

2010-04-23 Thread jvdelisle at gcc dot gnu dot org


--- Comment #9 from jvdelisle at gcc dot gnu dot org  2010-04-23 18:19 
---
I discussed with Kai on IRC today and have approved Kai to commit the patch.


-- 


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



[Bug c/43869] New: ms_abi - sysv_abi passing float arguments incorrectly

2010-04-23 Thread m dot b dot lankhorst at gmail dot com
Float arguments are passed incorrectly from a ms_abi function to a sysv
function, as can be witnessed by a simple testcase, which fails on all
optimizations. I don't think this is a regression, as wine always failed on
that testcase.


-- 
   Summary: ms_abi - sysv_abi passing float arguments incorrectly
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: m dot b dot lankhorst at gmail dot com
 GCC build triplet: x86_64-linux-gnu
  GCC host triplet: x86_64-linux-gnu
GCC target triplet: x86_64-linux-gnu


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



[Bug c/43869] ms_abi - sysv_abi passing float arguments incorrectly

2010-04-23 Thread m dot b dot lankhorst at gmail dot com


--- Comment #1 from m dot b dot lankhorst at gmail dot com  2010-04-23 
18:38 ---
Created an attachment (id=20474)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20474action=view)
testcase

testcase that fails


-- 


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



[Bug target/43869] ms_abi - sysv_abi passing float arguments incorrectly

2010-04-23 Thread pinskia at gcc dot gnu dot org


--- Comment #2 from pinskia at gcc dot gnu dot org  2010-04-23 18:40 ---
This works with:
GNU C (GCC) version 4.6.0 20100422 (experimental) [trunk revision 158652]
(x86_64-unknown-linux-gnu)


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

  Component|c   |target


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



[Bug target/43869] ms_abi - sysv_abi passing float arguments incorrectly

2010-04-23 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2010-04-23 18:44 ---
(In reply to comment #2)
 This works with:
 GNU C (GCC) version 4.6.0 20100422 (experimental) [trunk revision 158652]
 (x86_64-unknown-linux-gnu)
 

I take that back, it still fails, for some reason I thought the testcase was
using abort to test for a failure rather than the return value.


-- 


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



[Bug target/42868] [4.4 regression] ICE in change_address_1 at -O -fPIC -mcpu=ultrasparc

2010-04-23 Thread ebotcazou at gcc dot gnu dot org


--- Comment #3 from ebotcazou at gcc dot gnu dot org  2010-04-23 18:55 
---
Too delicate to fix on release branches.  Reopen if it pops up elsewhere.


-- 

ebotcazou at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
  Known to work||4.3.4 4.5.0
 Resolution||WONTFIX


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



[Bug bootstrap/43870] New: ICE in gcc/config/soft-fp/divtf3.c

2010-04-23 Thread gcc-tgc at jupiterrise dot com
Bootstrapping 4.5.0 fails with ICE in stage1.

Env/tools:
LD_LIBRARY_PATH=/opt/csw/lib
gcc 4.3.4
gas 2.19.1
mpfr 2.4.2
gmp 5.0.1
mpc 0.8.1

Build was configured as:
$ ~/source/gcc-4.5.0/configure --prefix=/usr/tgcware/gcc-4.5.0
--with-local-prefix=/usr/tgcware/gcc-4.5.0 --with-gnu-as
--with-as=/opt/csw/bin/gas --without-gnu-ld --with-ld=/usr/ccs/bin/ld
--enable-threads=posix --enable-shared --with-gmp=/opt/csw --with-mpfr=/opt/csw
--with-mpc=/opt/csw --disable-nsl --with-x --enable-java-awt=xlib
--with-system-zlib --enable-languages=c,ada,c++,fortran,java,objc,obj-c++

Build failure:
/export/home/tgc/build/gcc450_all_native/./gcc/xgcc
-B/export/home/tgc/build/gcc450_all_native/./gcc/
-B/usr/tgcware/gcc-4.5.0/i386-pc-solaris2.8
/bin/ -B/usr/tgcware/gcc-4.5.0/i386-pc-solaris2.8/lib/ -isystem
/usr/tgcware/gcc-4.5.0/i386-pc-solaris2.8/include -isystem
/usr/tgcware/gcc-4.5.0
/i386-pc-solaris2.8/sys-include-g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall
-Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -W
old-style-definition  -isystem ./include  -fPIC -g -DHAVE_GTHR_DEFAULT
-DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/export/ho
me/tgc/source/gcc-4.5.0/libgcc -I/export/home/tgc/source/gcc-4.5.0/libgcc/.
-I/export/home/tgc/source/gcc-4.5.0/libgcc/../gcc -I/export/home/tgc/
source/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS
-Wno-missing-prototypes -Wno-type-limits -o divtf3.o -MT divtf3.o -MD -MP -MF
divt
f3.dep -fexceptions -c
/export/home/tgc/source/gcc-4.5.0/libgcc/../gcc/config/soft-fp/divtf3.c
/export/home/tgc/source/gcc-4.5.0/libgcc/../gcc/config/soft-fp/divtf3.c: In
function '__divtf3':
/export/home/tgc/source/gcc-4.5.0/libgcc/../gcc/config/soft-fp/divtf3.c:38:1:
warning: 'R_e' may be used uninitialized in this function
/export/home/tgc/source/gcc-4.5.0/libgcc/../gcc/config/soft-fp/divtf3.c:49:1:
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.
gmake[3]: *** [divtf3.o] Error 1
gmake[3]: Leaving directory
`/export/home/tgc/build/gcc450_all_native/i386-pc-solaris2.8/libgcc'
gmake[2]: *** [all-stage1-target-libgcc] Error 2
gmake[2]: Leaving directory `/export/home/tgc/build/gcc450_all_native'
gmake[1]: *** [stage1-bubble] Error 2
gmake[1]: Leaving directory `/export/home/tgc/build/gcc450_all_native'
gmake: *** [bootstrap] Error 2


-- 
   Summary: ICE in gcc/config/soft-fp/divtf3.c
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: gcc-tgc at jupiterrise dot com
 GCC build triplet: i386-pc-solaris2.8
  GCC host triplet: i386-pc-solaris2.8
GCC target triplet: i386-pc-solaris2.8


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



[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c

2010-04-23 Thread gcc-tgc at jupiterrise dot com


--- Comment #1 from gcc-tgc at jupiterrise dot com  2010-04-23 18:58 ---
Created an attachment (id=20475)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20475action=view)
Preprocessed source


-- 


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



[Bug target/43871] New: -mcpu=power4 -mtune=cell emits power7/cell-only opcodes

2010-04-23 Thread marcus at jet dot franken dot de
my kernel does not boot anymore on a ppc970 (powermac g5) due to an illegal
instruction caused by gcc 4.5

research showed that the DI bswap64 operation is optimized to ldbrx even on
power4, but causes an sigill there.

gcc -m64 -c -O2 -mcpu=power4 -mtune=cell
gcc/testsuite/gcc.target/powerpc/optimize-bswapdi-3.c ; objdump -d
optimize-bswapdi-3.o
 .swap64_load:
   0:   7c 00 1c 28 .long 0x7c001c28
   4:   7c 03 03 78 mr  r3,r0
   8:   4e 80 00 20 blr


while:

gcc -m64 -c -O2 -mcpu=power4
gcc/testsuite/gcc.target/powerpc/optimize-bswapdi-3.c ; objdump -d
optimize-bswapdi-3.o
 .swap64_load:
   0:   39 20 00 04 li  r9,4
   4:   7c 00 1c 2c lwbrx   r0,0,r3
   8:   7d 69 1c 2c lwbrx   r11,r9,r3
   c:   79 6a 07 c6 rldicr  r10,r11,32,31
  10:   7d 4a 03 78 or  r10,r10,r0
  14:   7d 43 53 78 mr  r3,r10
  18:   4e 80 00 20 blr


-mcpu=power4 -mtune=cell should not start to emit opcodes invalid on power4.

I think the bswap64 emitter logic in config/rs6000/rs6000.md is incorrect


-- 
   Summary: -mcpu=power4 -mtune=cell emits power7/cell-only opcodes
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: marcus at jet dot franken dot de
 GCC build triplet: powerpc-unknown-linux-gnu
  GCC host triplet: powerpc-unknown-linux-gnu
GCC target triplet: powerpc-unknown-linux-gnu


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



[Bug target/43871] -mcpu=power4 -mtune=cell emits power7/cell-only opcodes

2010-04-23 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2010-04-23 19:04 ---
This was my fault to some extend; when I added =cell support I asked about if
we should emit the cell instructions for -mtune= and the answer was that using
-mtune=cell is most likely not going to be used.  In fact -mtune=cell most
likely produce much slower code on most other processors because of the non use
of the dot instructions (and other stuff).


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org


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



[Bug target/43871] -mcpu=power4 -mtune=cell emits power7/cell-only opcodes

2010-04-23 Thread marcus at jet dot franken dot de


--- Comment #2 from marcus at jet dot franken dot de  2010-04-23 19:12 
---
well, the kernel now does easier ... 

in arch/powerpc/Makefile:

ifeq ($(CONFIG_TUNE_CELL),y)
KBUILD_CFLAGS += $(call cc-option,-mtune=cell)
endif


-- 


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



[Bug target/43872] New: VLAs are not aligned correctly on ARM

2010-04-23 Thread mikpe at it dot uu dot se
This test case is derived from gcc.c-torture/execute/920929-1.c. It creates a
VLA of doubles and fills it with zeros:

 cat bad-vla-align.c
unsigned long mask = sizeof(double) - 1;

unsigned int __attribute__((noinline)) f(int n)
{
double v[n];

while (n  0)
v[--n] = 0;

return (unsigned long)v  mask;
}

int main(void)
{
if (f(100) != 0)
__builtin_abort();
return 0;
}

With -march=armv5te -O2 gcc uses STRD instructions to write 8 bytes at a time.
STRD requires an 8-byte aligned address, but gcc fails to align the VLA to 8
bytes, resulting in misaligned accesses at runtime. Depending on hardware and
kernel configuration, this may result in abnormal termination or slow but
correct execution. On my Marvell Kirkwood machine, it results in EXTREMELY slow
execution due to the high overhead of kernel fixups for alignment traps.

The reason for the misalignment can be seen in the assembly code:

 cat bad-vla-align.s
.arch armv5te
...
f:
@ args = 0, pretend = 0, frame = 0
@ frame_needed = 1, uses_anonymous_args = 0
@ link register save eliminated.
str fp, [sp, #-4]!

sp is 8-byte aligned on entry but not after the prologue.

mov r1, r0, asl #3
add r3, r1, #8

Both these offsets are multiples of 8.

add fp, sp, #0
cmp r0, #0
sub sp, sp, r3

Now sp == v[0] is not 8-byte aligned.

mov ip, sp
ble .L2
add r1, sp, r1

r1 == v[n] is not 8-byte aligned.

mov r2, #0
mov r3, #0
.L3:
subsr0, r0, #1
strdr2, [r1, #-8]!

r1 == v[--n] is not 8-byte aligned so strd fails.
...

I can reproduce this failure with 4.6.0 (r158675) and the 4.5.0 and 4.4.3
releases. 4.3.4 and 4.2.4 appear to work, but I don't know if that is by design
or by accident (different register allocation resulting in different frame
layouts and prologues).

A version of the test case tried to perform the alignment check inside the f
function, but gcc optimized it away completely, apparently knowing that the
array address was a multiple of 8. Still another version tried to pass the
array address to a separate checking function, but that changed f's prologue
enough to mask the error.


-- 
   Summary: VLAs are not aligned correctly on ARM
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: mikpe at it dot uu dot se
GCC target triplet: armv5tel-unknown-linux-gnueabi


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



[Bug target/43872] VLAs are not aligned correctly on ARM

2010-04-23 Thread mikpe at it dot uu dot se


--- Comment #1 from mikpe at it dot uu dot se  2010-04-23 19:14 ---
Created an attachment (id=20476)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20476action=view)
test case


-- 


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



[Bug target/43872] VLAs are not aligned correctly on ARM

2010-04-23 Thread mikpe at it dot uu dot se


--- Comment #2 from mikpe at it dot uu dot se  2010-04-23 19:15 ---
Created an attachment (id=20477)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20477action=view)
gcc-4.6.0 -O2 -march=armv5te -S output


-- 


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



[Bug c/43873] New: Bootstrap compiler segfault while configuring libgcc

2010-04-23 Thread lacombar at gmail dot com
Trying to build GCC 4.3.4, 4.4.3 and 4.4.4RC using gcc 3.4.6 as a system
compiler fails:

configure:2590: checking for suffix of object files
configure:2611:  /x/./gcc/xgcc -B/x/./gcc/ -B/y/bfin-unknown-elf/bin/
-B/y/bfin-unknown-elf/lib/ -isystem /y/bfin-unknown-elf/include -isystem
/y/bfin-unknown-elf/sys-include -c -g -Osconftest.c 5
conftest.c:1: 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.
configure:2614: $? = 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.  */
|
| int
| main ()
| {
|
|   ;
|   return 0;
| }
configure:2627: error: in `/x/bfin-unknown-elf/libgcc':
configure:2630: error: cannot compute suffix of object files: cannot compile
See `config.log' for more details.

gdb tells a bit more on the location of the failure:

Program received signal SIGSEGV, Segmentation fault.
0x37bf in ?? ()
(gdb) bt
#0  0x37bf in ?? ()
#1  0x0816af3d in emit_move_insn ()
#2  0x080f8457 in init_set_costs ()
#3  0x083063e7 in lang_dependent_init_target ()
#4  0x0830646d in lang_dependent_init ()
#5  0x08306655 in do_compile ()
#6  0x083066c8 in toplev_main ()
#7  0x080b3b2a in main ()

Bootstrap compiler:
./xgcc -v
Using built-in specs. Target: bfin-unknown-elf
Configured with: /z/gcc-4.4.4-RC-20100422/configure
--build=i486-build_pc-linux-gnu --host=i486-build_pc-linux-gnu
--target=bfin-unknown-elf --prefix=/y
--with-local-prefix=/y/bfin-unknown-elf/bfin-unknown-elf//sys-root
--disable-multilib --with-sysroot=/y/bfin-unknown-elf//sys-root --with-newlib
--enable-threads=no --enable-shared --with-pkgversion=naa
--disable-decimal-float --disable-__cxa_atexit
--with-gmp=/o/targets/bfin-unknown-elf/build/static
--with-mpfr=/o/targets/bfin-unknown-elf/build/static --disable-nls
--enable-symvers=gnu --enable-languages=c,c++ --enable-target-optspace
Thread model: single
gcc version 4.4.4 20100422 (prerelease) (naa)

System compiler:
# i486-pc-linux-gnu-gcc -v
Reading specs from
/a/i486-pc-linux-gnu-gcc3.4.6/bin/../lib/gcc/i486-pc-linux-gnu/3.4.6/specs
Configured with: /s/gcc-3.4.6/configure --build=i486-build_pc-linux-gnu
--host=i486-build_pc-linux-gnu --target=i486-pc-linux-gnu
--prefix=/y/i486-pc-linux-gnu
--with-sysroot=/y/i486-pc-linux-gnu/i486-pc-linux-gnu//sys-root
--enable-languages=c,c++ --disable-multilib --with-arch=i486
--enable-__cxa_atexit --enable-threads=posix
--with-local-prefix=/y/i486-pc-linux-gnu/i486-pc-linux-gnu//sys-root
--disable-nls --enable-symvers=gnu --enable-c99 --enable-long-long
--enable-target-optspace
Thread model: posix
gcc version 3.4.6

note: gcc 4.2.4 build successfully in the same environment.


-- 
   Summary: Bootstrap compiler segfault while configuring libgcc
   Product: gcc
   Version: 4.4.4
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: lacombar at gmail dot com
 GCC build triplet: i486-pc-linux-gnu
  GCC host triplet: i486-pc-linux-gnu
GCC target triplet: bfin-unknown-elf


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



[Bug java/42143] [4.3/4.4/4.5/4.6 Regression] gcj creates dummy variables

2010-04-23 Thread kurt at roeckx dot be


--- Comment #6 from kurt at roeckx dot be  2010-04-23 19:49 ---
So can someone please comment on this?


-- 

kurt at roeckx dot be changed:

   What|Removed |Added

 Status|WAITING |UNCONFIRMED


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



[Bug fortran/40994] ICE with BIND(C)

2010-04-23 Thread jv244 at cam dot ac dot uk


--- Comment #5 from jv244 at cam dot ac dot uk  2010-04-23 20:17 ---
as per comment #4, and reconfirmed for trunk


-- 

jv244 at cam dot ac dot uk changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-04-23 20:17:34
   date||


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



[Bug tree-optimization/43629] [4.3 Regression] Struct to register optimization fails

2010-04-23 Thread julien dot etienne at gmail dot com


--- Comment #17 from julien dot etienne at gmail dot com  2010-04-23 21:12 
---
Thank you very much for the fix.
Everything now works as expected.

Best Regards,
Julien


-- 


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



  1   2   >