[Bug target/22134] [4.1 Regression] vf_hue.c:54: internal compiler error: in final_scan_insn, at final.c:2419

2005-06-22 Thread uros at kss-loka dot si

--- Additional Comments From uros at kss-loka dot si  2005-06-22 06:08 
---
Uh, it was a cut-n-pasto...

-- 
   What|Removed |Added

URL||http://gcc.gnu.org/ml/gcc-
   ||patches/2005-
   ||06/msg01759.html
   Keywords||patch


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


[Bug target/19530] MMX load intrinsic produces SSE superfluous instructions (movlps)

2005-06-22 Thread uros at kss-loka dot si

--- Additional Comments From uros at kss-loka dot si  2005-06-22 07:02 
---
As this bug is getting a bit confused, I have summarised testcases below:
--cut here--
#include mmintrin.h
__m64 moo_1 (int i)
{
  __m64 tmp = _mm_cvtsi32_si64 (i);
  return tmp;
}

__m64 moo_2 (__m64 mmx1)
{
  __m64 mmx2 = _mm_unpacklo_pi8 (mmx1, mmx1);
  return mmx2;
}

void moo_3 (__m64 i, unsigned int *r)
{
  unsigned int tmp = __builtin_ia32_vec_ext_v2si (i, 0);
  *r = tmp;
}
--cut here--

I think that the problems described were fixed by PR target/21981. With a patch 
from comment #20, 'gcc -O2 -msse3' produces following asm:
moo_1:
pushl   %ebp
movl%esp, %ebp
movd8(%ebp), %mm0
popl%ebp
ret

moo_2:
pushl   %ebp
punpcklbw   %mm0, %mm0
movl%esp, %ebp
popl%ebp
ret

moo_3:
pushl   %ebp
movl%esp, %ebp
movl8(%ebp), %eax
movd%mm0, (%eax)
emms
popl%ebp
ret

I have checked, that there is no SSE instructions present for any of testcases 
for -mmmx, -msse, -msse2 and -msse3. I suggest to close this bug as fixed and 
eventually open a new bug with new testcases.

Regarding emms in moo_3: As the output of moo_3 () is _not_ a mmx register, FPU 
mode should be switched to 387 mode before function exit. (In proposed patch, 
this could be overriden by -mno-80387 to get rid of all emms insns.)


-- 


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


[Bug target/14552] compiled trivial vector intrinsic code is ineffiencent

2005-06-22 Thread uros at kss-loka dot si

--- Additional Comments From uros at kss-loka dot si  2005-06-22 10:14 
---
Just for fun, I have compiled the testcase with MMX/x87 mode switching patch 
included, to check MMX vector extensions. This little patch is needed to enable 
MMX vector extensions (only MMX vector add expander is shown):

