[Bug tree-optimization/47228] [4.6 Regression] wrong code with loop

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47228

Jakub Jelinek  changed:

   What|Removed |Added

   Priority|P3  |P1
 CC||jamborm at gcc dot gnu.org

--- Comment #4 from Jakub Jelinek  2011-01-26 
08:28:31 UTC ---
Yeah, clearly SRA fault, as it replaces
b[x_1] = c;
where both lhs and rhs is correctly type S, i.e. 3 byte packed BLKmode
structure,
with MEM_REF store which is SImode 4 byte.


[Bug tree-optimization/47426] [4.6 Regression] wrong code with -O2 -fipa-pta

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47426

Jakub Jelinek  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 CC||jakub at gcc dot gnu.org
 Resolution||FIXED

--- Comment #6 from Jakub Jelinek  2011-01-26 
08:39:39 UTC ---
Fixed.


[Bug fortran/47469] New: Check whether arrayfunc_assign_needs_temporary misses TBP/PPC attributes

2011-01-26 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47469

   Summary: Check whether arrayfunc_assign_needs_temporary misses
TBP/PPC attributes
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Keywords: wrong-code
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: bur...@gcc.gnu.org
CC: pa...@gcc.gnu.org, ja...@gcc.gnu.org


Found when looking at PR 47455 and trans-expr.c:

I wonder whether for type-bound procedures or for procedure-pointer components,
the "pointer" or "allocatable" attribute is properly taken into account in
arrayfunc_assign_needs_temporary.

However, I have not checked whether this is an really and issue or whether
there are other related issues.

Thus, something like:

--- a/gcc/fortran/trans-expr.c
+++ b/gcc/fortran/trans-expr.c
@@ -5346,8 +5381,8 @@ arrayfunc_assign_needs_temporary (gfc_expr * expr1,
gfc_expr * expr2)
 return true;

   /* Functions returning pointers need temporaries.  */