diff -upr /export/home/uros/gcc-back/gcc/config/i386/i386.h i386/i386.h
--- /export/home/uros/gcc-back/gcc/config/i386/i386.h   2005-06-08 
07:05:22.0 +0200
+++ i386/i386.h 2005-06-22 10:41:31.0 +0200
@@ -843,7 +845,8 @@ do {
\
 
 /* ??? No autovectorization into MMX or 3DNOW until we can reliably
place emms and femms instructions.  */
-#define UNITS_PER_SIMD_WORD (TARGET_SSE ? 16 : UNITS_PER_WORD)
+#define UNITS_PER_SIMD_WORD\
+(TARGET_SSE ? 16 : TARGET_MMX ? 8 : UNITS_PER_WORD)
 
 #define VALID_FP_MODE_P(MODE)  \
 ((MODE) == SFmode || (MODE) == DFmode || (MODE) == XFmode  \
diff -upr /export/home/uros/gcc-back/gcc/config/i386/mmx.md i386/mmx.md
--- /export/home/uros/gcc-back/gcc/config/i386/mmx.md   2005-04-20 
21:56:15.0 +0200
+++ i386/mmx.md 2005-06-22 11:00:35.0 +0200
@@ -553,6 +553,13 @@
 ;;
 ;
 
+(define_expand addmode3
+  [(set (match_operand:MMXMODEI 0 register_operand )
+   (plus:MMXMODEI (match_operand:MMXMODEI 1 nonimmediate_operand )
+  (match_operand:MMXMODEI 2 nonimmediate_operand )))]
+  TARGET_MMX
+  ix86_fixup_binary_operands_no_copy (PLUS, MODEmode, operands);)
+
 (define_insn mmx_addmode3
   [(set (match_operand:MMXMODEI 0 register_operand =y)
 (plus:MMXMODEI

After that, the testcase from description is compiled to (with -fomit-frame-
pointer):

test:
movqw, %mm0
paddw   %mm0, %mm0
movq%mm0, w
movq%mm0, dw
emms
ret



-- 
   What|Removed |Added

 CC||uros at kss-loka dot si


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


[Bug c/22141] New: Missing optimization when storing structures

2005-06-22 Thread fm3 at os dot inf dot tu-dresden dot de
In the attached example, the store of type_t is not optimized by gcc. Instead 
of storing one 32-bit value, four 8-bit values are stored. 
 
gcc-4.0.1 produces the following code: 
 
 /home/fm3/foo.c:16 
 80483b7:   c6 05 13 96 04 08 04movb   $0x4,0x8049613 
 80483be:   c6 05 12 96 04 08 03movb   $0x3,0x8049612 
 80483c5:   c6 05 11 96 04 08 02movb   $0x2,0x8049611 
 80483cc:   c6 05 10 96 04 08 01movb   $0x1,0x8049610 
 
gcc-3.4.5 produces the following code: 
 
 /home/fm3/foo.c:16 
 8048391:   ba 01 02 03 04  mov$0x4030201,%edx 
 /home/fm3/foo.c:15 
 8048396:   89 e5   mov%esp,%ebp 
 8048398:   83 ec 18sub$0x18,%esp 
 804839b:   83 e4 f0and$0xfff0,%esp 
 804839e:   83 ec 10sub$0x10,%esp 
 /home/fm3/foo.c:16 
 80483a1:   89 15 1c 96 04 08   mov%edx,0x804961c 
 
  (better) 
 
gcc-2.95.4 produces the following code: 
 
 /home/fm3/foo.c:16 
 80483f7:   c7 05 84 96 04 08 01movl   $0x4030201,0x8049684 
 80483fe:   02 03 04 
 
 (best because no register allocation) 
 
The example: 
 
#include stdio.h 
 
typedef struct 
{ 
  unsigned char a; 
  unsigned char b; 
  unsigned char c; 
  unsigned char d; 
} type_t; 
 
static type_t u; 
 
int 
main(void) 
{ 
  u = (type_t){ 1, 2, 3, 4}; 
 
  printf(%d %d %d %d\n, u.a, u.b, u.c, u.d); 
 
  return 0; 
} 
 
gcc-4.0 -v -save-temps -g -o foo -W -Wall -Wformat=2 -O3 -Wall -W 
-fomit-frame-pointer -march=pentium3 -g foo.c: 
 
Using built-in specs. 
Target: i486-linux 
Configured with: ../src/configure -v 
--enable-languages=c,c++,java,f95,objc,ada,treelang --prefix=/usr 
--enable-shared --with-system-zlib --libexecdir=/usr/lib --enable-nls 
--without-included-gettext --enable-threads=posix --program-suffix=-4.0 
--enable-__cxa_atexit --enable-libstdcxx-allocator=mt --enable-clocale=gnu 
--enable-libstdcxx-debug --enable-java-gc=boehm --enable-java-awt=gtk 
--enable-mpfr --disable-werror --enable-checking=release i486-linux 
Thread model: posix 
gcc version 4.0.1 20050522 (prerelease) (Debian 4.0.0-9) 
 /usr/lib/gcc/i486-linux/4.0.1/cc1 -E -quiet -v foo.c -march=pentium3 -W -Wall 
-Wformat=2 -Wall -W -fomit-frame-pointer -fworking-directory -O3 
-fpch-preprocess -o foo.i 
ignoring nonexistent directory 
/usr/lib/gcc/i486-linux/4.0.1/../../../../i486-linux/include 
#include ... search starts here: 
#include ... search starts here: 
 /usr/local/include 
 /usr/lib/gcc/i486-linux/4.0.1/include 
 /usr/include 
End of search list. 
 /usr/lib/gcc/i486-linux/4.0.1/cc1 -fpreprocessed foo.i -quiet -dumpbase foo.c 
-march=pentium3 -auxbase foo -g -g -O3 -W -Wall -Wformat=2 -Wall -W -version 
-fomit-frame-pointer -o foo.s 
GNU C version 4.0.1 20050522 (prerelease) (Debian 4.0.0-9) (i486-linux) 
compiled by GNU C version 4.0.1 20050522 (prerelease) (Debian 
4.0.0-9). 
GGC heuristics: --param ggc-min-expand=64 --param ggc-min-heapsize=64260 
 as -V -Qy --32 -o foo.o foo.s 
GNU assembler version 2.15 (i486-linux-gnu) using BFD version 2.15 
 /usr/lib/gcc/i486-linux/4.0.1/collect2 --eh-frame-hdr -m elf_i386 
-dynamic-linker /lib/ld-linux.so.2 -o 
foo /usr/lib/gcc/i486-linux/4.0.1/../../../../lib/crt1.o 
/usr/lib/gcc/i486-linux/4.0.1/../../../../lib/crti.o 
/usr/lib/gcc/i486-linux/4.0.1/crtbegin.o 
-L/usr/lib/gcc/i486-linux/4.0.1 -L/usr/lib/gcc/i486-linux/4.0.1 
-L/usr/lib/gcc/i486-linux/4.0.1/../../../../lib 
-L/usr/lib/gcc/i486-linux/4.0.1/../../.. -L/lib/../lib -L/usr/lib/../lib foo.o 
-lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s 
--no-as-needed /usr/lib/gcc/i486-linux/4.0.1/crtend.o 
/usr/lib/gcc/i486-linux/4.0.1/../../../../lib/crtn.o

-- 
   Summary: Missing optimization when storing structures
   Product: gcc
   Version: 4.0.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: fm3 at os dot inf dot tu-dresden dot de
CC: gcc-bugs at gcc dot gnu dot org
  GCC host triplet: i486-linux
GCC target triplet: i486-linux


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


[Bug tree-optimization/22122] [4.1 Regression] -ftree-vectorize ICE get_loop_body, at cfgloop.c:819

2005-06-22 Thread hubicka at ucw dot cz

--- Additional Comments From hubicka at ucw dot cz  2005-06-22 11:12 ---
Subject: Re:  [4.1 Regression] -ftree-vectorize ICE get_loop_body, at 
cfgloop.c:819

 
 --- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-21 
 12:51 ---
 Hmm, reconfirmed, then.
Strange, the testcase was passing for me when I was testing it on not
100% final version of patch.  I will re-check it today.

Honza
 
 -- 
What|Removed |Added
 
  Status|REOPENED|NEW
 
 
 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22122
 
 --- You are receiving this mail because: ---
 You are on the CC list for the bug, or are watching someone who is.


-- 


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


[Bug libfortran/22142] New: eoshift: boundary not filled in correctly

2005-06-22 Thread tkoenig at gcc dot gnu dot org
Another corner case of eoshift that's not correct...
in eoshift3, this time.

$ cat eoshift.f90
program main
  implicit none
  integer, dimension (3,3) :: a, b, w
  integer, dimension (3) :: bo, sh
  integer :: i,j

  a = reshape((/(i,i=1,9)/),shape(a))
  sh = (/ 3, -1, -3 /)
  bo = (/-999, -99, -9 /)
  b = eoshift(a, shift=sh, boundary=bo)
  w = reshape((/ -999, -999, -999, -99, 4, 5, -9, -9, -9 /), shape(b))
  do j=1,3
do i=1,3
  if (w(i,j) /= b(i,j)) print *,i,j,w(i,j),b(i,j)
end do
  end do
end program main
$ gfortran eoshift.f90
$ ./a.out
   1   2 -99 -1644167172
   1   3  -9-6422529
   2   3  -9-6422529
   3   3  -9-6422529
$ gfortran -v
Using built-in specs.
Target: ia64-unknown-linux-gnu
Configured with: ../gcc-4.1-20050618/configure --prefix=/home/zfkts --enable-
languages=c,f95
Thread model: posix
gcc version 4.1.0 20050618 (experimental)
$ nm a.out | grep eoshift
 U _gfortran_eoshift3_4

-- 
   Summary: eoshift: boundary not filled in correctly
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Keywords: wrong-code
  Severity: normal
  Priority: P2
 Component: libfortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: tkoenig at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug fortran/21594] FAIL: gfortran.dg/eoshift.f90 -O0 execution test

2005-06-22 Thread tkoenig at gcc dot gnu dot org

--- Additional Comments From tkoenig at gcc dot gnu dot org  2005-06-22 
11:41 ---
This can be made to fail on any architecture by increasing
the amount of shifting:

$ cat eoshift-really-fails.f90
program main
  character(len=20) line
  write (line,'(I4)') eoshift((/1, 3/), 1000)
end program main
$ gfortran eoshift-really-fails.f90
$ ./a.out
Segmentation fault
$ gfortran -v
Using built-in specs.
Target: ia64-unknown-linux-gnu
Configured with: ../gcc-4.1-20050618/configure --prefix=/home/zfkts --enable-
languages=c,f95
Thread model: posix
gcc version 4.1.0 20050618 (experimental)

The problem is that the code tries to overwrite more than it should
for shift  len.

-- 


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


[Bug libfortran/22124] eoshift with dim=2 fails

2005-06-22 Thread tkoenig at gcc dot gnu dot org

--- Additional Comments From tkoenig at gcc dot gnu dot org  2005-06-22 
11:42 ---
This is a duplicate of 21592. The problem is that
we are really running off the end here, as Andrew suggested.

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

-- 
   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||DUPLICATE


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


[Bug c++/21592] [3.4/4.0/4.1 Regression] ICE in resolve_overloaded_unification/arg_assoc

2005-06-22 Thread tkoenig at gcc dot gnu dot org

--- Additional Comments From tkoenig at gcc dot gnu dot org  2005-06-22 
11:42 ---
*** Bug 22124 has been marked as a duplicate of this bug. ***

-- 
   What|Removed |Added

 CC||tkoenig at gcc dot gnu dot
   ||org


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


[Bug middle-end/17965] ice in expand_call

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
12:07 ---
Patch was posted here: http://gcc.gnu.org/ml/gcc-patches/2005-06/msg01764.html

-- 
   What|Removed |Added

URL||http://gcc.gnu.org/ml/gcc-
   ||patches/2005-
   ||06/msg01764.html
   Keywords||patch


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


[Bug libfortran/22143] New: missing kinds 1 and 2 for eoshift and cshift

2005-06-22 Thread tkoenig at gcc dot gnu dot org
$ cat shift-kind.f90
program main
  implicit none
  integer, dimension (3,3) :: a, b, w
  integer(kind=2), dimension (3) :: sh2
  integer(kind=1), dimension (3) :: sh1
  integer, dimension(3) :: bo
  integer :: i,j

  a = reshape((/(i,i=1,9)/),shape(a))
  sh1 = (/ -3, -1, 3 /)
  sh2 = (/ -3, -1, 3 /)
  bo = (/-999, -99, -9 /)
  b = cshift(a, shift=sh1)
  b = cshift(a, shift=sh2)

  b = eoshift(a, shift=sh1)
  b = eoshift(a, shift=sh1, boundary=bo)
  b = eoshift(a, shift=sh2)
  b = eoshift(a, shift=sh2, boundary=bo)

end program main
$ gfortran shift-kind.f90
/tmp/cceMvPmd.o(.text+0xa42): In function `MAIN__':
: undefined reference to `_gfortran_cshift1_1'
/tmp/cceMvPmd.o(.text+0xc82): In function `MAIN__':
: undefined reference to `_gfortran_cshift1_2'
/tmp/cceMvPmd.o(.text+0xed2): In function `MAIN__':
: undefined reference to `_gfortran_eoshift1_1'
/tmp/cceMvPmd.o(.text+0x11a2): In function `MAIN__':
: undefined reference to `_gfortran_eoshift3_1'
/tmp/cceMvPmd.o(.text+0x13f2): In function `MAIN__':
: undefined reference to `_gfortran_eoshift1_2'
/tmp/cceMvPmd.o(.text+0x16c2): In function `MAIN__':
: undefined reference to `_gfortran_eoshift3_2'
collect2: ld returned 1 exit status

-- 
   Summary: missing kinds 1 and 2 for eoshift and cshift
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: libfortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: tkoenig at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug libfortran/22144] New: eoshift1, eoshift3, cshift1 lack memory allocation

2005-06-22 Thread tkoenig at gcc dot gnu dot org
$ cat cshift-alloc.f90
program main
  implicit none
  integer, dimension (:,:),allocatable :: a
  integer, dimension (3) :: sh
  integer :: i

  allocate (a(3,3))
  a = reshape((/(i,i=1,9)/),shape(a))
  sh = (/ 2, -1, -2 /)
  write(*,fmt='(10I5)') cshift(a, shift=sh)

end program main
$ gfortran cshift-alloc.f90
$ ./a.out
Segmentation fault
$ nm ./a.out | grep shift
 U _gfortran_cshift1_4

Same thing for eoshift1 and eoshift3.

-- 
   Summary: eoshift1, eoshift3, cshift1 lack memory allocation
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: libfortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: tkoenig at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug middle-end/22141] [4.0/4.1 Regression] Missing optimization when storing structures

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
13:07 ---
Reduced testcase for the regression:
typedef struct  type
{
  char a;
  char b;
  char c;
  char d;
} type_t;
type_t u;
void
f(void)
{
  u = (type_t){ 1, 2, 3, 4};
}

3.3 produced:
lis r0,0x102
lis r2,ha16(_u)
ori r0,r0,772
stw r0,lo16(_u)(r2)
blr

4.0.0 produces:
lis r11,ha16(_u)
li r0,2
la r9,lo16(_u)(r11)
li r2,1
stb r0,1(r9)
li r0,4
stb r2,lo16(_u)(r11)
li r2,3
stb r0,3(r9)
stb r2,2(r9)
blr

Which is much slower and larger.

Also this is a code size regression even at -Os.

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
  Component|c   |middle-end
 Ever Confirmed||1
   Keywords||missed-optimization
   Last reconfirmed|-00-00 00:00:00 |2005-06-22 13:07:06
   date||
Summary|Missing optimization when   |[4.0/4.1 Regression] Missing
   |storing structures  |optimization when storing
   ||structures
   Target Milestone|--- |4.0.2


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


[Bug target/22145] New: /usr/include/objc/objc-runtime.h on powerpc-darwin7.8.0 needs fixed included

2005-06-22 Thread pinskia at gcc dot gnu dot org
For Obj-C++, /usr/include/objc/objc-runtime.h contains 
Class class;
which will not work with Obj-C++ at all.
This causes testsuite failures and causes you not to be able to compile almost 
any obj-C++ program.

-- 
   Summary: /usr/include/objc/objc-runtime.h on powerpc-darwin7.8.0
needs fixed included
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Severity: minor
  Priority: P2
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pinskia at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: powerpc-darwin7.8.0


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


[Bug middle-end/20593] [4.0 Regression] Simple array of string access miscompiled on x86 and x86_64 and PPC

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
13:37 ---
I committed the patch to the mainline after testing and will commit to the 4.0 
branch once reopened so 
mine.

-- 
   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pinskia at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
  Component|ada |middle-end
Summary|[4.0/4.1 Regression] Simple |[4.0 Regression] Simple
   |array of string access  |array of string access
   |miscompiled on x86 and  |miscompiled on x86 and
   |x86_64 and PPC  |x86_64 and PPC
   Target Milestone|4.1.0   |4.0.2


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


[Bug middle-end/20593] [4.0 Regression] Simple array of string access miscompiled on x86 and x86_64 and PPC

2005-06-22 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-06-22 
13:38 ---
Subject: Bug 20593

CVSROOT:/cvs/gcc
Module name:gcc
Changes by: [EMAIL PROTECTED]   2005-06-22 13:38:25

Modified files:
gcc: ChangeLog varasm.c 

Log message:
2005-06-22  Richard Kenner  [EMAIL PROTECTED]

PR middle-end/20593
* varasm.c (compute_reloc_for_constant): Treat VIEW_CONVER_EXPR
the same as the other cast operands.
(output_addressed_constants): Likewise.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gccr1=2.9207r2=2.9208
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/varasm.c.diff?cvsroot=gccr1=1.513r2=1.514



-- 


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


[Bug libfortran/22124] eoshift with dim=2 fails

2005-06-22 Thread bangerth at dealii dot org

--- Additional Comments From bangerth at dealii dot org  2005-06-22 14:09 
---
Um, Thomas, PR 21592 which you claim this is a duplicate of, is a C++ front 
end bug. Did you mean that? 
 
W. 

-- 


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


[Bug fortran/20945] about 2x perfomance regression in comparision with 3.4.2

2005-06-22 Thread denis dot nagorny at intel dot com

--- Additional Comments From denis dot nagorny at intel dot com  2005-06-22 
14:34 ---
Ok. It seems like this issue is mostly fixed now. I incresead NIT counter up 
to 200 and obtained following results:
3.4.2 ~ 3.4s
old 4.0 ~ 6.4s
mainline ~ 4.0s


-- 


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


[Bug rtl-optimization/20945] about 2x perfomance regression in comparision with 3.4.2

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
14:37 ---
I think this is the normal register pressure issue in GCC's RA.

See http://www.gccsummit.org/2005/view_abstract.php?content_key=1 for a 
discussion which will 
happen later today.

-- 
   What|Removed |Added

  Component|fortran |rtl-optimization
   Keywords||missed-optimization, ra


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


[Bug fortran/21034] internal compiler error: in gfc_trans_auto_array_allocation, at fortran/trans-array.c:3036

2005-06-22 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-06-22 
15:34 ---
Subject: Bug 21034

CVSROOT:/cvs/gcc
Module name:gcc
Changes by: [EMAIL PROTECTED]   2005-06-22 15:34:02

Modified files:
gcc/fortran: ChangeLog symbol.c 
gcc/testsuite  : ChangeLog 
Added files:
gcc/testsuite/gfortran.dg: auto_save_1.f90 

Log message:
2005-06-22 Paul Brook  [EMAIL PROTECTED]

PR fortran/21034
* symbol.c (gfc_is_var_automatic): New function.
(save_symbol): Use it.
testsuite/
* gfortran.dg/auto_save_1.f90: New test.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/ChangeLog.diff?cvsroot=gccr1=1.470r2=1.471
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/symbol.c.diff?cvsroot=gccr1=1.29r2=1.30
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gccr1=1.5670r2=1.5671
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gfortran.dg/auto_save_1.f90.diff?cvsroot=gccr1=NONEr2=1.1



-- 


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


[Bug fortran/21034] internal compiler error: in gfc_trans_auto_array_allocation, at fortran/trans-array.c:3036

2005-06-22 Thread pbrook at gcc dot gnu dot org

--- Additional Comments From pbrook at gcc dot gnu dot org  2005-06-22 
16:00 ---
Fixed.

-- 
   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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


[Bug target/21571] ICE in rs6000.c with -msdata=default.

2005-06-22 Thread osv at javad dot ru

--- Additional Comments From osv at javad dot ru  2005-06-22 16:00 ---
Reproducible on 4.1.0 (mainline) by adding -ffast-math to the command-line:

$ ppc-eabi-gcc -v -msdata=default -ffast-math -c test.cc -o test.o
Using built-in specs.
Target: ppc-eabi
Configured with: ../../gcc/configure --prefix=/home/osv/try/ppc-rtems/tools
--target=ppc-eabi --disable-haifa --disable-newlib-hw-fp --with-gnu-as
--with-gnu-ld -with-newlib --with-cpu=505
Thread model: single
gcc version 4.1.0 20050620 (experimental)
 /home/osv/try/ppc-rtems/tools/libexec/gcc/ppc-eabi/4.1.0/cc1plus -quiet -v
test.cc -quiet -dumpbase test.cc -msdata=default -mcpu=505 -auxbase-strip test.o
-version -ffast-math -o /tmp/ccM8Vbir.s
ignoring nonexistent directory
/home/osv/try/ppc-rtems/tools/lib/gcc/ppc-eabi/4.1.0/../../../../ppc-eabi/sys-include
#include ... search starts here:
#include ... search starts here:
 
/home/osv/try/ppc-rtems/tools/lib/gcc/ppc-eabi/4.1.0/../../../../include/c++/4.1.0
 
/home/osv/try/ppc-rtems/tools/lib/gcc/ppc-eabi/4.1.0/../../../../include/c++/4.1.0/ppc-eabi
 
/home/osv/try/ppc-rtems/tools/lib/gcc/ppc-eabi/4.1.0/../../../../include/c++/4.1.0/backward
 /home/osv/try/ppc-rtems/tools/lib/gcc/ppc-eabi/4.1.0/include
 
/home/osv/try/ppc-rtems/tools/lib/gcc/ppc-eabi/4.1.0/../../../../ppc-eabi/include
End of search list.
GNU C++ version 4.1.0 20050620 (experimental) (ppc-eabi)
compiled by GNU C version 2.95.4 20011002 (Debian prerelease).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: 53cb6b81161433cf05f625e722038621
test.cc: In function 'void foo()':
test.cc:2: internal compiler error: in find_addr_reg, at
config/rs6000/rs6000.c:16845
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://gcc.gnu.org/bugs.html for instructions.

Compilation exited abnormally with code 1 at Wed Jun 22 19:58:09


In case it helps to debug the problem, here is the insn that causes the ICE:

(insn 9 32 10 (set (mem/i:DF (symbol_ref:SI (zero) [flags 0x6] var_decl
0x401dcf68 zero) [0 zero+0 S8 A64])
(reg:DF 9 %r9 [118])) 350 {*movdf_hardfloat32} (nil)
(nil))

... and here is stack backtrace:

#0  fancy_abort (file=0x89c7b60 ../../../gcc/gcc/config/rs6000/rs6000.c, 
line=16845, function=0x89cefcd find_addr_reg)
at ../../../gcc/gcc/diagnostic.c:588
#1  0x08727607 in find_addr_reg (addr=0x40143e60)
at ../../../gcc/gcc/config/rs6000/rs6000.c:16845
#2  0x08541701 in output_350 (operands=0x8a011a0, insn=0x401bf140)
at ../../../gcc/gcc/config/rs6000/rs6000.md:7726
#3  0x08457c69 in get_insn_template (code=350, insn=0x401bf140)
at ../../../gcc/gcc/final.c:1584
#4  0x08458c65 in final_scan_insn (insn=0x401bf140, file=0x8a7cc38, 
optimize=0, nopeepholes=0, seen=0xbfffe690)
at ../../../gcc/gcc/final.c:2385
#5  0x08457b85 in final (first=0x401bc200, file=0x8a7cc38, optimize=0)
at ../../../gcc/gcc/final.c:1569
#6  0x086c916c in rest_of_handle_final () at ../../../gcc/gcc/passes.c:293
#7  0x086cbb26 in rest_of_compilation () at ../../../gcc/gcc/passes.c:1747
#8  0x08275f83 in execute_one_pass (pass=0x89ea220)
at ../../../gcc/gcc/tree-optimize.c:629
#9  0x0827608c in execute_pass_list (pass=0x89ea220)
at ../../../gcc/gcc/tree-optimize.c:666
#10 0x08276600 in tree_rest_of_compilation (fndecl=0x401de074)
at ../../../gcc/gcc/tree-optimize.c:829
#11 0x0819a260 in expand_body (fn=0x401de074)
at ../../../gcc/gcc/cp/semantics.c:3018
#12 0x0872f12e in cgraph_expand_function (node=0x401de414)
at ../../../gcc/gcc/cgraphunit.c:968
#13 0x0872f3c4 in cgraph_expand_all_functions ()
at ../../../gcc/gcc/cgraphunit.c:1034
#14 0x0872f9a0 in cgraph_optimize () at ../../../gcc/gcc/cgraphunit.c:1168
#15 0x08119d72 in cp_finish_file () at ../../../gcc/gcc/cp/decl2.c:3104
#16 0x08049d3f in finish_file () at ../../../gcc/gcc/cp/cp-lang.c:113
#17 0x08239dad in c_common_parse_file (set_yydebug=0)
at ../../../gcc/gcc/c-opts.c:1119
#18 0x0867e3e3 in compile_file () at ../../../gcc/gcc/toplev.c:966
#19 0x0867fb58 in do_compile () at ../../../gcc/gcc/toplev.c:1902
#20 0x0867fbc5 in toplev_main (argc=16, argv=0xbfffea14)
at ../../../gcc/gcc/toplev.c:1934
#21 0x08247e96 in main (argc=16, argv=0xbfffea14) at ../../../gcc/gcc/main.c:35

-- 


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


[Bug fortran/21034] internal compiler error: in gfc_trans_auto_array_allocation, at fortran/trans-array.c:3036

2005-06-22 Thread fxcoudert at gcc dot gnu dot org

--- Additional Comments From fxcoudert at gcc dot gnu dot org  2005-06-22 
16:03 ---
What about 4.0? Right now, we've been trying to keep all patches applied on both
branches. Doesn't this bug happen on 4.0 too?

-- 
   What|Removed |Added

 CC||pbrook at gcc dot gnu dot
   ||org


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


[Bug target/21571] ICE in rs6000.c with -msdata=default.

2005-06-22 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

  GCC build triplet|i686-pc-linux-gnu   |
   GCC host triplet|i686-pc-linux-gnu   |


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


[Bug target/21571] ICE in rs6000.c with -msdata=default.

2005-06-22 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

   Keywords||ice-on-valid-code


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


[Bug tree-optimization/22122] [4.1 Regression] -ftree-vectorize ICE get_loop_body, at cfgloop.c:819

2005-06-22 Thread marcus at jet dot franken dot de

--- Additional Comments From marcus at jet dot franken dot de  2005-06-22 
17:26 ---
gcc-Version 4.1.0 20050622 (experimental) 
 
../BIN/bin/gcc -ftree-vectorize -O2 -c ~/thread.i  
/home/marcus/thread.i: In function 'f': 
/home/marcus/thread.i:2: internal compiler error: in get_loop_body, at 
cfgloop.c:819 
Please submit a full bug report, 
 
-O2 is enough for me 

-- 


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


[Bug fortran/22146] New: ICE when calling ELEMENTAL subroutines

2005-06-22 Thread eedelman at acclab dot helsinki dot fi
$ cat gfortranbug.f90 
module buggy

contains

elemental subroutine foo(a)
integer, intent(out) :: a
a = 0
end subroutine foo

subroutine bar()
integer :: a(10)
call foo(a)
end subroutine bar

end module buggy

$ gfortran41 -c gfortranbug.f90 
gfortranbug.f90: In function 'bar':
gfortranbug.f90:5: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://gcc.gnu.org/bugs.html for instructions.

-- 
   Summary: ICE when calling ELEMENTAL subroutines
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: eedelman at acclab dot helsinki dot fi
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug fortran/22146] ICE when calling ELEMENTAL subroutines

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
17:52 ---
Confirmed. here is the backtrace:
#0  0x080a7931 in gfc_conv_function_call (se=0xbfe81c08, sym=0xa52cf80, 
arg=0xa52d5b8)
at /home/peshtigo/pinskia/src/gnu/gcc/src/gcc/fortran/trans-expr.c:1287
#1  0x080b5842 in gfc_trans_call (code=0xa52d760) at 
/home/peshtigo/pinskia/src/gnu/gcc/src/
gcc/fortran/trans-stmt.c:217
#2  0x08096c88 in gfc_trans_code (code=0xa52d760) at 
/home/peshtigo/pinskia/src/gnu/gcc/src/
gcc/fortran/trans.c:533
#3  0x080a64a8 in gfc_generate_function_code (ns=0xa52d1c8) at 
/home/peshtigo/pinskia/src/gnu/
gcc/src/gcc/fortran/trans-decl.c:2358
#4  0x08096fb2 in gfc_generate_module_code (ns=0xa52c858) at 
/home/peshtigo/pinskia/src/gnu/
gcc/src/gcc/fortran/trans.c:706
#5  0x0807cc76 in gfc_parse_file () at 
/home/peshtigo/pinskia/src/gnu/gcc/src/gcc/fortran/parse.c:
2629
#6  0x08094085 in gfc_be_parse_file (set_yydebug=0) at 
/home/peshtigo/pinskia/src/gnu/gcc/src/
gcc/fortran/f95-lang.c:263

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2005-06-22 17:52:52
   date||


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


[Bug tree-optimization/22071] [4.1 regression] ICE in first_vi_for_offset, at tree-ssa-structalias.c:2506

2005-06-22 Thread bkoz at gcc dot gnu dot org

--- Additional Comments From bkoz at gcc dot gnu dot org  2005-06-22 17:59 
---

I am running into this as well. Turning off all optimizations (-O0) allows
compilation, anything over -O1 hits it.


-- 


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


[Bug c++/22147] New: [4.1 regression] ICE in get_bindings

2005-06-22 Thread pinskia at gcc dot gnu dot org
The following code ICEs:
// Line 1
class A {
public:
   A() { };
   ~A() { };
};

class B {
public:
   B();
   B(const A a) { };
   ~B();
};

template typename X class T;

template typename X, typename Y
TX* func(TY* p);

template typename X class T {
   X*m_;
public:
   T(X* x) : m_(x) { };
   ~T() { };
   friend Tclass Y* funcY, X(TX* p);
};

template typename X, typename Y
TX* func(TY* p) {
   return (new TX(new X(*p-m_)));
}

int main() {
   A* a = new A();
   TA*p = new TA(a);
   TB*q = funcB, A(p);
   return 0;
}

-- 
   Summary: [4.1 regression] ICE in get_bindings
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pinskia at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug c++/22147] [4.1 regression] ICE in get_bindings