-  if (expr2->symtree->n.sym->attr.pointer
-  || expr2->symtree->n.sym->attr.allocatable)
+  if (gfc_expr_attr (expr2).pointer
+  || gfc_expr_attr (expr2).allocatable)
 return true;

   /* Character array functions need temporaries unless the


[Bug c/47470] New: Less-optimized Code Size when using Optimizations

2011-01-26 Thread Tomer.Levi at nuvoton dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47470

   Summary: Less-optimized Code Size when using Optimizations
   Product: gcc
   Version: 3.3.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: tomer.l...@nuvoton.com


Created attachment 23129
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23129
Generated Assembly with and w/o optimizations

Hi,
Consider the following code:
int a,b,c,d;
int main (void)
{  
 while (a || b || c)
 {
  if (d)
  break;
 }
return 0;
}
When compiling w/o optimization, the produced code is even smaller than when
providing optimization flags (-O or -Os).
It seems like when using some sort of optimization, the compiler always creates
a loop pre-header. When optimized, the compiler performs a dual comparison,
once in the pre-header, the other in the loop. Without optimizations, only a
single comparison is used, thus code is much smaller (please see attachment for
the generated assembly). Since we are very tight on code size, is there a way
to force the compiler to avoid the usage of such a pre-header while using -Os
optimization? I haven't found any flag/switch for that.
Thanks in advance.


[Bug c++/47206] [4.6 Regression] [C++0x] ICE: SIGSEGV in cp_tree_equal (tree.c:2150) with -fno-elide-constructors

2011-01-26 Thread dodji at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47206

Dodji Seketeli  changed:

   What|Removed |Added

 CC||dodji at gcc dot gnu.org

--- Comment #2 from Dodji Seketeli  2011-01-26 
09:53:30 UTC ---
I believe this is the same issue as PR c++/47041. That other bug got
fixed on trunk and this testcase pass on trunk (4.6) as well. At least
since revision r169108


[Bug c++/47206] [4.6 Regression] [C++0x] ICE: SIGSEGV in cp_tree_equal (tree.c:2150) with -fno-elide-constructors

2011-01-26 Thread dodji at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47206

Dodji Seketeli  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||DUPLICATE

--- Comment #3 from Dodji Seketeli  2011-01-26 
09:57:33 UTC ---
Fixed in trunk (4.6)

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


[Bug c++/47041] [4.6 Regression] Internal compiler error in build_data_member_initialization, add cp/semantics.c:5483

2011-01-26 Thread dodji at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47041

--- Comment #7 from Dodji Seketeli  2011-01-26 
09:57:33 UTC ---
*** Bug 47206 has been marked as a duplicate of this bug. ***


[Bug tree-optimization/47237] [4.3/4.4/4.5/4.6 Regression] builtin_apply_args broken WRT local ABI changes.

2011-01-26 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47237

Jan Hubicka  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
 AssignedTo|unassigned at gcc dot   |hubicka at gcc dot gnu.org
   |gnu.org |

--- Comment #1 from Jan Hubicka  2011-01-26 
10:06:05 UTC ---
testing patch.


[Bug fortran/47339] Fortran 2003/2008: Valid NAMELIST rejected; Fortran 95: Invalid namelist objects accepted

2011-01-26 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47339

Tobias Burnus  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED

--- Comment #5 from Tobias Burnus  2011-01-26 
10:12:51 UTC ---
Author: burnus
Date: Wed Jan 26 10:12:47 2011
New Revision: 169282

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169282
Log:
2011-01-26  Tobias Burnus  

PR fortran/47339
PR fortran/43062
* match.c (gfc_match_namelist): Allow assumed-length characters.
* resolve.c (resolve_fl_namelist): Adapt and add error messages.
* symbol.c (check_conflict): Allow allocatables in NML for
* F2003.
* trans-io.c (nml_get_addr_expr,transfer_namelist_element):
Changes due to that change.

2011-01-26  Tobias Burnus  

PR fortran/47339
PR fortran/43062
* fortran.dg/namelist_69.f90: New test.
* fortran.dg/namelist_70.f90: New test.
* fortran.dg/namelist_assumed_char.f90: Modify dg-error, augment
* test.
* fortran.dg/namelist_3.f90: Adapt test.
* fortran.dg/namelist_34.f90: Ditto.
* fortran.dg/namelist_35.f90: Ditto.
* fortran.dg/namelist_5.f90: Ditto.
* fortran.dg/namelist_63.f90: Ditto.
* gfortran.dg/alloc_comp_constraint_1.f90: Ditto.


Added:
trunk/gcc/testsuite/gfortran.dg/namelist_69.f90
trunk/gcc/testsuite/gfortran.dg/namelist_70.f90
Modified:
trunk/gcc/fortran/match.c
trunk/gcc/fortran/resolve.c
trunk/gcc/fortran/symbol.c
trunk/gcc/fortran/trans-io.c
trunk/gcc/testsuite/gfortran.dg/alloc_comp_constraint_1.f90
trunk/gcc/testsuite/gfortran.dg/namelist_3.f90
trunk/gcc/testsuite/gfortran.dg/namelist_34.f90
trunk/gcc/testsuite/gfortran.dg/namelist_35.f90
trunk/gcc/testsuite/gfortran.dg/namelist_5.f90
trunk/gcc/testsuite/gfortran.dg/namelist_63.f90
trunk/gcc/testsuite/gfortran.dg/namelist_assumed_char.f90

--- Comment #6 from Tobias Burnus  2011-01-26 
10:13:26 UTC ---
FIXED on the trunk (4.6)


[Bug fortran/43062] NAMELIST attribute conflicts with ALLOCATABLE attribute

2011-01-26 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43062

Tobias Burnus  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED

--- Comment #24 from Tobias Burnus  2011-01-26 
10:12:52 UTC ---
Author: burnus
Date: Wed Jan 26 10:12:47 2011
New Revision: 169282

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169282
Log:
2011-01-26  Tobias Burnus  

PR fortran/47339
PR fortran/43062
* match.c (gfc_match_namelist): Allow assumed-length characters.
* resolve.c (resolve_fl_namelist): Adapt and add error messages.
* symbol.c (check_conflict): Allow allocatables in NML for
* F2003.
* trans-io.c (nml_get_addr_expr,transfer_namelist_element):
Changes due to that change.

2011-01-26  Tobias Burnus  

PR fortran/47339
PR fortran/43062
* fortran.dg/namelist_69.f90: New test.
* fortran.dg/namelist_70.f90: New test.
* fortran.dg/namelist_assumed_char.f90: Modify dg-error, augment
* test.
* fortran.dg/namelist_3.f90: Adapt test.
* fortran.dg/namelist_34.f90: Ditto.
* fortran.dg/namelist_35.f90: Ditto.
* fortran.dg/namelist_5.f90: Ditto.
* fortran.dg/namelist_63.f90: Ditto.
* gfortran.dg/alloc_comp_constraint_1.f90: Ditto.


Added:
trunk/gcc/testsuite/gfortran.dg/namelist_69.f90
trunk/gcc/testsuite/gfortran.dg/namelist_70.f90
Modified:
trunk/gcc/fortran/match.c
trunk/gcc/fortran/resolve.c
trunk/gcc/fortran/symbol.c
trunk/gcc/fortran/trans-io.c
trunk/gcc/testsuite/gfortran.dg/alloc_comp_constraint_1.f90
trunk/gcc/testsuite/gfortran.dg/namelist_3.f90
trunk/gcc/testsuite/gfortran.dg/namelist_34.f90
trunk/gcc/testsuite/gfortran.dg/namelist_35.f90
trunk/gcc/testsuite/gfortran.dg/namelist_5.f90
trunk/gcc/testsuite/gfortran.dg/namelist_63.f90
trunk/gcc/testsuite/gfortran.dg/namelist_assumed_char.f90

--- Comment #25 from Tobias Burnus  2011-01-26 
10:13:45 UTC ---
FIXED on the trunk (4.6). Thanks for the report Xavier!


[Bug c/47470] Less-optimized Code Size when using Optimizations

2011-01-26 Thread mikpe at it dot uu.se
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47470

--- Comment #1 from Mikael Pettersson  2011-01-26 
10:17:18 UTC ---
gcc-3.3.2 is ancient and no longer supported upstream.  Please try gcc-4.4.5 or
newer.  Also you haven't told us which target you're compiling for, or how your
gcc was configured.


[Bug middle-end/40979] induct benchmark 60% slower when compiled with -fgraphite-identity

2011-01-26 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40979

--- Comment #9 from Dominique d'Humieres  2011-01-26 
10:23:12 UTC ---
This pr is not fixed at revision 169261 (gfc). AFAIU -ftree-loop-linear is now
implemented through graphite. This leads to a sort of regression with respect
to revision 169227(gfc6):

[macbook] lin/test% gfc -Ofast -ftree-loop-linear induct.f90
[macbook] lin/test% time a.out > /dev/null
22.380u 0.023s 0:22.40 100.0%0+0k 0+0io 0pf+0w
[macbook] lin/test% gfc6 -Ofast -ftree-loop-linear induct.f90
[macbook] lin/test% time a.out > /dev/null
13.978u 0.019s 0:13.99 99.9%0+0k 0+0io 0pf+0w


[Bug debug/47471] New: stdarg functions extraneous too-early prologue end

2011-01-26 Thread jan.kratochvil at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47471

   Summary: stdarg functions extraneous too-early prologue end
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: debug
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: jan.kratoch...@redhat.com
Target: x86_64-fedora15-linux-gnu


GDB tracker:
http://sourceware.org/bugzilla/show_bug.cgi?id=12435

---
int v;
void f (int i, ...)
{
  v++;
}
int main (void) { f (1); return 0; }
---
gcc -o 1 1.c -Wall -g
FAIL gcc (GCC) 4.6.0 20110126 (experimental)
FAIL gcc-4.6.0-0.3.fc15.x86_64
PASS gcc (GCC) 4.5.3 20110124 (prerelease)
PASS gcc-4.5.1-4.fc14.x86_64
GNU gdb (GDB) 7.2.50.20110125-cvs

FAIL:
gdb -nx ./1 -ex 'b f' -ex r
Starting program: .../1 

Program exited normally.

PASS:
gdb -nx ./1 -ex 'b f' -ex r
Starting program: .../1 
Breakpoint 1, f (i=1) at 1.c:4
4  v++;


GDB workaround is in the GDB PR above but it touches .debug_line parsing which
is sensitive due to missing DWARF prologue end markers - wouldn't a GCC fix be
better?

  Extended opcode 2: set Address to 0x400454
  Special opcode 7: advance Address by 0 to 0x400454 and Line by 2 to 3
  Advance PC by 47 to 0x400483
  Special opcode 5: advance Address by 0 to 0x400483 and Line by 0 to 3
  ^####
  Advance PC by 38 to 0x4004a9
  Special opcode 6: advance Address by 0 to 0x4004a9 and Line by 1 to 4

The marked line causes GDB prologue-end detection heuristics to fail.
The marked line should be removed.


00400454 :
int v;
void f (int i, ...)
{
  400454:   55  push   %rbp
  400455:   48 89 e5mov%rsp,%rbp
  400458:   48 83 ec 48 sub$0x48,%rsp
  40045c:   48 89 b5 58 ff ff ffmov%rsi,-0xa8(%rbp)
  400463:   48 89 95 60 ff ff ffmov%rdx,-0xa0(%rbp)
  40046a:   48 89 8d 68 ff ff ffmov%rcx,-0x98(%rbp)
  400471:   4c 89 85 70 ff ff ffmov%r8,-0x90(%rbp)
  400478:   4c 89 8d 78 ff ff ffmov%r9,-0x88(%rbp)
  40047f:   84 c0   test   %al,%al
  400481:   74 20   je 4004a3 
= Wrong marker - not hit.
  400483:   0f 29 45 80 movaps %xmm0,-0x80(%rbp)
  400487:   0f 29 4d 90 movaps %xmm1,-0x70(%rbp)
  40048b:   0f 29 55 a0 movaps %xmm2,-0x60(%rbp)
  40048f:   0f 29 5d b0 movaps %xmm3,-0x50(%rbp)
  400493:   0f 29 65 c0 movaps %xmm4,-0x40(%rbp)
  400497:   0f 29 6d d0 movaps %xmm5,-0x30(%rbp)
  40049b:   0f 29 75 e0 movaps %xmm6,-0x20(%rbp)
  40049f:   0f 29 7d f0 movaps %xmm7,-0x10(%rbp)
  4004a3:   89 bd 4c ff ff ff   mov%edi,-0xb4(%rbp)
= Correct prologue end would be here.
  v++;
  4004a9:   8b 05 f1 03 20 00   mov0x2003f1(%rip),%eax#
6008a0 
  4004af:   83 c0 01add$0x1,%eax
  4004b2:   89 05 e8 03 20 00   mov%eax,0x2003e8(%rip)#
6008a0 
}
  4004b8:   c9  leaveq 
  4004b9:   c3  retq


[Bug fortran/47472] New: Rules printed by -M option contains duplicate slash when -J option is used

2011-01-26 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47472

   Summary: Rules printed by -M option contains duplicate slash
when -J option is used
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: thenl...@users.sourceforge.net


Example:

testuse.f90:
program testuse
use testmake
end program testuse

testmake.f90:
module testmake
integer :: i, j
end module testmake

$ gfortran -Jobj -o obj/testmake.o -c testmake.f90
$ gfortran -Jobj -M -cpp testuse.f90
testuse.o: testuse.f90 obj//testmake.mod

Expected output is:
testuse.o: testuse.f90 obj/testmake.mod


[Bug fortran/47455] [4.6 Regression][OOP] internal compiler error: in fold_convert_loc, at fold-const.c:2028

2011-01-26 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47455

--- Comment #4 from Tobias Burnus  2011-01-26 
10:36:41 UTC ---
Created attachment 23130
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23130
Draft patch, working but failing due to another related bug

(In reply to comment #3)
[First patch]

Works for the test case, but does not regtest. The following makes more sense:
Replace "proc_pointer" by "pointer || allocatable"

 * * *

However, the test case - in the attachment - fails due to a different and in
principle unrelated reason:

find_x2 (struct __class_class_t_T & restrict this)
{
  struct tx * res;

  res.i.data = 0B;
  res = 0B;

The "res.i.data = 0" is obviously wrong: The pointer "res" should be already be
set to NULL - thus the component should in that case never be set.


[Bug target/44392] [4.5 Regression] libgcc compile with --enable-target-optspace (-Os) causes recursion in __bswapsi2

2011-01-26 Thread ramana at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44392

Ramana Radhakrishnan  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED

--- Comment #15 from Ramana Radhakrishnan  
2011-01-26 10:44:56 UTC ---
This is now fixed.


[Bug fortran/47472] Rules printed by -M option contains duplicate slash when -J option is used

2011-01-26 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47472

Tobias Burnus  changed:

   What|Removed |Added

 CC||burnus at gcc dot gnu.org

--- Comment #1 from Tobias Burnus  2011-01-26 
11:04:57 UTC ---
For digging: The "-cpp -M" functionality has been added 2010-06-13 with commit
Rev. 160684.


[Bug other/47467] [4.6 Regression] hwint.h:239:3: error: implicit declaration of function 'abs'

2011-01-26 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47467

Richard Guenther  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.01.26 11:08:06
   Target Milestone|--- |4.6.0
 Ever Confirmed|0   |1

--- Comment #1 from Richard Guenther  2011-01-26 
11:08:06 UTC ---
Confirmed.  Saw this on x86_64-linux as well.

In theory it should work, the file properly includes config.h, system.h
which includes stdlib.h before including hwint.h.


[Bug c/47473] New: Incorrect computation with complex numbers when using -std=c99

2011-01-26 Thread abelk at live dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47473

   Summary: Incorrect computation with complex numbers when using
-std=c99
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: ab...@live.com


Created attachment 23131
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23131
complexbug3.i

This is a report about an issue encountered in MinGW GCC. The maintainers of
the MinGW project suggested to report it here.

The command line that triggers the bug is:

gcc -v -save-temps -Wall -std=c99 complexbug3.c -o complexbug3.exe

The option -std=c99 triggers the bug.

The resultant output is:

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=c:/program
files/mingw/bin/../libexec/gcc/mingw32/4.5.0/lto-wrapper.exe
Target: mingw32
Configured with: ../gcc-4.5.0/configure
--enable-languages=c,c++,ada,fortran,objc,obj-c++ --disable-sjlj-exceptions
--with-dwarf2 --enable-shared --enable-libgomp --disable-win32-registry
--enable-libstdcxx-debug --enable-version-specific-runtime-libs
--disable-werror --build=mingw32 --prefix=/mingw
Thread model: win32
gcc version 4.5.0 (GCC) 
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-std=c99' '-o'
'complexbug3.exe' '-mtune=i386' '-march=i386'
 c:/program files/mingw/bin/../libexec/gcc/mingw32/4.5.0/cc1.exe -E -quiet -v
-iprefix c:\program files\mingw\bin\../lib/gcc/mingw32/4.5.0/ complexbug3.c
-mtune=i386 -march=i386 -std=c99 -Wall -fpch-preprocess -o complexbug3.i
ignoring nonexistent directory "c:\program
files\mingw\bin\../lib/gcc/mingw32/4.5.0/../../../../mingw32/include"
ignoring nonexistent directory "c:/mingw/include"
ignoring nonexistent directory "/mingw/include"
ignoring duplicate directory "c:/program
files/mingw/lib/gcc/../../lib/gcc/mingw32/4.5.0/include"
ignoring duplicate directory "c:/program
files/mingw/lib/gcc/../../lib/gcc/mingw32/4.5.0/include-fixed"
ignoring nonexistent directory "c:/program
files/mingw/lib/gcc/../../lib/gcc/mingw32/4.5.0/../../../../mingw32/include"
ignoring nonexistent directory "/mingw/include"
#include "..." search starts here:
#include <...> search starts here:
 c:\program files\mingw\bin\../lib/gcc/mingw32/4.5.0/../../../../include
 c:\program files\mingw\bin\../lib/gcc/mingw32/4.5.0/include
 c:\program files\mingw\bin\../lib/gcc/mingw32/4.5.0/include-fixed
End of search list.
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-std=c99' '-o'
'complexbug3.exe' '-mtune=i386' '-march=i386'
 c:/program files/mingw/bin/../libexec/gcc/mingw32/4.5.0/cc1.exe -fpreprocessed
complexbug3.i -quiet -dumpbase complexbug3.c -mtune=i386 -march=i386 -auxbase
complexbug3 -Wall -std=c99 -version -o complexbug3.s
GNU C (GCC) version 4.5.0 (mingw32)
compiled by GNU C version 4.5.0, GMP version 5.0.1, MPFR version 2.4.1, MPC
version 0.8.1
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU C (GCC) version 4.5.0 (mingw32)
compiled by GNU C version 4.5.0, GMP version 5.0.1, MPFR version 2.4.1, MPC
version 0.8.1
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 6773400e8bc9df4b012089071ac4c86b
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-std=c99' '-o'
'complexbug3.exe' '-mtune=i386' '-march=i386'
 c:/program
files/mingw/bin/../lib/gcc/mingw32/4.5.0/../../../../mingw32/bin/as.exe -o
complexbug3.o complexbug3.s
COMPILER_PATH=c:/program
files/mingw/bin/../libexec/gcc/mingw32/4.5.0/;c:/program
files/mingw/bin/../libexec/gcc/;c:/program
files/mingw/bin/../lib/gcc/mingw32/4.5.0/../../../../mingw32/bin/
LIBRARY_PATH=c:/program files/mingw/bin/../lib/gcc/mingw32/4.5.0/;c:/program
files/mingw/bin/../lib/gcc/;c:/program
files/mingw/bin/../lib/gcc/mingw32/4.5.0/../../../../mingw32/lib/;c:/program
files/mingw/bin/../lib/gcc/mingw32/4.5.0/../../../
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-std=c99' '-o'
'complexbug3.exe' '-mtune=i386' '-march=i386'
 c:/program files/mingw/bin/../libexec/gcc/mingw32/4.5.0/collect2.exe -Bdynamic
-o complexbug3.exe c:/program
files/mingw/bin/../lib/gcc/mingw32/4.5.0/../../../crt2.o c:/program
files/mingw/bin/../lib/gcc/mingw32/4.5.0/crtbegin.o -Lc:/program
files/mingw/bin/../lib/gcc/mingw32/4.5.0 -Lc:/program
files/mingw/bin/../lib/gcc -Lc:/program
files/mingw/bin/../lib/gcc/mingw32/4.5.0/../../../../mingw32/lib -Lc:/program
files/mingw/bin/../lib/gcc/mingw32/4.5.0/../../.. complexbug3.o -lmingw32
-lgcc_eh -lgcc -lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32
-lshell32 -lmingw32 -lgcc_eh -lgcc -lmoldname -lmingwex -lmsvcrt c:/program
files/mingw/bin/../lib/gcc/mingw32/4.5.0/crtend.o


The result of executing complexbug3.exe is mathematically incorrect:
(0.2 - I*0.3)*(0.3 - I*0.9) = (0.06, -0.09)


[Bug target/47473] [4.5/4.6 Regression] Incorrect computation with complex numbers when using -std=c99

2011-01-26 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47473

Richard Guenther  changed:

   What|Removed |Added

 Target||i?86-*-*
 Status|UNCONFIRMED |NEW
  Known to work||4.4.4
   Keywords||wrong-code
   Last reconfirmed||2011.01.26 11:26:29
  Component|c   |target
 Ever Confirmed|0   |1
Summary|Incorrect computation with  |[4.5/4.6 Regression]
   |complex numbers when using  |Incorrect computation with
   |-std=c99|complex numbers when using
   ||-std=c99
   Target Milestone|--- |4.5.3
  Known to fail||4.5.0, 4.5.2, 4.6.0

--- Comment #1 from Richard Guenther  2011-01-26 
11:26:29 UTC ---
Confirmed on i?86-linux.  Seems to be a problem with libgcc __mulxc3, linking
with the libgcc from 4.4 makes it work for the failing releases.


[Bug lto/47423] Many testsuite failures caused by missing gxx_visibility_sj0

2011-01-26 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47423

Richard Guenther  changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||FIXED

--- Comment #4 from Richard Guenther  2011-01-26 
11:29:46 UTC ---
Author: rguenth
Date: Wed Jan 26 11:29:42 2011
New Revision: 169284

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169284
Log:
2011-01-26  Richard Guenther  

PR lto/47423
* cgraphbuild.c (record_eh_tables): Record reference to personality
function.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/cgraphbuild.c

--- Comment #5 from Richard Guenther  2011-01-26 
11:30:58 UTC ---
Fixed.


[Bug other/47467] [4.6 Regression] hwint.h:239:3: error: implicit declaration of function 'abs'

2011-01-26 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47467

--- Comment #2 from Richard Guenther  2011-01-26 
11:39:21 UTC ---
Ah.  gcc/ada/targext.c fails to include config.h.


[Bug c/47470] Less-optimized Code Size when using Optimizations

2011-01-26 Thread Tomer.Levi at nuvoton dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47470

--- Comment #2 from Tomer Levi  2011-01-26 
11:43:36 UTC ---
Hi,
The attached assembly was produced on the following machine:

taln36-Amit<1015> gcc -v
Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/specs
Configured with: ./configure -prefix=/usr/ : (reconfigured) ./configure  :
(reconfigured) ./configure  : (reconfigured) ./configure 
Thread model: single
gcc version 3.1

In specific, i'm using CR16 architecture, which is based on GCC 3.3.2 (compiler
backend is not under GNU, only Binutils). However, the behavior i'm describing
is not related to the backend.
I have no GCC 4.* installed, hence do not know whether the described behavior
is reproducible using the latest compiler. I'll appreciate if you can verify
this.

BTW, is my assumption regarding loop pre-header is correct?
If so, is there any way to avoid it, thus to save code size?
Thanks.


[Bug other/47467] [4.6 Regression] hwint.h:239:3: error: implicit declaration of function 'abs'

2011-01-26 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47467

Richard Guenther  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED

--- Comment #3 from Richard Guenther  2011-01-26 
11:53:54 UTC ---
Author: rguenth
Date: Wed Jan 26 11:53:51 2011
New Revision: 169285

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169285
Log:
2011-01-26  Richard Guenther  

PR bootstrap/47467
* targext.c: Include config.h.
* gcc-interface/Make-lang.in (ada/targext.o): Add $(CONFIG_H)
dependency.

Modified:
trunk/gcc/ada/ChangeLog
trunk/gcc/ada/gcc-interface/Make-lang.in
trunk/gcc/ada/targext.c

--- Comment #4 from Richard Guenther  2011-01-26 
11:54:08 UTC ---
Fixed.


[Bug c/47470] Less-optimized Code Size when using Optimizations

2011-01-26 Thread mikpe at it dot uu.se
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47470

--- Comment #3 from Mikael Pettersson  2011-01-26 
12:23:03 UTC ---
(In reply to comment #2)
> Hi,
> The attached assembly was produced on the following machine:
> 
> taln36-Amit<1015> gcc -v
> Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/specs
> Configured with: ./configure -prefix=/usr/ : (reconfigured) ./configure  :
> (reconfigured) ./configure  : (reconfigured) ./configure 
> Thread model: single
> gcc version 3.1

Do that for your cross-gcc to cr16 instead.


[Bug fortran/45586] [4.6 Regression] ICE non-trivial conversion at assignment

2011-01-26 Thread matz at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45586

--- Comment #43 from Michael Matz  2011-01-26 12:39:04 
UTC ---
Yep.  With my patch the saner looking
  new_person->service.education.person.ss = *ss;
statement is generated.  It's possible that class containers actually contain
something as first component that shouldn't be looked up, then the condition
would be reversed, or that meanwhile the parent type is always reachable
via the first component.  The latter is definitely the case for types that
don't have is_class set.


[Bug c/47470] Less-optimized Code Size when using Optimizations

2011-01-26 Thread Tomer.Levi at nuvoton dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47470

--- Comment #4 from Tomer Levi  2011-01-26 
12:47:14 UTC ---
The cross-gcc compiler i'm using is hooking the default GNU verbose message,
hence i can not tell how GCC was exactly configured.
As i alredy said, the issue is reproducible on native GCC (i686-pc-linux-gnu),
so the target i'm using is not necessarily relevant here.
I'm just looking for a way to alter the compiler's behavior.

I think the cross-target is configured as follows:
../$(GCC_DIR)/configure --target=cr16c --enable-languages=c,c++
--disable-checking --prefix=$(PREFIX) --with-as=$(PREFIX)/bin/crasm
--with-ld=$(PREFIX)/bin/crld --with-headers=$(PREFIX)/include


[Bug c/47470] Less-optimized Code Size when using Optimizations

2011-01-26 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47470

--- Comment #5 from Richard Guenther  2011-01-26 
12:50:57 UTC ---
Try -fno-loop-optimize (or -fno-loop-optimize2 if that is already available).


[Bug c/47470] Less-optimized Code Size when using Optimizations

2011-01-26 Thread Tomer.Levi at nuvoton dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47470

--- Comment #6 from Tomer Levi  2011-01-26 
13:00:17 UTC ---
Hi Richard,

Thanks for your prompt reply.
Actually, -fno-loop-optimize was the first thing i've tried when facing this
issue. However, the generated code is even worse than using -Os alone.
The loop pre-header still appears, meaning dual comparison.
-fno-loop-optimize2 is not supported under GCC 3.3.2.


[Bug fortran/47474] New: Wrong code with allocatable scalar, allocatable components as function result

2011-01-26 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47474

   Summary: Wrong code with allocatable scalar, allocatable
components as function result
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Keywords: wrong-code
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: bur...@gcc.gnu.org
CC: ja...@gcc.gnu.org
Blocks: 47455


Found as part of PR 47455. For the following program

   function find_y() result(res)
 type(tx), allocatable :: res
 ! do something sensible such as "allocate(res)"
   end function find_y

the dump looks as follows

  find_y ()
  {
struct tx * res;

res.i.data = 0B;  /*  WRONG.  */
res = 0B;
/* some code.  */
return res;
  }