2005-06-22 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

   Target Milestone|--- |4.1.0


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


[Bug target/22148] New: gcc.dg/vect/vect-reduc-1* fail

2005-06-22 Thread jsm28 at gcc dot gnu dot org
The following FAILs have appeared on ia64-hpux (both -milp32 and -mlp64) on
mainline on 20050622.  gcc-testresults shows them also on ia64-linux.

FAIL: gcc.dg/vect/vect-reduc-1char.c (test for excess errors)
FAIL: gcc.dg/vect/vect-reduc-1.c (test for excess errors)

The first is a new test.  The second test has changed in the relevant period.

vect-reduc-1.c failure:

/home/gcc/nightlies/src-mainline-2005-06-22/gcc-mainline/gcc/testsuite/gcc.dg/vect/vect-reduc-1.c:
In function 'main1':
/home/gcc/nightlies/src-mainline-2005-06-22/gcc-mainline/gcc/testsuite/gcc.dg/vect/vect-reduc-1.c:44:
error: unrecognizable insn:
(insn 122 121 123 4 (set (reg:SI 447)
(if_then_else:SI (reg:BI 445)
(subreg:SI (reg:V2SI 406 [ vect_var_.62 ]) 4)
(subreg:SI (reg:V2SI 440) 4))) -1 (nil)
(nil))
/home/gcc/nightlies/src-mainline-2005-06-22/gcc-mainline/gcc/testsuite/gcc.dg/vect/vect-reduc-1.c:44:
internal compiler error: in extract_insn, at recog.c:2082

vect-reduc-1char.c failure:

/home/gcc/nightlies/src-mainline-2005-06-22/gcc-mainline/gcc/testsuite/gcc.dg/vect/vect-reduc-1char.c:
In function 'main1':
/home/gcc/nightlies/src-mainline-2005-06-22/gcc-mainline/gcc/testsuite/gcc.dg/vect/vect-reduc-1char.c:39:
error: unrecognizable insn:
(insn 120 119 121 1 (set (reg:V8QI 384 [ vect_var_.80 ])
(smax:V8QI (reg:V8QI 384 [ vect_var_.80 ])
(reg:V8QI 473))) -1 (nil)
(nil))
/home/gcc/nightlies/src-mainline-2005-06-22/gcc-mainline/gcc/testsuite/gcc.dg/vect/vect-reduc-1char.c:39:
internal compiler error: in extract_insn, at recog.c:2082

-- 
   Summary: gcc.dg/vect/vect-reduc-1* fail
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jsm28 at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: ia64-*-*


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


[Bug libstdc++/22111] [4.0 Regression] libstdc++ abi_check

2005-06-22 Thread bkoz at gcc dot gnu dot org

--- Additional Comments From bkoz at gcc dot gnu dot org  2005-06-22 18:17 
---

I'd like to move this to gcc-4_0-branch.

-benjamin

-- 


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


[Bug target/22148] gcc.dg/vect/vect-reduc-1* fail

2005-06-22 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
   Keywords||ice-on-valid-code


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


[Bug fortran/21034] internal compiler error: in gfc_trans_auto_array_allocation, at fortran/trans-array.c:3036

2005-06-22 Thread pbrook at gcc dot gnu dot org

--- Additional Comments From pbrook at gcc dot gnu dot org  2005-06-22 
18:51 ---
Reopening until 4.0 is unforzen and the patch applied there

-- 
   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|FIXED   |


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


[Bug fortran/21034] internal compiler error: in gfc_trans_auto_array_allocation, at fortran/trans-array.c:3036

2005-06-22 Thread pbrook at gcc dot gnu dot org


-- 
   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pbrook at gcc dot gnu dot
   |dot org |org
 Status|REOPENED|ASSIGNED
   Last reconfirmed|2005-04-15 08:30:11 |2005-06-22 18:51:33
   date||


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


[Bug fortran/21034] [4.0 only] internal compiler error: in gfc_trans_auto_array_allocation, at fortran/trans-array.c:3036

2005-06-22 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

   Keywords||ice-on-valid-code
Summary|internal compiler error: in |[4.0 only] internal compiler
   |gfc_trans_auto_array_allocat|error: in
   |ion, at fortran/trans-  |gfc_trans_auto_array_allocat
   |array.c:3036|ion, at fortran/trans-
   ||array.c:3036
   Target Milestone|--- |4.0.2


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


[Bug tree-optimization/22071] [4.1 regression] ICE in first_vi_for_offset, at tree-ssa-structalias.c:2506

2005-06-22 Thread dberlin at dberlin dot org

--- Additional Comments From dberlin at gcc dot gnu dot org  2005-06-22 
18:54 ---
Subject: Re:  [4.1 regression] ICE in
first_vi_for_offset, at tree-ssa-structalias.c:2506

On Wed, 2005-06-22 at 17:59 +, bkoz at gcc dot gnu dot org wrote:
 --- Additional Comments From bkoz at gcc dot gnu dot org  2005-06-22 
 17:59 ---
 
 I am running into this as well. Turning off all optimizations (-O0) allows
 compilation, anything over -O1 hits it.
 

This one is because of structures with a lot of holes in them, where we
make accesses that bridge the hole, and cna't ind the field that gets
associated with it.

 



-- 


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


[Bug tree-optimization/22071] [4.1 regression] ICE in first_vi_for_offset, at tree-ssa-structalias.c:2506

2005-06-22 Thread bkoz at gcc dot gnu dot org

--- Additional Comments From bkoz at gcc dot gnu dot org  2005-06-22 18:59 
---

Ah, the old can't find the tunnel at the end of the bridge at the end of this
hole problem. Bummer. I hate it when that happens.

Is there an easier way than -O0 to revert back to the old behavior?


-- 


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


[Bug c++/22149] New: func pointer non-type template parm invalid access control

2005-06-22 Thread johill at lanl dot gov
I notice that program1 (the 1st program attached below) fails to compile, but
very similar programs 2 and 3 (attached further below) do. The only difference
being related to how the non-type template parameter is declared void (*FOOBAR)
() vs void FOOBAR () vs void (FOOBAR) (). 

/cygdrive/d/users/hill/tmp/daTest$ g++ cat.cpp
cat.cpp: In constructor `fooFOOBAR::foo() [with void (*FOOBAR)() = bar::foobar
]':
cat.cpp:12:   instantiated from here
cat.cpp:15: error: `static void bar::foobar()' is private
cat.cpp:7: error: within this context

-program1--snip--snip-

template  void (*FOOBAR) () 
class foo {
public:
foo () { (*FOOBAR) (); }
};

class bar {
public:
bar () { foo  bar::foobar  tmp; }
private:
static void foobar ()
{
}
};

main ()
{
bar b;
}
-program2--snip--snip-

template  void FOOBAR () 
class foo {
public:
foo () { FOOBAR (); }
};

class bar {
public:
bar () { foo  bar::foobar  tmp; }
private:
static void foobar ()
{
}
};

main ()
{
bar b;
}

program3---snip--snip-

template  void ( FOOBAR) () 
class foo {
public:
foo () { FOOBAR (); }
};

class bar {
public:
bar () { foo  bar::foobar  tmp; }
private:
static void foobar ()
{
}
};

main ()
{
bar b;
}

---snip--snip-

/cygdrive/d/users/hill/tmp/daTest$ g++ -v
Reading specs from /usr/lib/gcc/i686-pc-cygwin/3.4.4/specs
Configured with: /gcc/gcc-3.4.4/gcc-3.4.4-1/configure --verbose --prefix=/usr --
exec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib --libexecdir=/usr/lib --man
dir=/usr/share/man --infodir=/usr/share/info --enable-languages=c,ada,c++,d,f77,
java,objc --enable-nls --without-included-gettext --enable-version-specific-runt
ime-libs --without-x --enable-libgcj --disable-java-awt --with-system-zlib --ena
ble-interpreter --disable-libgcj-debug --enable-threads=posix --enable-java-gc=b
oehm --disable-win32-registry --enable-sjlj-exceptions --enable-hash-synchroniza
tion --enable-libstdcxx-debug : (reconfigured)
Thread model: posix
gcc version 3.4.4 (cygming special) (gdc 0.12, using dmd 0.125)

-- 
   Summary: func pointer non-type template parm invalid access
control
   Product: gcc
   Version: 3.4.4
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: johill at lanl dot gov
CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: i686-pc-cygwin
  GCC host triplet: i686-pc-cygwin
GCC target triplet: i686-pc-cygwin


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


[Bug SWING/22150] New: BasicTreeUI Implementation

2005-06-22 Thread langel at redhat dot com
Implementation not complete

-- 
   Summary: BasicTreeUI Implementation
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: SWING
AssignedTo: langel at redhat dot com
ReportedBy: langel at redhat dot com
CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu
dot org


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


Re: [Bug tree-optimization/22071] [4.1 regression] ICE in first_vi_for_offset, at tree-ssa-structalias.c:2506

2005-06-22 Thread Andrew Pinski


On Jun 22, 2005, at 2:59 PM, bkoz at gcc dot gnu dot org wrote:



--- Additional Comments From bkoz at gcc dot gnu dot org  
2005-06-22 18:59 ---


Ah, the old can't find the tunnel at the end of the bridge at the end 
of this

hole problem. Bummer. I hate it when that happens.

Is there an easier way than -O0 to revert back to the old behavior?


yes -fno-tree-salias.

-- Pinski



[Bug tree-optimization/22071] [4.1 regression] ICE in first_vi_for_offset, at tree-ssa-structalias.c:2506

2005-06-22 Thread pinskia at physics dot uc dot edu

--- Additional Comments From pinskia at physics dot uc dot edu  2005-06-22 
19:02 ---
Subject: Re:  [4.1 regression] ICE in first_vi_for_offset, at 
tree-ssa-structalias.c:2506


On Jun 22, 2005, at 2:59 PM, bkoz at gcc dot gnu dot org wrote:


 --- Additional Comments From bkoz at gcc dot gnu dot org  
 2005-06-22 18:59 ---

 Ah, the old can't find the tunnel at the end of the bridge at the end 
 of this
 hole problem. Bummer. I hate it when that happens.

 Is there an easier way than -O0 to revert back to the old behavior?

yes -fno-tree-salias.

-- Pinski



-- 


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


[Bug SWING/22150] BasicTreeUI Implementation

2005-06-22 Thread langel at redhat dot com

--- Additional Comments From langel at redhat dot com  2005-06-22 19:06 
---
I am working on this!

-- 
   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed||1


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


[Bug SWING/22151] New: JInternalFrame causes OutOfMemory error when maximized.

2005-06-22 Thread abalkiss at redhat dot com
JInternalFrame causes OutOfMemory error when maximized.

Run the test case below, maximize the JInternalFrame, wait a while.  OutOfMemory
error.  

When the JInternalFrame is positioned at (10,10) rather than (60,60) the error
doesn't occur.

==TEST CASE==
import java.awt.*;
import javax.swing.*;
import java.io.*;