If one does not use a RESULT variable but "find_y" as result variable, the dump
looks as follows:

  find_y ()
  {
 __result_find_y.i.data = 0B;  /* Note: 1.  */
 return __result_find_y;
  }

Note 1: Unless "find_y" is used (e.g. "allocate(find_y)") the function is
generated with an empty body.


For some reason, the example program below does not crash here with gfortran
4.5/4.6, but the dump is wrong and I am sure it can cause problems in certain
cases. The example of bug 47455 comment 4 does crash - and I believe(d) that it
is due to this bug.

program test
type :: tx
integer, dimension(:), allocatable :: i
end type tx
type(tx) :: x
x = find_y()
if (allocated(x%i)) call abort()
contains
function find_y() result(res)
type(tx), allocatable :: res
allocate(res)
   end function find_y
end program test


[Bug c/47470] Less-optimized Code Size when using Optimizations

2011-01-26 Thread Tomer.Levi at nuvoton dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47470

--- Comment #7 from Tomer Levi  2011-01-26 
13:16:16 UTC ---
Hi,
I was able to test the behavior on GCC 3.4.5 (native):
Here, the -fno-loop-optimize (and -fno-loop-optimize2) generate an optimized
code as expected. Unfortunately, i don't have a GCC 3.3.2 native installation,
hence i can't verify whether the behavior i'm seeing using my cross-gcc is due
to the frontend or backend.


[Bug target/42894] [4.5/4.6 Regression] Invalid rtl sharing in Thumb1.

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42894

--- Comment #17 from Jakub Jelinek  2011-01-26 
13:21:46 UTC ---
Simplified testcase:

extern __thread int t;

void
foo (int a)
{
  t = a;
}

Looking at it in detail, not sure if the bug isn't earlier.
Seems the expander isn't extra careful about rtl sharing issues and relies on
subsequent unsharing of everything.  Except that unshare_all_rtl doesn't look
at constant pool expressions.

So, a fix could be something like:
--- expr.c.jj  2011-01-18 08:44:29.0 +0100
+++ expr.c  2011-01-26 13:29:34.644796679 +0100
@@ -3398,7 +3398,7 @@ emit_move_insn (rtx x, rtx y)
   && (set = single_set (last_insn)) != NULL_RTX
   && SET_DEST (set) == x
   && ! rtx_equal_p (y_cst, SET_SRC (set)))
-set_unique_reg_note (last_insn, REG_EQUAL, y_cst);
+set_unique_reg_note (last_insn, REG_EQUAL, copy_rtx (y_cst));

   return last_insn;
 }

or e.g.:
--- varasm.c.jj2011-01-25 12:58:41.0 +0100
+++ varasm.c2011-01-26 14:07:50.635389932 +0100
@@ -3518,7 +3518,7 @@ force_const_mem (enum machine_mode mode,
   pool->offset &= ~ ((align / BITS_PER_UNIT) - 1);

   desc->next = NULL;
-  desc->constant = tmp.constant;
+  desc->constant = copy_rtx (tmp.constant);
   desc->offset = pool->offset;
   desc->hash = hash;
   desc->mode = mode;

(the latter is IMHO better).  Both fix this ICE. Perhaps if
avoid_constant_pool_reference callers want to use the result in insn stream
they need to unshare it again (at least if they use it more than once), not
sure if avoid_constant_pool_reference itself shoudl do the copy_rtx or just if
callers should take care of it.  Jeff, what do you think about this?

I've tried if copy_rtx_if_shared couldn't be itself taught about unsharing the
constants, i.e. that we wouldn't unnecessarily unshare if it wasn't used
anywhere else, but it gets quite complicated because SYMBOL_REFs should be
shared, yet we want to recurse just once on their &SYMBOL_REF_CONSTANT
(x)->constant for CONSTANT_POOL_REFERENCE_P.  In copy_rtx_if_shared it can be
coded, but not sure what to do about mark_used_flags.  I think the varasm.c
patch above shouldn't be a big deal, most constants in the constant pool can be
actually shared and thus copy_rtx on them is a nop.


[Bug c/47470] Less-optimized Code Size when using Optimizations

2011-01-26 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47470

Richard Guenther  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED

--- Comment #8 from Richard Guenther  2011-01-26 
13:37:50 UTC ---
You can also try -fno-thread-jumps, but really we don't care about 3.x
anymore and for example 4.5.1 creates reasonable code for me on i?86-linux.

> gcc-4.5 -c t.c -m32 -Os
> size t.o
   textdata bss dec hex filename
 50   0   0  50  32 t.o

> gcc-3.3 -c t.c -m32 -Os
> size t.o
   textdata bss dec hex filename
 70   0   0  70  46 t.o
> gcc-3.3 -c t.c -m32
> size t.o
   textdata bss dec hex filename
 73   0   0  73  49 t.o

Thus closing as fixed.


[Bug target/47473] [4.5/4.6 Regression] Incorrect computation with complex numbers when using -std=c99

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47473

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek  2011-01-26 
13:42:50 UTC ---
Unincluded testcase:
int
main (void)
{
 long double _Complex w = 0.2L - 0.3iL;
  w = w * (0.3L - (0.0F + 1.0iF) * 0.9L);
  __builtin_printf("(0.2 - I*0.3)*(0.3 - I*0.9) = (%g, %g)\n", (double)
__real__ w, (double) __imag__ w);
  return 0;
}

On x86_64-linux the results look correct.
Using
w = w * (0.3L - 0.9iL);
instead works too.  And the results I get don't depend on libgcc version used
(4.4 behaves like 4.6).


[Bug target/46878] V850 ICE in in maybe_add_or_update_dep_1, at sched-deps.c:854

2011-01-26 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46878

Jeffrey A. Law  changed:

   What|Removed |Added

 CC||joel at gcc dot gnu.org

--- Comment #17 from Jeffrey A. Law  2011-01-26 14:10:28 
UTC ---
*** Bug 47459 has been marked as a duplicate of this bug. ***


[Bug rtl-optimization/47459] [4.6 regression] ICE in maybe_add_or_update_dep_1, at sched-deps.c:854

2011-01-26 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47459

Jeffrey A. Law  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC||law at redhat dot com
 Resolution||DUPLICATE

--- Comment #2 from Jeffrey A. Law  2011-01-26 14:10:28 
UTC ---
Duplicate of 46878 which DJ is working on.

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


[Bug target/46878] V850 ICE in in maybe_add_or_update_dep_1, at sched-deps.c:854

2011-01-26 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46878

Jeffrey A. Law  changed:

   What|Removed |Added

  Known to fail||4.6.0

--- Comment #18 from Jeffrey A. Law  2011-01-26 14:12:53 
UTC ---
Note we're seeing this failure on m68k as well and it's a regression.


[Bug target/46878] V850 ICE in in maybe_add_or_update_dep_1, at sched-deps.c:854

2011-01-26 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46878

Jeffrey A. Law  changed:

   What|Removed |Added

   Priority|P3  |P2


[Bug rtl-optimization/46878] V850 ICE in in maybe_add_or_update_dep_1, at sched-deps.c:854

2011-01-26 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46878

Jeffrey A. Law  changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
  Component|target  |rtl-optimization
   Target Milestone|--- |4.6.0


[Bug tree-optimization/47237] [4.3/4.4/4.5/4.6 Regression] builtin_apply_args broken WRT local ABI changes.

2011-01-26 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47237

Jan Hubicka  changed:

   What|Removed |Added

 Status|ASSIGNED|WAITING

--- Comment #2 from Jan Hubicka  2011-01-26 
14:06:23 UTC ---
Author: hubicka
Date: Wed Jan 26 14:06:20 2011
New Revision: 169290

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169290
Log:
PR target/47237
* cgraph.h (cgraph_local_info): New field can_change_signature.
* ipa-cp.c (ipcp_update_callgraph): Only compute args_to_skip if callee
signature can change.
(ipcp_estimate_growth): Call sequence simplify only if calle signature
can change.
(ipcp_insert_stage): Only compute args_to_skip if signature can change.
(cgraph_function_versioning): We can not change signature of functions
that don't allow that.
* lto-cgraph.c (lto_output_node): Stream local.can_change_signature.
(lto_input_node): Likewise.
* ipa-inline.c (compute_inline_parameters): Compute
local.can_change_signature.
* ipa-split.c (visit_bb): Never split away APPLY_ARGS.
* tree-sra.c (ipa_sra_preliminary_function_checks): Give up on functions
that can not change signature.
* i386.c (ix86_function_regparm, ix86_function_sseregparm,
init_cumulative_args): Do not use local calling conventions for functions
that can not change signature.

Added:
trunk/gcc/testsuite/gcc.c-torture/execute/pr47237.c
Modified:
trunk/gcc/cgraph.c
trunk/gcc/cgraph.h
trunk/gcc/cgraphunit.c
trunk/gcc/config/i386/i386.c
trunk/gcc/ipa-cp.c
trunk/gcc/ipa-inline.c
trunk/gcc/ipa-split.c
trunk/gcc/lto-cgraph.c
trunk/gcc/tree-sra.c

--- Comment #3 from Jan Hubicka  2011-01-26 
14:07:05 UTC ---
Author: hubicka
Date: Wed Jan 26 14:07:02 2011
New Revision: 169291

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169291
Log:
PR target/47237
* gcc.c-torture/execute/pr47237.c: New testcase.

* cgraph.h (cgraph_local_info): New field can_change_signature.
* ipa-cp.c (ipcp_update_callgraph): Only compute args_to_skip if callee
signature can change.
(ipcp_estimate_growth): Call sequence simplify only if calle signature
can change.
(ipcp_insert_stage): Only compute args_to_skip if signature can change.
(cgraph_function_versioning): We can not change signature of functions
that don't allow that.
* lto-cgraph.c (lto_output_node): Stream local.can_change_signature.
(lto_input_node): Likewise.
* ipa-inline.c (compute_inline_parameters): Compute
local.can_change_signature.
* ipa-split.c (visit_bb): Never split away APPLY_ARGS.
* tree-sra.c (ipa_sra_preliminary_function_checks): Give up on functions
that can not change signature.
* i386.c (ix86_function_regparm, ix86_function_sseregparm,
init_cumulative_args): Do not use local calling conventions for functions
that can not change signature.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog

--- Comment #4 from Jan Hubicka  2011-01-26 
14:17:28 UTC ---
I've commited patch fixing the testcase. H.J., can you please confirm that the
LTO 32bit faiulres are gone for  you?


[Bug tree-optimization/47190] [4.5/4.6 Regression] ICE: in function_and_variable_visibility, at ipa.c:934 with static weakref variable

2011-01-26 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47190

Jan Hubicka  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED

--- Comment #3 from Jan Hubicka  2011-01-26 
14:03:58 UTC ---
Author: hubicka
Date: Wed Jan 26 14:03:54 2011
New Revision: 169288

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169288
Log:
PR tree-optimization/47190
 * cgraphunit.c (process_common_attributes): New function.
(process_function_and_variable_attributes): Use it.
* gcc.dg/attr-weakref-3.c: New testcase.

Added:
trunk/gcc/testsuite/gcc.dg/attr-weakref-3.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cgraphunit.c
trunk/gcc/testsuite/ChangeLog

--- Comment #4 from Jan Hubicka  2011-01-26 
14:19:55 UTC ---
Fixed.


[Bug middle-end/40979] induct benchmark 60% slower when compiled with -fgraphite-identity

2011-01-26 Thread howarth at nitro dot med.uc.edu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40979

--- Comment #10 from Jack Howarth  2011-01-26 
14:20:18 UTC ---
(In reply to comment #9)
> This pr is not fixed at revision 169261 (gfc). AFAIU -ftree-loop-linear is now
> implemented through graphite. This leads to a sort of regression with respect
> to revision 169227(gfc6):
> 
> [macbook] lin/test% gfc -Ofast -ftree-loop-linear induct.f90
> [macbook] lin/test% time a.out > /dev/null
> 22.380u 0.023s 0:22.40 100.0%0+0k 0+0io 0pf+0w
> [macbook] lin/test% gfc6 -Ofast -ftree-loop-linear induct.f90
> [macbook] lin/test% time a.out > /dev/null
> 13.978u 0.019s 0:13.99 99.9%0+0k 0+0io 0pf+0w

Note that -fgraphite-identity still triggers a large number of failures in the
vect.exp testsuite when defaulted on at -O2...

http://gcc.gnu.org/ml/gcc-testresults/2011-01/msg02005.html

so the regression in induct.f90 isn't unique.


[Bug tree-optimization/47237] [4.3/4.4/4.5/4.6 Regression] builtin_apply_args broken WRT local ABI changes.

2011-01-26 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47237

--- Comment #5 from H.J. Lu  2011-01-26 14:26:08 
UTC ---
(In reply to comment #4)
> I've commited patch fixing the testcase. H.J., can you please confirm that the
> LTO 32bit faiulres are gone for  you?

Sure.


[Bug middle-end/46949] [4.6 regression] ICE when weakref is used on a definition (internal compiler error: in function_and_variable_visibility, at ipa.c:904)

2011-01-26 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46949

Jan Hubicka  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2011.01.26 14:29:32
 CC||hubicka at gcc dot gnu.org
 AssignedTo|unassigned at gcc dot   |hubicka at gcc dot gnu.org
   |gnu.org |
Summary|ICE when weakref is used on |[4.6 regression] ICE when
   |a definition (internal  |weakref is used on a
   |compiler error: in  |definition (internal
   |function_and_variable_visib |compiler error: in
   |ility, at ipa.c:904)|function_and_variable_visib
   ||ility, at ipa.c:904)
 Ever Confirmed|0   |1

--- Comment #1 from Jan Hubicka  2011-01-26 
14:29:32 UTC ---
Confirmed. Mine.


[Bug lto/43467] LTO error "bytecode stream: trying to read 0 bytes after the end of the input buffer"

2011-01-26 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43467

Jan Hubicka  changed:

   What|Removed |Added

 CC||hubicka at gcc dot gnu.org

--- Comment #6 from Jan Hubicka  2011-01-26 
14:40:34 UTC ---
Given the shape of 4.5 LTO, I would propose this for WONTFIX.


[Bug bootstrap/46856] [4.6 regression] internal compiler error in final_scan_insn breaks m68k-linux bootstrap

2011-01-26 Thread mikpe at it dot uu.se
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46856

--- Comment #6 from Mikael Pettersson  2011-01-26 
14:43:34 UTC ---
The loop in reload_combine_recognize_const_pattern contains this check:

  /* If the add clobbers another hard reg in parallel, don't move
 it past a real set of this hard reg.  */
  if (must_move_add && clobbered_regno >= 0
  && reg_state[clobbered_regno].real_store_ruid >= use_ruid)
break;

Since the moved add is a cc0 setter, it seems reasonable to check here that
it's not moved past another cc0 setter.  Replacing the previous patch with the
following also restores bootstrap (testsuite still running):

--- gcc-4.6-20110115/gcc/postreload.c.~1~   2010-12-21 15:51:42.0
+0100
+++ gcc-4.6-20110115/gcc/postreload.c   2011-01-18 20:26:39.0 +0100
@@ -1008,6 +1008,11 @@ reload_combine_recognize_const_pattern (
  if (must_move_add && clobbered_regno >= 0
  && reg_state[clobbered_regno].real_store_ruid >= use_ruid)
break;
+#if defined(HAVE_cc0)
+ /* Unbreak m68k, see PR bootstrap/46856. */
+ if (must_move_add && sets_cc0_p (PATTERN (use_insn)))
+   break;
+#endif

  gcc_assert (reg_state[regno].store_ruid <= use_ruid);
  /* Avoid moving a use of ADDREG past a point where it is stored.  */


[Bug lto/46652] undefined reference to '__udivdi3' with -flto -fuse-linker-plugin

2011-01-26 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46652

Jan Hubicka  changed:

   What|Removed |Added

 CC||dave.korn.cygwin at gmail
   ||dot com, hubicka at gcc dot
   ||gnu.org

--- Comment #5 from Jan Hubicka  2011-01-26 
14:45:25 UTC ---
Gold was updated to handle this well for binutils 2.11.1, so H.J.'s branch.
We still have issues with mainline GNU LD.  Dave, what about getting this fixed
the gold way?


[Bug tree-optimization/47190] [4.5/4.6 Regression] ICE: in function_and_variable_visibility, at ipa.c:934 with static weakref variable

2011-01-26 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47190

H.J. Lu  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|FIXED   |

--- Comment #5 from H.J. Lu  2011-01-26 14:45:49 
UTC ---
Any plan for backport? If not, we should reset target milestone.


[Bug lto/46652] undefined reference to '__udivdi3' with -flto -fuse-linker-plugin

2011-01-26 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46652

--- Comment #6 from Jan Hubicka  2011-01-26 
14:46:40 UTC ---
Gold was updated to handle this well for binutils 2.11.1, so H.J.'s branch.
We still have issues with mainline GNU LD.  Dave, what about getting this fixed
the gold way?


[Bug lto/46948] [4.6 Regression] Undefined reference errors, LTO, and visibility

2011-01-26 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46948

Jan Hubicka  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC||hubicka at gcc dot gnu.org
 Resolution||INVALID

--- Comment #2 from Jan Hubicka  2011-01-26 
14:49:02 UTC ---
This is documented feature.
See "Hidden symbols used from non-link time objects now have to be explicitly
annotated with externally_visible when the linker plugin is not used." at
changes.html

W/o handling hidden visibility the "optimistic" way, we would need extra
attributes to make LTO effective w/o plugin on shared libs (since
-fwhole-program + externally_visible flag is not too handy there given that
most programs was decorated the other way arround with hidden visibilities).


[Bug rtl-optimization/46878] [4.6 regression] V850 ICE in in maybe_add_or_update_dep_1, at sched-deps.c:854

2011-01-26 Thread mikpe at it dot uu.se
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46878

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpe at it dot uu.se

--- Comment #19 from Mikael Pettersson  2011-01-26 
14:50:28 UTC ---
(In reply to comment #18)
> Note we're seeing this failure on m68k as well and it's a regression.

Could it be related to PR46856 (a HAVE_cc0 postreload regression from r162270
that's breaking m68k-linux)?


[Bug tree-optimization/47190] [4.5 Regression] ICE: in function_and_variable_visibility, at ipa.c:934 with static weakref variable

2011-01-26 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47190

Jan Hubicka  changed:

   What|Removed |Added

Summary|[4.5/4.6 Regression] ICE:   |[4.5 Regression] ICE: in
   |in  |function_and_variable_visib
   |function_and_variable_visib |ility, at ipa.c:934 with
   |ility, at ipa.c:934 with|static weakref variable
   |static weakref variable |

--- Comment #6 from Jan Hubicka  2011-01-26 
14:55:55 UTC ---
I am surprised that this ICEs at 4.5, too, since I was under impression that
the sanity check was introduced in 4.6 timeframe.
Anyway, backporting is easy, so I will commit it to 4.5 branch if it is
approved for so.

Removing 4.6 from regression list.


[Bug c++/47475] New: Static member function template of class variadic template can't be called from the inside

2011-01-26 Thread flo.goujeon at orange dot fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47475

   Summary: Static member function template of class variadic
template can't be called from the inside
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: flo.gouj...@orange.fr


GCC 4.5 and 4.6 can't compile the following piece of code, which seems valid:

template
struct test;

template<>
struct test<>
{
template
static void f()
{
}
};

template
struct test
{
template
static void f()
{
test::f(); //compiler error here
}
};


Here is the compiler error message:

|| /usr/local/bin/g++ -c main.cpp -W -Wall -pedantic -std=c++0x
|| main.cpp: In static member function ‘static void test::f()’:
main.cpp|19 col 19| error: expected primary-expression before ‘>’ token
main.cpp|19 col 21| error: expected primary-expression before ‘)’ token
|| make: *** [main.o] Error 1


However, GCC doesn't complain with this:

int main()
{
test::f();
}



[Bug rtl-optimization/44469] [4.5/4.6 Regression] internal compiler error: in fixup_reorder_chain, at cfglayout.c:797

2011-01-26 Thread ebotcazou at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44469

Eric Botcazou  changed:

   What|Removed |Added

 CC||ebotcazou at gcc dot
   ||gnu.org
 AssignedTo|rth at gcc dot gnu.org  |ebotcazou at gcc dot
   ||gnu.org

--- Comment #7 from Eric Botcazou  2011-01-26 
15:02:49 UTC ---
Testing a fix.


[Bug fortran/47474] Wrong code with allocatable scalar, allocatable components as function result

2011-01-26 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47474

--- Comment #1 from Tobias Burnus  2011-01-26 
15:04:53 UTC ---
Patch. The order was wrong; additionally, if there is an allocatable RESULT
variable, it seems to get zero initialized via sym->value or similarly. Thus
the sym->result == result check prevents that two "res = 0B;" lines get added.


--- a/gcc/fortran/trans-decl.c
+++ b/gcc/fortran/trans-decl.c
@@ -4602,16 +4716,18 @@ gfc_generate_function_code (gfc_namespace * ns)
&& sym->attr.function
&& !sym->attr.pointer)
{
- if (sym->ts.type == BT_DERIVED
- && sym->ts.u.derived->attr.alloc_comp)
+ if (sym->attr.allocatable && sym->attr.dimension == 0
+ && sym->result == sym)
+   gfc_add_modify (&init, result, fold_convert (TREE_TYPE (result),
+null_pointer_node));
+ else if (sym->ts.type == BT_DERIVED
+ && sym->ts.u.derived->attr.alloc_comp
+ && !sym->attr.allocatable)
{
  rank = sym->as ? sym->as->rank : 0;
  tmp = gfc_nullify_alloc_comp (sym->ts.u.derived, result, rank);
  gfc_add_expr_to_block (&init, tmp);
}
- else if (sym->attr.allocatable && sym->attr.dimension == 0)
-   gfc_add_modify (&init, result, fold_convert (TREE_TYPE (result),
-null_pointer_node));
}

   if (result == NULL_TREE)


[Bug c/47473] [4.5/4.6 Regression] Incorrect computation with complex numbers when using -std=c99

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47473

Jakub Jelinek  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
  Component|target  |c
 AssignedTo|unassigned at gcc dot   |jakub at gcc dot gnu.org
   |gnu.org |

--- Comment #3 from Jakub Jelinek  2011-01-26 
15:10:07 UTC ---
Mine.


[Bug c/47473] [4.5/4.6 Regression] Incorrect computation with complex numbers when using -std=c99

2011-01-26 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47473

--- Comment #4 from H.J. Lu  2011-01-26 15:14:10 
UTC ---
It is caused by revision 147281:

http://gcc.gnu.org/ml/gcc-cvs/2009-05/msg00255.html


[Bug c/47473] [4.5/4.6 Regression] Incorrect computation with complex numbers when using -std=c99

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47473

--- Comment #5 from Jakub Jelinek  2011-01-26 
15:19:56 UTC ---
Created attachment 23132
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23132
gcc46-pr47473.patch

Untested fix.


[Bug lto/46652] undefined reference to '__udivdi3' with -flto -fuse-linker-plugin

2011-01-26 Thread davek at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46652

Dave Korn  changed:

   What|Removed |Added

 CC||davek at gcc dot gnu.org

--- Comment #7 from Dave Korn  2011-01-26 15:19:43 
UTC ---
(In reply to comment #6)
> Gold was updated to handle this well for binutils 2.11.1, so H.J.'s branch.
> We still have issues with mainline GNU LD.  Dave, what about getting this 
> fixed
> the gold way?

Seems worth investigating.  I'll take a look at it starting tomorrow sometime.


[Bug target/42894] [4.5/4.6 Regression] Invalid rtl sharing in Thumb1.

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42894

--- Comment #18 from Jakub Jelinek  2011-01-26 
15:34:38 UTC ---
Created attachment 23133
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23133
gcc46-pr42894.patch

The varasm.c alternative (untested).


[Bug middle-end/47379] fwprop1 generates bad codes for x32

2011-01-26 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47379

H.J. Lu  changed:

   What|Removed |Added

 CC||amodra at gmail dot com,
   ||ubizjak at gmail dot com

--- Comment #3 from H.J. Lu  2011-01-26 15:39:05 
UTC ---
This regression may be introduced by revision 151022:

http://gcc.gnu.org/ml/gcc-cvs/2009-08/msg00704.html

Propagate zero extended register is bad for x86-64.


[Bug c++/47476] New: [4.6 Regression] [C++0x] ICE in potential_constant_expression_1

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47476

   Summary: [4.6 Regression] [C++0x] ICE in
potential_constant_expression_1
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: ja...@gcc.gnu.org
ReportedBy: ja...@gcc.gnu.org


int
foo (int a, int b)
{ 
  const bool c ((a != 0) == (b != 26));
  return c;
}

ICEs with -std=c++0x with:
rh672156.ii:4:38: sorry, unimplemented: unexpected ast of kind truth_xor_expr
rh672156.ii:4:38: internal compiler error: in potential_constant_expression_1,
at cp/semantics.c:7709


[Bug c++/47476] [4.6 Regression] [C++0x] ICE in potential_constant_expression_1

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47476

Jakub Jelinek  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2011.01.26 16:21:06
  Known to work||4.5.2
   Target Milestone|--- |4.6.0
 Ever Confirmed|0   |1
  Known to fail||4.6.0

--- Comment #1 from Jakub Jelinek  2011-01-26 
16:21:06 UTC ---
Works in 4.5.


[Bug rtl-optimization/46878] [4.6 regression] V850 ICE in in maybe_add_or_update_dep_1, at sched-deps.c:854

2011-01-26 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46878

--- Comment #20 from Jeffrey A. Law  2011-01-26 14:56:14 
UTC ---
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 01/26/11 07:51, mikpe at it dot uu.se wrote:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46878
> 
> Mikael Pettersson  changed:
> 
>What|Removed |Added
> 
>  CC||mikpe at it dot uu.se
> 
> --- Comment #19 from Mikael Pettersson  2011-01-26 
> 14:50:28 UTC ---
> (In reply to comment #18)
>> Note we're seeing this failure on m68k as well and it's a regression.
> 
> Could it be related to PR46856 (a HAVE_cc0 postreload regression from r162270
> that's breaking m68k-linux)?
It's related in the sense that both are problems with cc0 targets, but I
doubt the underlying root cause is the same.

jeff

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJNQDYBAAoJEBRtltQi2kC7r+cH/28xx5O9b7ll8SqYuNMwAIQP
vJEStmdjxFEP84DOXd7WPPPyW4qwdEfy2ufFCgorX9MYbyNkxAYGcT96CQUX5jVU
z/u+69tzrLwDwcNQ75tLb+THJVwiyUCIz52bNdXo2rHWKGy2yXM+97zdhnBmSNoA
Vrr+bLnESl0WiDFxdwlSJALTAEXyRaj4iXR+LR8yN/ewt1bsTt4hIaMmyKcNLuV+
ASOnhFl4x/q+QoURdj9Fd8d2taLVGbKtCeZkPl4nktTp6NvQl4vGBeKgZkHNkZPU
RITPyew6a3ISICFNeXlsDjbAnToJQcPoa187AcSlwOLCLdoES53B/qUEZdlZHDc=
=uQnW
-END PGP SIGNATURE-

--- Comment #21 from Jeffrey A. Law  2011-01-26 15:23:15 
UTC ---
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 01/25/11 16:42, dj at redhat dot com wrote:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46878
> 
> DJ Delorie  changed:
> 
>What|Removed |Added
> 
>   Attachment #23074|0   |1
> is obsolete||
> 
> --- Comment #16 from DJ Delorie  2011-01-25 23:41:53 
> UTC ---
> Created attachment 23126
>   --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23126
> alternate patch 3
> 
> Another patch attempt.  In this case, we add a check for the implied 
> dependency
> created by a cc0 setter/user pair to insn_a_feeds_b() so that try_combine()
> knows that the cc0 setter is needed if the user is needed.
I think you're on the right track here.  I want to look at it a bit
more, but this might be "it".

FWIW, this code was a relatively recent addition to combine to support
four insn combinations and just happens to be the code I was concerned
might not be cc0-safe.

jeff

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJNQDxTAAoJEBRtltQi2kC7DqEH/jTegxTzt00RTBmi9pfN77TY
4XdhGv8KZsiFsiEp+IsBdQWhY7xJ12nHwjrBGqz72hDDSoYMflrceIhYqhvPqs3E
BzIGmsccr5s+LD/qBQi8bqENOxlADytFia8QpRn22s17v1VhLnk321pFHvS2552G
RDASg+ZPnYwrQL9dSKNQ4DKN/W3sTSGe3wLjpSYlhUp4jZ3MjLCMhkLAWaRZ8tWi
Q+SfJz5a9bX8sgGCG1Utio0kEhqLYzkgxvgNJoi04059WWuB6uwlsWGcjbd23UTA
hjnPRFxpetJp4En7NCOW2eo+2AC97NM909aXwAnvJWUBezDSYZu8fhSbE1rQrjA=
=lw6z
-END PGP SIGNATURE-

--- Comment #22 from Jeffrey A. Law  2011-01-26 16:40:32 
UTC ---
Patch attempt #3 is OK.  Please keep an eye out for complains about cc0 targets
not creating loop (dbra) insns.  That's my only worry.  I don't think it's
going to be a problem, but I can't completely rule it out.

Thanks for your patience,
Jeff


[Bug c++/47475] [C++0x] Static member function template of class variadic template can't be called from the inside

2011-01-26 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47475

Jonathan Wakely  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID

--- Comment #1 from Jonathan Wakely  2011-01-26 
16:41:26 UTC ---
The diagnostic isn't very good, but the code is invalid, it should be:

test::template f();


[Bug rtl-optimization/47477] New: [4.6 regression] Sub-optimal mov at end of method

2011-01-26 Thread tony.poppleton at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47477

   Summary: [4.6 regression] Sub-optimal mov at end of method
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: rtl-optimization
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: tony.popple...@gmail.com
  Host: Linux x86-64


Whilst investigating PR35926, I noticed a slight inefficiency in code generated
by 4.6.0 (20110115) versus that of 4.5.1.

Duplicating the C code here from that PR for easy reference:

typedef struct toto_s *toto_t;
toto_t add (toto_t a, toto_t b) {
  int64_t tmp = (int64_t)(intptr_t)a + ((int64_t)(intptr_t)b&~1L);
  return (toto_t)(intptr_t) tmp;
}

The ASM generated by 4.6.0 with flags -O3 is:

.file   "PR35926.c"
.text
.p2align 4,,15
.globl  add
.type   add, @function
add:
.LFB0:
.cfi_startproc
pushl   %ebx
.cfi_def_cfa_offset 8
.cfi_offset 3, -8
movl12(%esp), %eax
movl8(%esp), %ecx
popl%ebx
.cfi_def_cfa_offset 4
.cfi_restore 3
andl$-2, %eax
addl%eax, %ecx   < order of regs inverted
movl%ecx, %eax   < resulting in unnecessary movl
ret
.cfi_endproc
.LFE0:
.size   add, .-add
.ident  "GCC: (GNU) 4.6.0 20110115 (experimental)"
.section.note.GNU-stack,"",@progbits

In 4.5.1, the last bit is one instruction shorter, with just:
addl%ecx, %eax
ret

A bug search revealed a similar sounding PR44249, however that is a regression
in 4.5 too apparently, yet this only affects 4.6.


[Bug c++/47476] [4.6 Regression] [C++0x] ICE in potential_constant_expression_1

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47476

--- Comment #2 from Jakub Jelinek  2011-01-26 
16:43:21 UTC ---
Created attachment 23134
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23134
gcc46-pr47476.patch

Untested fix.


[Bug rtl-optimization/47459] [4.6 regression] ICE in maybe_add_or_update_dep_1, at sched-deps.c:854

2011-01-26 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47459

--- Comment #3 from Jeffrey A. Law  2011-01-26 16:43:43 
UTC ---
Joel, can you verify the fix for 46878 fixes his problem on the m68k.  I'm
pretty sure it will, but an independent verification would be good.

Thanks,
Jeff


[Bug c++/47475] [C++0x] Static member function template of class variadic template can't be called from the inside

2011-01-26 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47475

--- Comment #2 from Jonathan Wakely  2011-01-26 
16:47:53 UTC ---
Note that this is not related to variadic templates, this gives the same error
using no C++0x features:

template
struct test;

template<>
struct test
{
template
static void f()
{
}
};

template
struct test
{
template
static void f()
{
test::f(); //compiler error here
}
};


[Bug c++/47475] [C++0x] Static member function template of class variadic template can't be called from the inside

2011-01-26 Thread flo.goujeon at orange dot fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47475

--- Comment #3 from flo.goujeon at orange dot fr 2011-01-26 16:54:18 UTC ---
Oh, so that is the purpose of the 'template' keyword in nested-name-specifier.
That's tricky.
Thank you Jonathan, and sorry about this invalid report.


[Bug fortran/47474] Wrong code with allocatable scalar, allocatable components as function result

2011-01-26 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47474

--- Comment #2 from Tobias Burnus  2011-01-26 
16:58:28 UTC ---
Submitted patch: http://gcc.gnu.org/ml/fortran/2011-01/msg00235.html


[Bug rtl-optimization/46856] [4.6 regression] internal compiler error in final_scan_insn breaks m68k-linux bootstrap

2011-01-26 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46856

Jeffrey A. Law  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.01.26 17:16:52
 CC||law at redhat dot com
  Component|bootstrap   |rtl-optimization
 AssignedTo|unassigned at gcc dot   |law at redhat dot com
   |gnu.org |
 Ever Confirmed|0   |1

--- Comment #7 from Jeffrey A. Law  2011-01-26 17:16:52 
UTC ---
More correctly, you can never move any insn between an explicit cc0 setter and
cc0 user on a cc0 target.

Regardless, I think you've nailed this one down.

The comment needs some minor work.   Rather than referring to a PR, we strongly
prefer to describe why the code works the way it does in the code itself.  We
do this so that someone reading this code later can quickly understand its
relevance without having to fire up a browser to read the bug database.

Something as simple as "do not separate a cc0 setter and cc0 user" is
sufficient.  You should also submit the testcase for the regression suite. 
Just name it pr46856.c and put it in gcc/testsuite/gcc.c-torture/compile

I don't see a login for you on gcc.gnu.org, so I'm going to assume you don't
have commit privs.  I'll go ahead and make the cleanups mentioned above and
submit the patch.  You can review the submission so that you know proper form
if you choose to submit patches again in the future.


[Bug fortran/47472] Rules printed by -M option contains duplicate slash when -J option is used

2011-01-26 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47472

--- Comment #2 from Tobias Burnus  2011-01-26 
17:17:04 UTC ---
Draft patch completely untested (not even compiled):

--- a/gcc/fortran/options.c
+++ b/gcc/fortran/options.c
@@ -463,9 +463,10 @@ gfc_handle_module_path_options (const char *arg)

   gfc_option.module_dir = (char *) gfc_getmem (strlen (arg) + 2);
   strcpy (gfc_option.module_dir, arg);
-  strcat (gfc_option.module_dir, "/");

   gfc_add_include_path (gfc_option.module_dir, true, false);
+
+  strcat (gfc_option.module_dir, "/");
 }


[Bug c++/47478] New: internal compiler error

2011-01-26 Thread aleaverfay at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47478

   Summary: internal compiler error
   Product: gcc
   Version: 4.4.5
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: aleaver...@gmail.com


This file compiles just fine with earlier versions of G++.  The compiler error
appears at the end of a function which is the last function in the file.

$ g++ -v
Using built-in specs.
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro
4.4.4-14ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr
--program-suffix=-4.4 --enable-shared --enable-multiarch
--enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib
--without-included-gettext --enable-threads=posix
--with-gxx-include-dir=/usr/include/c++/4.4 --libdir=/usr/lib --enable-nls
--with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc
--disable-werror --with-arch-32=i686 --with-tune=generic
--enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu
--target=x86_64-linux-gnu
Thread model: posix
gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu5) 

...

Command line:

$ g++ -save-temps -o
build/src/release/linux/2.6/64/x86/gcc/protocols/loophash/LoopHashMap.os -c
-std=c++98 -pipe -ffor-scope -W -Wall -pedantic -Wno-long-long -O3 -ffast-math
-funroll-loops -finline-functions -finline-limit=2 -s -Wno-unused-variable
-fPIC -DNDEBUG -Isrc -Iexternal/include -Isrc/platform/linux/64/gcc
-Isrc/platform/linux/64 -Isrc/platform/linux -Iexternal/boost_1_38_0
-I/usr/local/include -I/usr/include src/protocols/loophash/LoopHashMap.cc 
g++: warning: -pipe ignored because -save-temps specified
In file included from src/protocols/loophash/LoopHashMap.cc:18:
src/protocols/loophash/LoopHashMap.hh:120: warning: type qualifiers ignored on
function return type
src/protocols/loophash/LoopHashMap.cc:360: warning: type qualifiers ignored on
function return type
In file included from external/boost_1_38_0/boost/unordered_map.hpp:17,
 from src/protocols/loophash/LoopHashMap.hh:22,
 from src/protocols/loophash/LoopHashMap.cc:18:
external/boost_1_38_0/boost/unordered/detail/hash_table_impl.hpp: In member
function ‘typename
boost::unordered_detail::hash_types_equivalent_keys,
Key, Hash, Pred, Alloc>::iterator boost::unordered_multimap::insert(const std::pair&) [with Key = long unsigned int, T
= long unsigned int, Hash = protocols::match::bin_index_hasher, Pred =
std::equal_to, Alloc = std::allocator >]’:
external/boost_1_38_0/boost/unordered/detail/hash_table_impl.hpp:101: warning:
‘’ may be used uninitialized in this function
external/boost_1_38_0/boost/unordered/detail/hash_table_impl.hpp:210: note:
‘’ was declared here
src/protocols/loophash/LoopHashMap.cc: In member function ‘void
protocols::loophash::LoopHashMap::read_db(std::string, std::pair, std::map, std::allocator > >&)’:
src/protocols/loophash/LoopHashMap.cc:436: internal compiler error:
Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.


[Bug testsuite/47479] New: make -j 12 RUNTESTFLAGS="--target_board 'unix{-m32,}'" isn't parallelized

2011-01-26 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47479

   Summary: make -j 12 RUNTESTFLAGS="--target_board 'unix{-m32,}'"
isn't parallelized
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: testsuite
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: hjl.to...@gmail.com
CC: ja...@redhat.com


On Linux/x86-64 with 12 cores,

make -j 12 check RUNTESTFLAGS="--target_board 'unix{-m32,}'"

takes 1 hour and 44 minutes while

make -j 12 check

only takes 20 minutes. I got

[hjl@gnu-34 bld]$ ls gcc/testsuite
g++  gcc  gfortran  objc
[hjl@gnu-34 bld]$ 

vs

[hjl@gnu-34 bld]$ ls gcc/testsuite
g++   g++2  gcc1  gcc3  gcc5  gfortran   gfortran2  objc
g++1  gcc   gcc2  gcc4  gcc6  gfortran1  gfortran3  objc1
[hjl@gnu-34 bld]$


[Bug c++/47478] internal compiler error

2011-01-26 Thread aleaverfay at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47478

--- Comment #1 from Andrew Leaver-Fay  2011-01-26 
17:30:58 UTC ---
Created attachment 23135
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23135
-save-temps file (.ii) that produces this crash (too big to upload without
bzipping it -- sorry!)


[Bug testsuite/47479] make -j 12 RUNTESTFLAGS="--target_board 'unix{-m32,}'" isn't parallelized

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47479

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #1 from Jakub Jelinek  2011-01-26 
17:38:48 UTC ---
Just use RUNTESTFLAGS='--target_board=unix\{-m32,\}'
which is parallelized.


[Bug rtl-optimization/42502] [4.4/4.5 Regression] Poor register allocation in very simple code

2011-01-26 Thread ebotcazou at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42502

Eric Botcazou  changed:

   What|Removed |Added

 CC||ebotcazou at gcc dot
   ||gnu.org
Summary|[4.4/4.5/4.6 Regression]|[4.4/4.5 Regression] Poor
   |Bad register allocation in  |register allocation in very
   |a very simple code  |simple code
  Known to fail||

--- Comment #8 from Eric Botcazou  2011-01-26 
17:49:06 UTC ---
Essentially fixed on the mainline.


[Bug target/46997] new ia64 vector instructions are broken on HP-UX (big-endian)

2011-01-26 Thread sje at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46997

--- Comment #2 from Steve Ellcey  2011-01-26 17:50:05 
UTC ---
Author: sje
Date: Wed Jan 26 17:49:56 2011
New Revision: 169296

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169296
Log:
2011-01-26  Steve Ellcey  

PR target/46997
* config/ia64/vect.md (mulv2si3): Enable and fix for TARGET_BIG_ENDIAN.
(*mux2): Ditto.
(vec_extract_evenodd_help): Ditto.
(vec_extract_evenv4hi): Ditto.
(vec_extract_oddv4hi): Ditto.
(vec_interleave_lowv2si): Ditto.
(vec_interleave_highv2si): Ditto.
(vec_extract_evenv2si): Ditto.
(vec_extract_oddv2si: Ditto.
(vec_pack_trunc_v2si): Ditto.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/ia64/vect.md


[Bug testsuite/47479] make -j 12 RUNTESTFLAGS="--target_board 'unix{-m32,}'" isn't parallelized

2011-01-26 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47479

--- Comment #2 from H.J. Lu  2011-01-26 17:51:36 
UTC ---
(In reply to comment #1)
> Just use RUNTESTFLAGS='--target_board=unix\{-m32,\}'
> which is parallelized.

Is there a way to paralelize --target_board 'unix{-m32,}'?


[Bug lto/43467] LTO error "bytecode stream: trying to read 0 bytes after the end of the input buffer"

2011-01-26 Thread d.g.gorbachev at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43467

Dmitry Gorbachev  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||WONTFIX

--- Comment #7 from Dmitry Gorbachev  
2011-01-26 17:55:57 UTC ---
.


[Bug rtl-optimization/47270] [4.4/4.5/4.6 Regression] GCC produces unnecessary code on -O2 and -O3 levels

2011-01-26 Thread d.g.gorbachev at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47270

Dmitry Gorbachev  changed:

   What|Removed |Added

   Keywords||missed-optimization
Summary|[4.4/4.5/4.6 Regression]|[4.4/4.5/4.6 Regression]
   |GCC produces|GCC produces unnecessary
   |unnecessary/wrong code on   |code on -O2 and -O3 levels
   |-O2 and -O3 levels  |

--- Comment #2 from Dmitry Gorbachev  
2011-01-26 18:03:33 UTC ---
Ah, yes; changed the summary.


[Bug driver/47480] New: GCC driver names a resolution file after the last argument to the linker

2011-01-26 Thread d.g.gorbachev at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47480

   Summary: GCC driver names a resolution file after the last
argument to the linker
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: trivial
  Priority: P3
 Component: driver
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: d.g.gorbac...@gmail.com


$ echo 'int main(void){}' > main.c
$ gcc -flto main.c -Wl,-s -save-temps
[...]
$ echo *.res
main.res
$ gcc -flto -c main.c
$ gcc -flto main.o -Wl,-s -save-temps
[...]
$ echo *.res
-s.res main.res

It looks ugly...


[Bug target/44031] [4.4/4.5 Regression] ice in subst_reloads, at reload.c:6327

2011-01-26 Thread ebotcazou at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44031

Eric Botcazou  changed:

   What|Removed |Added

 CC||ebotcazou at gcc dot
   ||gnu.org
  Known to work||4.6.0
   Target Milestone|4.6.0   |4.4.6
Summary|[4.4/4.5/4.6 Regression]|[4.4/4.5 Regression] ice in
   |ice in subst_reloads, at|subst_reloads, at
   |reload.c:6327   |reload.c:6327
  Known to fail||4.5.3

--- Comment #7 from Eric Botcazou  2011-01-26 
18:13:17 UTC ---
Works on the mainline, still fails on the 4.5 branch.


[Bug tree-optimization/47382] [4.6 Regression] g++.dg/ipa/devirt-d-1.C FAILs with -finline-functions

2011-01-26 Thread jamborm at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47382

Martin Jambor  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED

--- Comment #4 from Martin Jambor  2011-01-26 
18:21:06 UTC ---
Fixed. I have filed PR 47462 for the xfailed testcase.


[Bug c++/47478] internal compiler error

2011-01-26 Thread aleaverfay at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47478

--- Comment #2 from Andrew Leaver-Fay  2011-01-26 
18:21:36 UTC ---
I'd love a suggestion on how the code could be changed so that I no longer get
this segfault.


[Bug middle-end/47466] c++ __builtin_expect() regression

2011-01-26 Thread guillaume at morinfr dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47466

--- Comment #1 from Guillaume Morin  2011-01-26 
18:26:34 UTC ---
A recent 4.6 snapshot shows the same issue

.file"foo.cpp"
.text
.p2align 4,,15
.globltest_expect(EnumStruct const&)
.typetest_expect(EnumStruct const&), @function
test_expect(EnumStruct const&):
.LFB4:
.cfi_startproc
subq$8, %rsp
.cfi_def_cfa_offset 16
movsbl(%rdi), %edx
xorl%eax, %eax
testl%edx, %edx
je.L2
cmpl$1, %edx
je.L2
callunlikelyCall()
movl$1, %eax
.L2:
addq$8, %rsp
.cfi_def_cfa_offset 8
ret
.cfi_endproc
.LFE4:
.sizetest_expect(EnumStruct const&), .-test_expect(EnumStruct const&)
.p2align 4,,15
.globltest_expect2(EnumStruct const&)
.typetest_expect2(EnumStruct const&), @function
test_expect2(EnumStruct const&):
.LFB5:
.cfi_startproc
subq$8, %rsp
.cfi_def_cfa_offset 16
movsbl(%rdi), %edx
xorl%eax, %eax
testl%edx, %edx
jne.L10
.L7:
addq$8, %rsp
.cfi_remember_state
.cfi_def_cfa_offset 8
ret
.L10:
.cfi_restore_state
subl$1, %edx
je.L7
.p2align 4,,5
callunlikelyCall()
movl$1, %eax
jmp.L7
.cfi_endproc
.LFE5:
.sizetest_expect2(EnumStruct const&), .-test_expect2(EnumStruct const&)
.ident"GCC: (Debian 20110116-1) 4.6.0 20110116 (experimental) [trunk
revision 168860]"
.section.note.GNU-stack,"",@progbits


[Bug tree-optimization/47228] [4.6 Regression] wrong code with loop

2011-01-26 Thread jamborm at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47228

Martin Jambor  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
 AssignedTo|unassigned at gcc dot   |jamborm at gcc dot gnu.org
   |gnu.org |

--- Comment #5 from Martin Jambor  2011-01-26 
18:28:17 UTC ---
OK, let me have a look at it then...


[Bug fortran/47455] [4.6 Regression][OOP] internal compiler error: in fold_convert_loc, at fold-const.c:2028

2011-01-26 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47455

--- Comment #5 from Tobias Burnus  2011-01-26 
18:47:00 UTC ---
Created attachment 23136
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23136
Test case (hopefully correct)

Updated test case, hopefully correct. Fails with gfortran due to this PR - and
with ifort 11.1 and crayftn due to other compiler bugs; thus, I could not
properly test it.

The result with the patch is kind of OK for the pointer version (find_x):
  this%x = this%find_x(that, .false.)
is translated into:
  *this->_data->x = *this->_vptr->find_x ((struct __class_class_t_T *) this,
  &that, &C.1605);

so far so good. But for a normal assignment, allocatable components require an
allocate + deep copy with memcpy.


For the allocatable, there is an additional issue:
  this%y = this%find_y()
is translated into
  this->_data->y = *this->_vptr->find_y ((struct __class_class_t_T *) this);

At a glance that looks OK. However, it immediately segfaults. One thing which 
and fails immediately (segfault) - though, I do not see why it segfaults.


[Bug testsuite/47479] make -j 12 RUNTESTFLAGS="--target_board 'unix{-m32,}'" isn't parallelized

2011-01-26 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47479

--- Comment #3 from H.J. Lu  2011-01-26 19:11:31 
UTC ---
I tried RUNTESTFLAGS="--target_board 'unix\{-m32,\}'". It doesn't
look like parallelized:

[hjl@gnu-32 gcc]$ ls build-x86_64-linux/gcc/testsuite
g++  gcc  gfortran  objc
[hjl@gnu-32 gcc]$


[Bug c++/47478] internal compiler error

2011-01-26 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47478

Jonathan Wakely  changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.01.26 19:13:11
 Ever Confirmed|0   |1

--- Comment #3 from Jonathan Wakely  2011-01-26 
19:13:11 UTC ---
confirmed

for 4.4.3 I get an ICE with
g++ LoopHashMap.ii   -O2  -funroll-loops -finline-functions -finline-limit=488
but not with
g++ LoopHashMap.ii   -O2  -funroll-loops -finline-functions -finline-limit=487

(the only difference is the inline-limit)

(In reply to comment #2)
> I'd love a suggestion on how the code could be changed so that I no longer get
> this segfault.

use a lower value for -finline-limit


[Bug debug/45454] [4.6 Regression] ICE: in verify_target_availability, at sel-sched.c:1614

2011-01-26 Thread aoliva at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45454

Alexandre Oliva  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED

--- Comment #8 from Alexandre Oliva  2011-01-26 
19:58:20 UTC ---
Oops, actually marked as fixed this time.


[Bug target/42894] [4.5/4.6 Regression] Invalid rtl sharing in Thumb1.

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42894

--- Comment #19 from Jakub Jelinek  2011-01-26 
20:04:55 UTC ---
Fixed up patch posted:
http://gcc.gnu.org/ml/gcc-patches/2011-01/msg01916.html
(one } was missing in the testcase).


[Bug c/47473] [4.5/4.6 Regression] Incorrect computation with complex numbers when using -std=c99

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47473

--- Comment #6 from Jakub Jelinek  2011-01-26 
20:07:02 UTC ---
Author: jakub
Date: Wed Jan 26 20:06:57 2011
New Revision: 169299

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169299
Log:
PR c/47473
* c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
REAL_TYPE.

* gcc.dg/torture/pr47473.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/torture/pr47473.c
Modified:
trunk/gcc/c-family/ChangeLog
trunk/gcc/c-family/c-lex.c
trunk/gcc/testsuite/ChangeLog


[Bug c/47473] [4.5 Regression] Incorrect computation with complex numbers when using -std=c99

2011-01-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47473

Jakub Jelinek  changed:

   What|Removed |Added

  Known to work||4.6.0
Summary|[4.5/4.6 Regression]|[4.5 Regression] Incorrect
   |Incorrect computation with  |computation with complex
   |complex numbers when using  |numbers when using -std=c99
   |-std=c99|
  Known to fail|4.6.0   |

--- Comment #7 from Jakub Jelinek  2011-01-26 
20:08:40 UTC ---
Fixed on the trunk so far.


[Bug tree-optimization/47228] [4.6 Regression] wrong code with loop

2011-01-26 Thread jamborm at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47228

--- Comment #6 from Martin Jambor  2011-01-26 
20:28:37 UTC ---
Created attachment 23137
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23137
untested patch


[Bug middle-end/47481] New: i386-rtems* Ada ICE at reload1.c:2105

2011-01-26 Thread joel at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47481

   Summary: i386-rtems* Ada ICE at reload1.c:2105
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: middle-end
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: j...@gcc.gnu.org


This is definitely a regression since 4.5.2.

/users/joel/test-gcc/b-gccada-i386/./gcc/xgcc
-B/users/joel/test-gcc/b-gccada-i386/./gcc/ -nostdinc
-B/users/joel/test-gcc/b-gccada-i386/i386-rtems4.11/newlib/ -isystem
/users/joel/test-gcc/b-gccada-i386/i386-rtems4.11/newlib/targ-include -isystem
/users/joel/test-gcc/gcc-svn/newlib/libc/include
-B/users/joel/test-gcc/install-svn/i386-rtems4.11/bin/
-B/users/joel/test-gcc/install-svn/i386-rtems4.11/lib/ -isystem
/users/joel/test-gcc/install-svn/i386-rtems4.11/include -isystem
/users/joel/test-gcc/install-svn/i386-rtems4.11/sys-include-c -g -O2
-msoft-float  -W -Wall -gnatpg -msoft-float  a-tiunio.ads -o a-tiunio.o
make[6]: *** [a-nllefu.o] Error 1
make[6]: *** Waiting for unfinished jobs
a-ngelfu.adb: In function
'Ada.Numerics.Long_Long_Complex_Elementary_Functions.Elementary_Functions.Cos.2xnn':
a-ngelfu.adb:533:8: error: unable to find a register to spill in class 'CREG'
a-ngelfu.adb:533:8: error: this is the insn:
(insn 22 18 23 2 (parallel [
(set (reg:SI 74)
(const_int 0 [0]))
(set (reg:SI 6 bp [72])
(plus:SI (ashift:SI (reg:SI 74)
(const_int 2 [0x2]))
(reg:SI 6 bp [72])))
(set (reg:SI 3 bx [73])
(plus:SI (ashift:SI (reg:SI 74)
(const_int 2 [0x2]))
(reg:SI 3 bx [73])))
(set (mem:BLK (reg:SI 6 bp [72]) [0 S12 A8])
(mem/c:BLK (reg:SI 3 bx [73]) [0 S12 A128]))
(use (reg:SI 74))
]) a-ngelfu.adb:532 677 {*rep_movsi}
 (expr_list:REG_UNUSED (reg:SI 74)
(expr_list:REG_UNUSED (reg:SI 3 bx [73])
(expr_list:REG_UNUSED (reg:SI 6 bp [72])
(nil)
+===GNAT BUG DETECTED==+
| 4.6.0 20110126 (experimental) [trunk revision 169296] (i386-pc-rtems4.11) GCC
error:|
| in spill_failure, at reload1.c:2105  |
| Error detected around a-ngelfu.adb:533:8 |
| Please submit a bug report; see http://gcc.gnu.org/bugs.html.|
| Use a subject line meaningful to you and us to track the bug.|
| Include the entire contents of this bug box in the report.   |
| Include the exact gcc or gnatmake command that you entered.  |
| Also include sources listed below in gnatchop format |
| (concatenated together with no headers between files).   |
+==+


[Bug other/47467] [4.6 Regression] hwint.h:239:3: error: implicit declaration of function 'abs'

2011-01-26 Thread joel at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47467

Joel Sherrill  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 CC||joel at gcc dot gnu.org
 Resolution|FIXED   |

--- Comment #5 from Joel Sherrill  2011-01-26 20:45:17 
UTC ---
(In reply to comment #4)
> Fixed.

Unfortunately, this fix broke cross builds.  :(

/users/joel/test-gcc/b-gccada-i386/./gcc/xgcc
-B/users/joel/test-gcc/b-gccada-i386/./gcc/ -nostdinc
-B/users/joel/test-gcc/b-gccada-i386/i386-rtems4.11/newlib/ -isystem
/users/joel/test-gcc/b-gccada-i386/i386-rtems4.11/newlib/targ-include -isystem
/users/joel/test-gcc/gcc-svn/newlib/libc/include
-B/users/joel/test-gcc/install-svn/i386-rtems4.11/bin/
-B/users/joel/test-gcc/install-svn/i386-rtems4.11/lib/ -isystem
/users/joel/test-gcc/install-svn/i386-rtems4.11/include -isystem
/users/joel/test-gcc/install-svn/i386-rtems4.11/sys-include-c
-DCROSS_DIRECTORY_STRUCTURE -DIN_GCC  `echo -g -O2  -fexceptions -DIN_RTS
-DHAVE_GETIPINFO -mtune=i486 |sed -e 's/-pedantic//g' -e 's/-Wtraditional//g'` 
\
 -I. -I.. -I../.. -I/users/joel/test-gcc/gcc-svn/gcc/ada
-I/users/joel/test-gcc/gcc-svn/gcc/../include
-I/users/joel/test-gcc/gcc-svn/gcc \
targext.c -o targext.o
In file included from targext.c:37:0:
/users/joel/test-gcc/gcc-svn/gcc/system.h:369:23: fatal error: sys/mman.h: No
such file or directory

Apparently targext.c is compiled both cross and native.  RTEMS does not have
sys/mman.h.  config.h indicates that it is present.

I dropped targext.c from the target library list and got far enough to get an
ICE on something else.  I am building another target now.

Is targext.c really supposed to be part of LIBGNAT_SRCS for the target or is
this just a host side compiler helper?


[Bug rtl-optimization/44469] [4.5/4.6 Regression] internal compiler error: in fixup_reorder_chain, at cfglayout.c:797

2011-01-26 Thread ebotcazou at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44469

--- Comment #8 from Eric Botcazou  2011-01-26 
21:12:01 UTC ---
Author: ebotcazou
Date: Wed Jan 26 21:11:57 2011
New Revision: 169304

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169304
Log:
PR rtl-optimization/44469
* cfgcleanup.c (try_optimize_cfg): Iterate in CFG layout mode too
after removing trivially dead basic blocks.

Added:
trunk/gcc/testsuite/gcc.c-torture/compile/20110126-1.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cfgcleanup.c
trunk/gcc/testsuite/ChangeLog


Vai alga 4090 USD menesi tevi interesee?

2011-01-26 Thread Zigmars
Hello!

Tev telefona numurs izmainiijies?
Man paradijas reals risinajums Tavam problemam, tapec gribeju piezvanit, bet 
telefons izslegts.
Skaidrs, lai vai tur kas, man viss super, jo es dabuju fantastiski labu darbu,
kas ir vienkarshaks par vienkarshu un 3825 USD menesi bez problemam man atlec. 
Vai nu piezvani man, vai ieej http://www.kastens.lv

tur ir gan video, gan apraksti, kas un kaa jaadara!




  1   2   >