public class OutOfMemory {
   public static void main(String[] a) throws IOException{
  JFrame myFrame = new JFrame(Outer);
  myFrame.setSize(300,300);
  myFrame.setContentPane(new JDesktopPane());
  JInternalFrame f = new JInternalFrame(Internal);
  f.setSize(200,200);
  f.setVisible(true);
  f.setClosable(true);
  f.setMaximizable(true);
  f.setResizable(true);
  f.setIconifiable(true);
  /* IF THE FOLLOWING LINE IS CHANGED TO f.setLocation (10,10)
 no OutOfMemory error occurs! */
  f.setLocation(60,50);
  myFrame.add(f);
  myFrame.setVisible(true);
   }
}

-- 
   Summary: JInternalFrame causes OutOfMemory error when maximized.
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: SWING
AssignedTo: abalkiss at redhat dot com
ReportedBy: abalkiss at redhat dot com
CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu
dot org


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


[Bug c++/22149] func pointer non-type template parm invalid access control

2005-06-22 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

  Known to fail||2.95.3 3.0.4 3.2.3 3.3.3
   ||3.4.0 4.0.0 4.1.0


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


[Bug tree-optimization/22071] [4.1 regression] ICE in first_vi_for_offset, at tree-ssa-structalias.c:2506

2005-06-22 Thread dberlin at dberlin dot org

--- Additional Comments From dberlin at gcc dot gnu dot org  2005-06-22 
19:23 ---
Subject: Re:  [4.1 regression] ICE in
first_vi_for_offset, at tree-ssa-structalias.c:2506

On Wed, 2005-06-22 at 19:02 +, pinskia at physics dot uc dot edu
wrote:
 --- Additional Comments From pinskia at physics dot uc dot edu  
 2005-06-22 19:02 ---
 Subject: Re:  [4.1 regression] ICE in first_vi_for_offset, at 
 tree-ssa-structalias.c:2506
 
 
 On Jun 22, 2005, at 2:59 PM, bkoz at gcc dot gnu dot org wrote:
 
 
  --- Additional Comments From bkoz at gcc dot gnu dot org  
  2005-06-22 18:59 ---
 
  Ah, the old can't find the tunnel at the end of the bridge at the end 
  of this
  hole problem. Bummer. I hate it when that happens.
 
  Is there an easier way than -O0 to revert back to the old behavior?
 
 yes -fno-tree-salias.
 

No, that won't help either :)


There is no way to revert to the old behavior, you'd have to add flags
for PTA, which will break the SSA path, since we rely on it)



-- 


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


[Bug libstdc++/22111] [4.0 Regression] libstdc++ abi_check

2005-06-22 Thread mark at codesourcery dot com

--- Additional Comments From mark at codesourcery dot com  2005-06-22 19:46 
---
Subject: Re:  [4.0 Regression] libstdc++ abi_check

bkoz at gcc dot gnu dot org wrote:
 --- Additional Comments From bkoz at gcc dot gnu dot org  2005-06-22 
 18:17 ---
 
 I'd like to move this to gcc-4_0-branch.

Please go ahead.

Thanks for doing this in a way that will work with installed-tree testing!



-- 


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


[Bug rtl-optimization/22152] New: Poor loop optimization when using sse2 builtins - regression from 3.3

2005-06-22 Thread fjahanian at apple dot com
In the following trivial test case, gcc-4.1 produces very ineffecient code for 
the loop. gcc-3.3 produces 
much better code.

typedef int __m64 __attribute__ ((__vector_size__ (8)));

__m64 unsigned_add3( const __m64 *a, const __m64 *b, unsigned long count )
{
__m64 sum;
unsigned int i;

for( i = 1; i  count; i++ )
{
sum = (__m64) __builtin_ia32_paddq ((long long)a[i], 
(long long)b[i]);
}
return sum;
}

1) Loop when compiled with gcc-4.1 -O2 -msse2 (note in particular the extra 
movq to memory):

L4:
movl12(%ebp), %esi
movq(%eax,%edx,8), %mm0
paddq   (%esi,%edx,8), %mm0
incl%edx
cmpl%edx, %ecx
movq%mm0, -16(%ebp)
movl-16(%ebp), %esi
movl-12(%ebp), %edi
jne L4

2) Loop using gcc-3.3 compiled with -O2 -msse2:

L6:
movq(%esi,%edx,8), %mm0
paddq   (%eax,%edx,8), %mm0
addl$1, %edx
cmpl%ecx, %edx
jb  L6

AFAICT, culprit is reload which generates extra load and store of %mm0:

(insn 62 30 63 2 (set (mem:V2SI (plus:SI (reg/f:SI 6 bp)
(const_int -16 [0xfff0])) [0 S8 A8])
(reg:V2SI 29 mm0)) 736 {*movv2si_internal} (nil)
(nil))

(insn 63 62 32 2 (set (reg/v:V2SI 4 si [orig:61 sum ] [61])
(mem:V2SI (plus:SI (reg/f:SI 6 bp)
(const_int -16 [0xfff0])) [0 S8 A8])) 736 
{*movv2si_internal} (nil)
(nil))

Here is the larger test case from which above test was extracted:

#include xmmintrin.h

__m64 unsigned_add3( const __m64 *a, const __m64 *b, __m64 *result, unsigned 
long count )
{
__m64 carry, temp, sum, one, onesCarry, _a, _b;
unsigned int i;

if( count  0 )
{
_a = a[0];
_b = b[0];

one = _mm_cmpeq_pi8( _a, _a );  //-1
one = _mm_sub_si64( _mm_xor_si64( one, one ), one );//1
sum = _mm_add_si64( _a, _b );

onesCarry = _mm_and_si64( _a, _b ); //the 1's bit 
is set only if the 1's bit add 
generates a carry
onesCarry = _mm_and_si64( onesCarry, one ); 
//onesCarry = 1

//Trim off the one's bit on both vA and vB to make room for a 
carry bit at the top after the 
add
_a = _mm_srli_si64( _a, 1 );
//vA = 1
_b = _mm_srli_si64( _b, 1 );
//vB = 1

//Add vA to vB and add the carry bit
carry = _mm_add_si64( _a, _b );
carry = _mm_add_si64( carry, onesCarry );

//right shift by 63 bits to get the carry bit for the high 64 
bit quantity
carry = _mm_srli_si64( carry, 63 );

for( i = 1; i  count; i++ )
{
result[i-1] = sum;
_a = a[i];
_b = b[i];
onesCarry = _mm_and_si64( _a, _b );
onesCarry = _mm_and_si64( onesCarry, one );
sum = _mm_add_si64( _a, _b );
_a = _mm_add_si64( _a, onesCarry );
onesCarry = _mm_and_si64( carry, _a );  //find low bit 
carry
sum = _mm_add_si64( sum, carry );   //add 
in carry bit to low word sum 
carry = _mm_add_si64( _a, onesCarry );  //add in low 
bit carry to high result
}

result[i-1] = sum;
}

return carry;
}

Again, gcc-3.3 produces much better code for this loop.

-- 
   Summary: Poor loop optimization when using sse2 builtins -
regression from 3.3
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: rtl-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: fjahanian at apple dot com
CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: apple-x86-darwin
  GCC host triplet: apple-x86-darwin
GCC target triplet: apple-x86-darwin


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


[Bug tree-optimization/22071] [4.1 regression] ICE in first_vi_for_offset, at tree-ssa-structalias.c:2506

2005-06-22 Thread bkoz at gcc dot gnu dot org

--- Additional Comments From bkoz at gcc dot gnu dot org  2005-06-22 20:13 
---

Can somebody do a binary search and find out what patch or patches broke this?


-- 


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


[Bug rtl-optimization/22152] Poor loop optimization when using mmx builtins

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
20:16 ---
This is a MMX builtin and not a SSE builtin.

-- 
   What|Removed |Added

  GCC build triplet|apple-x86-darwin|
   GCC host triplet|apple-x86-darwin|
 GCC target triplet|apple-x86-darwin|i?86-*-*, x86_64-*-*
   Keywords||missed-optimization
Summary|Poor loop optimization when |Poor loop optimization when
   |using sse2 builtins -   |using mmx builtins
   |regression from 3.3 |


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


[Bug libfortran/22124] eoshift with dim=2 fails

2005-06-22 Thread tkoenig at gcc dot gnu dot org

--- Additional Comments From tkoenig at gcc dot gnu dot org  2005-06-22 
20:18 ---
(In reply to comment #3)
 Um, Thomas, PR 21592 which you claim this is a duplicate of, is a C++ front 
 end bug. Did you mean that? 

No, I meant 21594.

Thomas

-- 


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


[Bug target/22152] Poor loop optimization when using mmx builtins

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
20:26 ---
This comes down to PR 14552 and PR 19161.  Since this is MMX code, it is very 
hard to get correct as 
GCC does not currently output emms and vector code without you doing it which 
is what PR 19161 is 
about.  This is a target problem.  Also see PR 22076.

-- 
   What|Removed |Added

  BugsThisDependsOn||14552, 19161, 22076
 Status|UNCONFIRMED |NEW
  Component|rtl-optimization|target
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2005-06-22 20:26:23
   date||


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


[Bug target/22076] Strange code for MMX register moves

2005-06-22 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

OtherBugsDependingO||22152
  nThis||


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


[Bug target/22076] Strange code for MMX register moves

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
20:27 ---
Confirmed.

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Keywords||missed-optimization
   Last reconfirmed|-00-00 00:00:00 |2005-06-22 20:27:37
   date||


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


[Bug tree-optimization/22071] [4.1 regression] ICE in first_vi_for_offset, at tree-ssa-structalias.c:2506

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
20:29 ---
(In reply to comment #11)
 Can somebody do a binary search and find out what patch or patches broke this?
No need to as it is obvious what caused it as the person who caused it already 
commented on this, it 
was introduced when tree-ssa-structalias.c was added.
2005-06-08  Daniel Berlin  [EMAIL PROTECTED]

* Makefile.in (OBJS-common): Add tree-ssa-structalias.o.


-- 


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


[Bug libstdc++/22111] [4.0 Regression] libstdc++ abi_check

2005-06-22 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-06-22 
20:47 ---
Subject: Bug 22111

CVSROOT:/cvs/gcc
Module name:gcc
Branch: gcc-4_0-branch
Changes by: [EMAIL PROTECTED]   2005-06-22 20:39:41

Modified files:
libstdc++-v3   : ChangeLog Makefile.in acinclude.m4 configure 
libstdc++-v3/include: Makefile.in 
libstdc++-v3/libmath: Makefile.in 
libstdc++-v3/libsupc++: Makefile.in 
libstdc++-v3/po: Makefile.in 
libstdc++-v3/src: Makefile.in 
libstdc++-v3/testsuite: Makefile.am Makefile.in 
libstdc++-v3/testsuite/lib: libstdc++.exp 
libstdc++-v3/testsuite/libstdc++-abi: abi.exp 

Log message:
2005-06-22  Benjamin Kosnik  [EMAIL PROTECTED]

PR libstdc++/22111
* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Remove
GLIBCXX_TEST_ABI. Remove duplicate _GLIBCXX_ASM_SYMVER define.
Don't enable abi testing unless versioned.
* configure: Regenerate.
* testsuite/Makefile.am (check-abi): Remove conditional.
* testsuite/Makefile.in: Regenerate.
* testsuite/libstdc++-abi/abi.exp: Call build_support, then check
v3-symver before proceeding.
* testsuite/lib/libstdc++.exp (libstdc++-dg-test): Set v3-symvers
if _GLIBCXX_SYMVER.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.2917.2.62r2=1.2917.2.63
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/Makefile.in.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.155.6.1r2=1.155.6.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/acinclude.m4.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.307.2.2r2=1.307.2.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/configure.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.423.2.3r2=1.423.2.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/include/Makefile.in.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.126.2.4r2=1.126.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/libmath/Makefile.in.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.106r2=1.106.6.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/libsupc++/Makefile.in.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.121r2=1.121.6.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/po/Makefile.in.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.51r2=1.51.6.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/src/Makefile.in.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.217.6.1r2=1.217.6.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/testsuite/Makefile.am.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.42.6.2r2=1.42.6.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/testsuite/Makefile.in.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.88.6.3r2=1.88.6.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/testsuite/lib/libstdc++.exp.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.32.4.3r2=1.32.4.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/testsuite/libstdc++-abi/abi.exp.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.3.8.1r2=1.3.8.2



-- 


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


[Bug bootstrap/17383] [4.0 Regression] Building in src dir fails

2005-06-22 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-06-22 
20:49 ---
Subject: Bug 17383

CVSROOT:/cvs/gcc
Module name:gcc
Branch: gcc-4_0-branch
Changes by: [EMAIL PROTECTED]   2005-06-22 20:42:06

Modified files:
.  : ChangeLog configure.in configure 

Log message:
2005-06-22  Eric Christopher  [EMAIL PROTECTED]

PR bootstrap/17383
* configure.in: Reject building in the source directory.
* configure: Regenerate.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.1057.2.15r2=1.1057.2.16
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/configure.in.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.341.2.4r2=1.341.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/configure.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.204.2.5r2=1.204.2.6



-- 


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


[Bug tree-optimization/22071] [4.1 regression] ICE in first_vi_for_offset, at tree-ssa-structalias.c:2506

2005-06-22 Thread dberlin at dberlin dot org

--- Additional Comments From dberlin at gcc dot gnu dot org  2005-06-22 
20:50 ---
Subject: Re:  [4.1 regression] ICE in
first_vi_for_offset, at tree-ssa-structalias.c:2506

On Wed, 2005-06-22 at 20:13 +, bkoz at gcc dot gnu dot org wrote:
 --- Additional Comments From bkoz at gcc dot gnu dot org  2005-06-22 
 20:13 ---
 
 Can somebody do a binary search and find out what patch or patches broke this?
 
 
I know what broke it.
It was the structalias commit i did when it was added to the mainline.
I'll fix it in the next few days.




-- 


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


[Bug libstdc++/22111] [4.0 Regression] libstdc++ abi_check

2005-06-22 Thread themis_hv at yahoo dot co dot uk

--- Additional Comments From themis_hv at yahoo dot co dot uk  2005-06-22 
20:53 ---
Fixed

-- 
   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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


[Bug AWT/19840] drawImage bug

2005-06-22 Thread mark at gcc dot gnu dot org

--- Additional Comments From mark at gcc dot gnu dot org  2005-06-22 21:29 
---
This seems to have been fixed in GNU Classpath by Sven de Marothy.
http://fitzsim.org/blog/?p=5

-- 


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


[Bug c++/22147] [4.1 regression] ICE in get_bindings

2005-06-22 Thread reichelt at gcc dot gnu dot org

--- Additional Comments From reichelt at gcc dot gnu dot org  2005-06-22 
21:41 ---
Confirmed. Reduced testcase:


templatetypename struct A;

templatetypename T void foo(AT* p) { *p; }

templatetypename struct A
{
friend void fooclass X(AX*);
};

void bar()
{
fooint(0);
}


Crashes mainline since at least 2005-05-25.


-- 
   What|Removed |Added

 CC||reichelt at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Keywords||ice-on-valid-code, monitored
   Last reconfirmed|-00-00 00:00:00 |2005-06-22 21:41:52
   date||


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


[Bug c++/22153] New: [3.4/4.0/4.1 regression] ICE on invalid template specialization

2005-06-22 Thread reichelt at gcc dot gnu dot org
Since GCC 3.4.0 we get an ICE on the following invalid code snippet:

===
templateint void foo();

templateint struct A
{
template friend void foo0();
};
===

bug.cc:5: error: invalid explicit specialization before '' token
bug.cc:5: error: explicit specialization in non-namespace scope 'struct
Aanonymous '
bug.cc:5: error: enclosing class templates are not explicitly specialized
bug.cc:6: internal compiler error: Segmentation fault
Please submit a full bug report, [etc.]

-- 
   Summary: [3.4/4.0/4.1 regression] ICE on invalid template
specialization
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Keywords: ice-on-invalid-code, error-recovery, monitored
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: reichelt at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug target/19530] MMX load intrinsic produces SSE superfluous instructions (movlps)

2005-06-22 Thread guardia at sympatico dot ca

--- Additional Comments From guardia at sympatico dot ca  2005-06-22 21:59 
---
Yup, excited, today, I just compiled the mainbranch to check this out
(gcc-4.1-20050618) and it seems to be fixed! I don't see any strange movlps in
any of the code I tried to compile with it. Can be moved to FIXED (I'm not sure
I should be to one to switch it??)

-- 
   What|Removed |Added

 Status|SUSPENDED   |WAITING


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


[Bug c++/22153] [3.4/4.0/4.1 regression] ICE on invalid template specialization

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
22:10 ---
Confirmed.

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
  Known to fail||3.4.0 4.0.0 4.1.0
  Known to work||3.3.3
   Last reconfirmed|-00-00 00:00:00 |2005-06-22 22:10:35
   date||
   Target Milestone|--- |4.1.0


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


[Bug target/19530] MMX load intrinsic produces SSE superfluous instructions (movlps)

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
22:17 ---
Fixed.

-- 
   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.1.0


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


[Bug translation/21364] [4.0/4.1 regression] [translation] %J in translation instead of %H causes ICE in de.po

2005-06-22 Thread reichelt at gcc dot gnu dot org

--- Additional Comments From reichelt at gcc dot gnu dot org  2005-06-22 
22:34 ---
Fixed in gcc 4.0.1 and mainline by the new .po file.


-- 
   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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


[Bug target/19530] MMX load intrinsic produces SSE superfluous instructions (movlps)

2005-06-22 Thread guardia at sympatico dot ca

--- Additional Comments From guardia at sympatico dot ca  2005-06-22 22:59 
---
Thanks to Uros and everybody!

-- 
   What|Removed |Added

 Status|RESOLVED|VERIFIED


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


[Bug c/20631] Support -std=c90 as alias for -std=c89

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-23 
00:21 ---
Confirmed.

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2005-06-23 00:21:08
   date||


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


[Bug c++/16635] g++ instantiates templates at the wrong place

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-23 
01:19 ---
(In reply to comment #5)
 Here's the same thing with overloaded functions, causing a wrong-code error.  
 If the last definition of 
 'bar' is commented out, the testcase passes, but otherwise not.
That code is acutally invalid and really should have been rejected see PR 2922 
for that.

-- 
   What|Removed |Added

   Keywords|wrong-code  |


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


[Bug c++/16635] g++ instantiates templates at the wrong place

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-23 
01:27 ---
(In reply to comment #6)
 (In reply to comment #5)
  Here's the same thing with overloaded functions, causing a wrong-code 
  error.  If the last definition 
of 
  'bar' is commented out, the testcase passes, but otherwise not.
 That code is acutally invalid and really should have been rejected see PR 
 2922 for that.

Also if we move the template func after bar and main after the second bar, we 
get back to basicially PR 
2922.  So the first testcase is the only one which the problem for this bug.

-- 


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


[Bug c++/22147] [4.1 regression] ICE in get_bindings

2005-06-22 Thread bangerth at dealii dot org

--- Additional Comments From bangerth at dealii dot org  2005-06-23 02:45 
---
Is this really valid? class Y is undeclared at the point of the friend 
declaration...

W.

-- 


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


[Bug c++/6273] [4.0/4.1 regression] User-defined operator+ and use of enum values in computation of array bounds

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-23 
03:47 ---
(In reply to comment #7)
 -
 template typename struct X {
 enum { N = 10 };
 int items[N+1];
 };
 template typename A, typename B int operator+(A,B);
 Xint x;
 --

Actually I think there is two different bugs here, the above code is vaild I 
think because operators just 
like functions have an overloaded set for lookup which is PR 2922.
The testcase which is questionable is:
template typename A, typename B int operator+(A,B);
template typename struct X {
enum a{ N = 10 };
int items[N+1];
};
Xint x;

-- 


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


[Bug c++/22154] New: [DR 382] qualified names should allow typename keyword in front of it (even in non-templates)

2005-06-22 Thread pinskia at gcc dot gnu dot org
The following should compile according to this DR report (but it is only in 
ready state so I am going to 
confirm it and then suspend it):
class a {};
typename ::a f();

Also the following should not compile as a is not qualified then:
class a {};
typename a f();

-- 
   Summary: [DR 382] qualified names should allow typename keyword
in front of it (even in non-templates)
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Keywords: rejects-valid
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pinskia at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug c++/22154] [DR 382] qualified names should allow typename keyword in front of it (even in non-templates)

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-23 
04:27 ---
Confirmed, to ...

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
  Known to fail||2.95.3 3.3.5 4.0.0
   Last reconfirmed|-00-00 00:00:00 |2005-06-23 04:27:34
   date||


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


[Bug c++/22154] [DR 382] qualified names should allow typename keyword in front of it (even in non-templates)

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-23 
04:28 ---
Suspend this as it only in the ready state.

-- 


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


[Bug libmudflap/22155] New: ICE with: -fmudflap -D_GLIBCXX_DEBUG

2005-06-22 Thread ctsa at u dot washington dot edu
I get an ICE for gcc 4.0.0 when trying to use mudflap and libstdc++ debug mode
together; This is the smallest testcase I could make:

test.cc:

#include vector

struct S { unsigned i; };

void g(const unsigned u, std::vectorunsigned s);

void f(const S s) {
  std::vectorstd::vectorunsigned  t(1);
  g(s.i,t[0]);
}


$ g++ -D_GLIBCXX_DEBUG -fmudflap -c test.cc
test.cc: In function 'void f(const S)':
test.cc:7: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://gcc.gnu.org/bugs.html for instructions.

$ gcc -v
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../gcc-4.0.0/configure --enable-languages=c,c++
--prefix=/home/ctsa/opt/i686-linux/gcc-4.0.0 --enable-concept-checks
--enable-__cxa_atexit
Thread model: posix
gcc version 4.0.0

-- 
   Summary: ICE with: -fmudflap  -D_GLIBCXX_DEBUG
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: libmudflap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ctsa at u dot washington dot edu
CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


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


[Bug libmudflap/22155] ICE with: -fmudflap -D_GLIBCXX_DEBUG

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-23 
04:43 ---
I thought there was a bug about something like this before (and it was fixed 
too) but I cannot find it 
right now, maybe I am not looking hard enough.

-- 


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


[Bug middle-end/19466] [meta-bug] bit-fields are non optimal

2005-06-22 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

  BugsThisDependsOn||22156


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


[Bug middle-end/22156] New: [4.0/4.1 Regression] bit-field copying regressed

2005-06-22 Thread pinskia at gcc dot gnu dot org
Take the following code:
struct s
{
  int i1:1;
  int i2:1;
  int i3:1;
};
void f(struct s *x, struct s *y) { *x = *y; }

In 3.4.0 (and currently with the C++ compiler too), we were able to get optimal 
code:
movl8(%esp), %eax
movl(%eax), %edx
movl4(%esp), %eax
movl%edx, (%eax)
ret

But in (and after) 4.0.0 and the C compiler we get:
f:
pushl   %esi
pushl   %ebx
movl16(%esp), %eax
movl12(%esp), %esi
movzbl  (%eax), %eax
movb%al, %dl
movb%al, %bl
salb$5, %al
sarb$7, %al
movzbl  %al, %ecx
movl(%esi), %eax
salb$6, %dl
andl$1, %ecx
sarb$7, %dl
movzbl  %dl, %edx
salb$7, %bl
andl$-7, %eax
sall$2, %ecx
andl$1, %edx
sarb$7, %bl
addl%edx, %edx
orl %ecx, %eax
orl %edx, %eax
movzbl  %bl, %edx
andl$1, %edx
andl$-2, %eax
orl %edx, %eax
movl%eax, (%esi)
popl%ebx
popl%esi
ret

Which is much worse

-- 
   Summary: [4.0/4.1 Regression] bit-field copying regressed
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Keywords: missed-optimization
  Severity: normal
  Priority: P2
 Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pinskia at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
OtherBugsDependingO 19466
 nThis:


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


[Bug middle-end/22156] [4.0/4.1 Regression] bit-field copying regressed

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-23 
05:04 ---
Note this also effects PPC, though not as badly as there is only one load:
in 3.3.3:
_f:
lwz r0,0(r4)
stw r0,0(r3)
blr

in 4.0.0 and above:
_f:
lwz r11,0(r4)
lwz r0,0(r3)
slwi r2,r11,2
slwi r9,r11,1
rlwimi r0,r2,30,2,2
rlwimi r0,r9,31,1,1
rlwimi r0,r11,0,0,0
stw r0,0(r3)
blr

-- 
   What|Removed |Added

   Target Milestone|--- |4.0.1


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


[Bug c++/22154] [DR 382] qualified names should allow typename keyword in front of it (even in non-templates)

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-23 
05:05 ---
Oh and I thought I saw a bug or two about this before.

-- 


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


[Bug middle-end/22156] [4.0/4.1 Regression] bit-field copying regressed

2005-06-22 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-23 
05:11 ---
The main difference between the C++ front-end and the C front-end in this 
respect is how they 
repesent bit-fields.
for the C++ front-end we get the following output from SRA:
Cannot scalarize variable D.1693 because its type cannot be decomposed

but for the C front-end we get:
Scan results:
D.1237: n_uses=0 n_copies=2

Initial instantiation for D.1237
Using element-copy for D.1237
  D.1237.i1 - SR.12
  D.1237.i2 - SR.13
  D.1237.i3 - SR.14

So to me this looks like a SRA bug in that it should be using BIT_FIELD_REF 
instead if it can.

-- 
   What|Removed |Added

 CC||rth at gcc dot gnu dot org


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


[Bug tree-optimization/22157] New: [4.0/4.1 Regression] struct copying code gen

2005-06-22 Thread pinskia at gcc dot gnu dot org
Take the following code:
struct s
{
  short t;
  short y1;
};

void f(struct s *x, struct s *y)
{
  struct s t = *x;
  *y = t;
}

In 3.4.0, we produced:
_f:
lwz r0,0(r3)
stw r0,0(r4)
blr
but in 4.0.0 and above:
_f:
lhz r2,2(r3)
lha r0,0(r3)
sth r2,2(r4)
sth r0,0(r4)
blr

I am starting to think we should use VIEW_CONVERT_EXPR in SRA and store it into 
a type which is the 
same as the mode if the mode is not BKL_MODE (RTL mode by the way) and we don't 
access the 
temporary variable's fields.  That would fix PR 22156 also.  Maybe I can look 
into doing this.

-- 
   Summary: [4.0/4.1 Regression] struct copying code gen
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Keywords: missed-optimization
  Severity: normal
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pinskia at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org,rth at gcc dot gnu dot
org
OtherBugsDependingO 22156
 nThis:


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


[Bug middle-end/22156] [4.0/4.1 Regression] bit-field copying regressed

2005-06-22 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

  BugsThisDependsOn||22157


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


[Bug tree-optimization/22157] [4.0/4.1 Regression] struct copying code gen

2005-06-22 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

   Target Milestone|--- |4.0.2


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