[Bug target/18592] [3.3/3.4 regression] [m68k] ICE in output_operand: invalid expression as operand

2004-12-16 Thread corsepiu at gcc dot gnu dot org

--- Additional Comments From corsepiu at gcc dot gnu dot org  2004-12-16 
08:41 ---
  I am going to reopen them and remove the avr/h8300 from PR18542.
 
 You can easily check that by testing if reverting the patch from comment #2  
 helps. 
Please read what I wrote in comment #10.

-- 


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


[Bug target/18563] ICE: output_operand: invalid expression as operand

2004-12-16 Thread corsepiu at gcc dot gnu dot org

--- Additional Comments From corsepiu at gcc dot gnu dot org  2004-12-16 
08:44 ---
WTH are you permantently closing this PR?

This PR is addressing the h8300 and one of the m68k-maintainers (Bernardo) had
explicitly requested me to split the h8300-case from the m68k.

Upset, Ralf

-- 


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


[Bug c++/19030] New: ice on tree check

2004-12-16 Thread pluto at pld-linux dot org
# g++ libkmailprivate_la_all_cpp.ii -c 
(...errors...)  
KMail::MaildirJob'  
./kmail/kmfoldermaildir.h:10: error: 'struct KMail::MaildirJob'  
has a previous declaration as 'struct KMail::MaildirJob'  
./kmail/maildirjob.h:41: internal compiler error: tree check:  
expected class 'declaration', have 'exceptional' (error_mark)  
in pushtag, at cp/name-lookup.c:4672  
  
# gcc -v  
Reading specs from /usr/lib/gcc/pentium3-pld-linux/4.0.0/specs  
Configured with: ../configure --prefix=/usr --libdir=/usr/lib  
--libexecdir=/usr/lib --infodir=/usr/share/info--mandir=/usr/share/man  
--enable-shared --enable-threads=posix --enable-__cxa_atexit  
--enable-languages=c,c++,f95,objc,ada,java --enable-c99 --enable-long-long  
--enable-multilib --enable-nls --with-gnu-as --with-gnu-ld --with-system-zlib  
--with-slibdir=/lib --without-x --enable-cmath pentium3-pld-linux  
Thread model: posix  
gcc version 4.0.0 20041212 (experimental) (PLD Linux)

-- 
   Summary: ice on tree check
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pluto at pld-linux dot org
CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: pentium3-pld-linux
  GCC host triplet: pentium3-pld-linux
GCC target triplet: pentium3-pld-linux


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


[Bug c++/19030] ice on tree check

2004-12-16 Thread pluto at pld-linux dot org

--- Additional Comments From pluto at pld-linux dot org  2004-12-16 09:09 
---
Created an attachment (id=7753)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7753action=view)
testcase


-- 


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


[Bug rtl-optimization/19001] [3.4/4.0 Regression] Loops with power of two step and variable bounds not unrolled

2004-12-16 Thread rakdver at gcc dot gnu dot org

--- Additional Comments From rakdver at gcc dot gnu dot org  2004-12-16 
09:18 ---
Patch:

http://gcc.gnu.org/ml/gcc-patches/2004-12/msg01203.html

-- 
   What|Removed |Added

   Keywords||patch


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


[Bug target/19005] [3.4 regression] Error: bad register name `%sil'

2004-12-16 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-16 
09:31 ---
Subject: Bug 19005

CVSROOT:/cvs/gcc
Module name:gcc
Branch: gcc-3_3-branch
Changes by: [EMAIL PROTECTED]   2004-12-16 09:31:18

Modified files:
gcc: ChangeLog 
gcc/config/i386: i386.md 

Log message:
PR target/19005
* config/i386/i386.md (swaphi_1): Swap with swaphi_2, allow with
optimize_size.
(swapqi_1): Rename from swapqi.  Enable only for no partial reg
stall and optimize_size.
(swapqi_2): New.
(swaphi_1, swaphi_2, swapqi_1): Add athlon_decode.
(swapsi, swaphi_1, swaphi_2, swapqi_1, swapdi): Remove modrm override.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_3-branchr1=1.16114.2.1039r2=1.16114.2.1040
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.md.diff?cvsroot=gcconly_with_tag=gcc-3_3-branchr1=1.404.2.27r2=1.404.2.28



-- 


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


[Bug target/19005] [3.4 regression] Error: bad register name `%sil'

2004-12-16 Thread rth at gcc dot gnu dot org

--- Additional Comments From rth at gcc dot gnu dot org  2004-12-16 09:37 
---
Fixed.

-- 
   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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


[Bug target/19028] [3.4/4.0 Regression] ICE in libjava

2004-12-16 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-16 
09:43 ---
Subject: Bug 19028

CVSROOT:/cvs/gcc
Module name:gcc
Changes by: [EMAIL PROTECTED]   2004-12-16 09:42:51

Modified files:
gcc: ChangeLog 
gcc/config/i386: i386.md 

Log message:
PR target/19028
* config/i386/i386.md (sse compare splitter): Test for SF and DFmode
explicitly instead of using VALID_SSE_REG_MODE.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gccr1=2.6852r2=2.6853
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.md.diff?cvsroot=gccr1=1.580r2=1.581



-- 


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


[Bug target/19028] [3.4/4.0 Regression] ICE in libjava

2004-12-16 Thread rth at gcc dot gnu dot org

--- Additional Comments From rth at gcc dot gnu dot org  2004-12-16 09:54 
---
Fixed.

-- 
   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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


[Bug middle-end/18882] [3.3/3.4 Regression] wrong results with complex long double

2004-12-16 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-16 
10:23 ---
Subject: Bug 18882

CVSROOT:/cvs/gcc
Module name:gcc
Branch: gcc-3_4-branch
Changes by: [EMAIL PROTECTED]   2004-12-16 10:23:32

Modified files:
gcc: ChangeLog function.c 
gcc/testsuite  : ChangeLog 
Added files:
gcc/testsuite/g++.dg/other: complex1.C 

Log message:
PR middle-end/18882
* function.c (assign_stack_local_1): Use BITS_PER_UNIT alignment
when passed -2 as 'align'.
(put_var_into_stack): Use 'bool' as the type for the three local
predicates.  Adjust calls to put_reg_into_stack.
When passed a CONCAT, instruct put_reg_into_stack to use
a consecutive stack slot for the second part.
(put_reg_into_stack): Remove 'promoted_mode' parameter, add
'consecutive_p' parameter.  Turn the three predicates into 'bool'
parameters.  Retrieve the register mode from 'reg'.
When consecutive_p is true, instruct assign_stack_local_1 to use
BITS_PER_UNIT alignment.
(put_addressof_into_stack): Use 'bool' as the type for the two
local predicates. Adjust call to put_reg_into_stack.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=2.2326.2.743r2=2.2326.2.744
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/function.c.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.483.4.22r2=1.483.4.23
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.3389.2.327r2=1.3389.2.328
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/other/complex1.C.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=NONEr2=1.1.2.1



-- 


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


[Bug c++/19018] [3.3 Regression] virtual memory exhausted

2004-12-16 Thread david at starks-browning dot com

--- Additional Comments From david at starks-browning dot com  2004-12-16 
10:30 ---
True, but I don't believe the patch for PR16273 is applicable to gcc-3.3.
In fact, I am unable to reproduce the fault in gcc-3.3 using the 10,000-line
test case that was attached to PR16273.  Therefore, my guess is that the
smaller test case (attachment id 6664) was refined against gcc-3.4 and led to
the patch that fixed the symptom in gcc-3.4.  I don't know how much of that
effort could be applied to gcc-3.3.

-- 


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


[Bug c++/18905] [4.0 Regression] Strange error: subscripted value is neither array nor pointer

2004-12-16 Thread nathan at gcc dot gnu dot org

--- Additional Comments From nathan at gcc dot gnu dot org  2004-12-16 
11:00 ---
2004-12-16  Nathan Sidwell  [EMAIL PROTECTED]

PR c++/18905
* cp-tree.h (integral_constant_value): Declare.
* call.c (null_ptr_cst_p): Use integral_constant_value, not
decl_constant_value.
(convert_like_real): Likewise.
* class.c (check_bitfield_decl): Likewise.
* cvt.c (ocp_convert): Likewise.
(convert): Remove unnecessary decl_constant_value call.
* decl.c (compute_array_index_type): Use integral_constant_value,
not decl_constant_value.
(build_enumerator): Likewise.
* decl2.c (grokfield): Likewise.
* init.c (decl_constant_value): Simplify.
(integral_constant_value): New.
* pt.c (fold_decl_constant_value): Use integral_constant_value,
remove subsequent check.
(tsubst): Use integral_constant_value, not decl_constant_value.
(tsubst_copy, unify): Likewise.
* typeck.c (decay_conversion): Likewise.
(build_compound_expr): Remove unnecessary decl_constant_value
calls.
(build_static_cast_1, build_reinterpret_cast_1):
(convert_for_assignment): Remove comment about not calling
decl_constant_value.

-- 
   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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


[Bug c++/18905] [4.0 Regression] Strange error: subscripted value is neither array nor pointer

2004-12-16 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-16 
11:04 ---
Subject: Bug 18905

CVSROOT:/cvs/gcc
Module name:gcc
Changes by: [EMAIL PROTECTED]   2004-12-16 11:04:09

Modified files:
gcc/cp : call.c class.c cp-tree.h cvt.c decl.c decl2.c 
 init.c pt.c typeck.c ChangeLog 
gcc/testsuite/g++.dg/opt: static3.C 
gcc/testsuite  : ChangeLog 
Added files:
gcc/testsuite/g++.dg/template: init4.C 

Log message:
cp:
PR c++/18905
* cp-tree.h (integral_constant_value): Declare.
* call.c (null_ptr_cst_p): Use integral_constant_value, not
decl_constant_value.
(convert_like_real): Likewise.
* class.c (check_bitfield_decl): Likewise.
* cvt.c (ocp_convert): Likewise.
(convert): Remove unnecessary decl_constant_value call.
* decl.c (compute_array_index_type): Use integral_constant_value,
not decl_constant_value.
(build_enumerator): Likewise.
* decl2.c (grokfield): Likewise.
* init.c (decl_constant_value): Simplify.
(integral_constant_value): New.
* pt.c (fold_decl_constant_value): Use integral_constant_value,
remove subsequent check.
(tsubst): Use integral_constant_value, not decl_constant_value.
(tsubst_copy, unify): Likewise.
* typeck.c (decay_conversion): Likewise.
(build_compound_expr): Remove unnecessary decl_constant_value
calls.
(build_static_cast_1, build_reinterpret_cast_1):
(convert_for_assignment): Remove comment about not calling
decl_constant_value.
testsuite:
PR c++/18905
* g++.dg/template/init4.C: New.
* g++.dg/opt/static3.C: Enable optimizer.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/call.c.diff?cvsroot=gccr1=1.522r2=1.523
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/class.c.diff?cvsroot=gccr1=1.694r2=1.695
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/cp-tree.h.diff?cvsroot=gccr1=1.1080r2=1.1081
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/cvt.c.diff?cvsroot=gccr1=1.173r2=1.174
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/decl.c.diff?cvsroot=gccr1=1.1341r2=1.1342
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/decl2.c.diff?cvsroot=gccr1=1.760r2=1.761
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/init.c.diff?cvsroot=gccr1=1.405r2=1.406
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gccr1=1.958r2=1.959
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/typeck.c.diff?cvsroot=gccr1=1.604r2=1.605
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gccr1=1.4538r2=1.4539
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/opt/static3.C.diff?cvsroot=gccr1=1.1r2=1.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gccr1=1.4768r2=1.4769
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/init4.C.diff?cvsroot=gccr1=NONEr2=1.1



-- 


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


[Bug libfortran/19032] New: modulo generates wrong result

2004-12-16 Thread Thomas dot Koenig at online dot de
$ cat mod-neg.f90
  integer :: a,b
  a = 2
  b = -1
  print *,modulo(2,-1)
  print *,modulo(a,b)
end
$ gfortran mod-neg.f90  ./a.out
   0
  -1
$ gfortran -v
Reading specs from /home/zfkts/lib/gcc/ia64-unknown-linux-gnu/4.0.0/specs
Configured with: ../gcc-4.0-20041212/configure --prefix=/home/zfkts
--enable-languages=c,c++,f95 : (reconfigured) ../gcc-4.0-20041212/configure
--prefix=/home/zfkts --enable-languages=c,c++,f95 --disable-shared
Thread model: posix
gcc version 4.0.0 20041212 (experimental)

It's a bit strange that the first result is correct, and the
second one isn't.

-- 
   Summary: modulo generates wrong result
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: libfortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: Thomas dot Koenig at online dot de
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug c++/14075] (foo) accepted as char[] initializer

2004-12-16 Thread nathan at gcc dot gnu dot org

--- Additional Comments From nathan at gcc dot gnu dot org  2004-12-16 
11:41 ---
what a silly restriction ...

-- 
   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |nathan at gcc dot gnu dot
   |dot org |org
 Status|REOPENED|ASSIGNED


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


[Bug fortran/18998] Gfortran produces wrong output (c/f to g77)

2004-12-16 Thread Thomas dot Koenig at online dot de

--- Additional Comments From Thomas dot Koenig at online dot de  2004-12-16 
11:47 ---
The code runs correctly on IA-64.

$ gfortran fft2.for
$ ./a.out
   0.00   0.00
   0.00   0.00
   4.00   0.00
   0.00   0.00
   0.00   0.00
   0.00   0.00
   4.00   0.00
   0.00   0.00
STOP 0
$ gfortran -O3 fft2.for
$ ./a.out
   0.00   0.00
   0.00   0.00
   4.00   0.00
   0.00   0.00
   0.00   0.00
   0.00   0.00
   4.00   0.00
   0.00   0.00
STOP 0
For comparison:
$ ifort fft2.for
$ ./a.out
  0.000E+00  0.000E+00
  0.000E+00  0.000E+00
   4.00  0.000E+00
  0.000E+00  0.000E+00
  0.000E+00  0.000E+00
  0.000E+00  0.000E+00
   4.00  0.000E+00
  0.000E+00  0.000E+00
$ gfortran -v
Reading specs from /home/zfkts/lib/gcc/ia64-unknown-linux-gnu/4.0.0/specs
Configured with: ../gcc-4.0-20041212/configure --prefix=/home/zfkts
--enable-languages=c,c++,f95 : (reconfigured) ../gcc-4.0-20041212/configure
--prefix=/home/zfkts --enable-languages=c,c++,f95 --disable-shared
Thread model: posix
gcc version 4.0.0 20041212 (experimental)


-- 


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


[Bug preprocessor/9449] UCNs not recognized in identifiers (c++/c99)

2004-12-16 Thread joseph at codesourcery dot com

--- Additional Comments From joseph at codesourcery dot com  2004-12-16 
12:33 ---
Subject: Re:  UCNs not recognized in identifiers
 (c++/c99)

On Thu, 16 Dec 2004, zack at codesourcery dot com wrote:

 Because of the ABI implications, I consider it completely unacceptable

Which ABI implications?

(a) It isn't explicitly stated that different UCNs designating the same 
character are equivalent to each other (and to that character) in 
identifiers, but I don't think there's any real doubt that they are meant 
to be equivalent.

(b) There is no normalisation, but I'm confident that the answer from WG14 
if this is queried would be that the standard is correct and by design it 
normatively references ISO 10646 (not Unicode) which doesn't include the 
normalisation definitions of UAX 15 and implementation of the standard is 
not meant to involve large external tables.  If there are cases of 
ambiguity a -Wnfc option (default on) to warn for identifiers not in NFC 
(or indeed -Wnfkc, default on, for identifiers not in NFKC) would draw 
users' attention to doubtful identifiers.  (TR 10176 expressly notes the 
problems of ambiguity of appearance of entirely different characters even 
without combining characters, says that language standards need not 
provide for normalisation if they allow combining characters, and excludes 
most combining characters where precombined characters are available for 
the specific purpose of avoiding alternate representations of 
identifiers.)

(c) Though we could do what we want with extended characters (as opposed 
to UCNs) in source files in phase 1, it seems safest to err on the side of 
rejecting all extended characters that wouldn't be accepted as UCNs, 
rather than e.g. applying NFC, to avoid giving identifiers with such 
characters a meaning which might then need to be preserved in future.

(d) There are genuine ABI issues with how extended characters are 
represented in object files, but I think those need to be resolved by 
selecting between UTF-8 and mangling (default UTF-8) based on target 
configurations rather than on the capabilities of the assembler and linker 
in use, and by getting an explicit statement about encoding put in the ELF 
specification.



-- 


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


[Bug middle-end/18776] [4.0 Regression] Libgfortran doesn't build again

2004-12-16 Thread ebotcazou at gcc dot gnu dot org

--- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-12-16 
12:55 ---
The error has changed a bit:

/home/eric/cvs/gcc/libgfortran/generated/_exp_c4.f90: In function
'specific__exp_c4':
/home/eric/cvs/gcc/libgfortran/generated/_exp_c4.f90:28: internal compiler
error: in schedule_insns, at sched-rgn.c:2551
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://gcc.gnu.org/bugs.html for instructions.

but it is still related to liveness info and complex values.


-- 
   What|Removed |Added

   Last reconfirmed|-00-00 00:00:00 |2004-12-16 12:55:31
   date||


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


[Bug target/17603] [4.0 Regression] cpowf and cpowl give wrong results

2004-12-16 Thread jbeulich at novell dot com

--- Additional Comments From jbeulich at novell dot com  2004-12-16 12:59 
---
This happens when the ABI is (was) imprecise. Earlier versions did not special
case long double complex, but the current version does. Hence I have a patch
ready that partly reverses the original change (actually, implements the
original behavior for this type in a form slightly closer matching the ABI
definition); expecting to submit this later today or tomorrow (currently
building/testing).

As to the same(?) problem observed with float complex: I doubt the mentioned
patch causes this, since behavior for that type wasn't modified by it.

-- 


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


[Bug c/14765] [3.3 Regression] ice-on-invalid-code, ICE while compiling ({}) expression

2004-12-16 Thread reichelt at gcc dot gnu dot org

--- Additional Comments From reichelt at gcc dot gnu dot org  2004-12-16 
12:54 ---
Bootstrapped and regtested on 3.3 branch.

Gaby, is it ok to commit the patch in comment #4 to the 3.3 branch?
Do we need the testcase?


-- 
   What|Removed |Added

 CC||gdr at gcc dot gnu dot org
  Known to fail|3.4.0 3.3.4 tree-ssa 3.2.3  |3.4.0 3.3.5 3.3 3.2.3 3.1
   |3.2.2 3.1   |


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


[Bug target/19009] Loading of FP constants into FP reg via SSE reg

2004-12-16 Thread uros at kss-loka dot si

--- Additional Comments From uros at kss-loka dot si  2004-12-16 13:50 
---
-finline-functions is needed to trigger the bug with -O2. 

The attached testcase should be compiled with '-O2 -march=pentium4 -mfpmath=387
-ffast-math -D__NO_MATH_INLINES -finline-functions' to get:
...
pxor%xmm0, %xmm0
movsd   %xmm0, -16(%ebp)
fldl-16(%ebp)
fcomip  %st(1), %st
je  .L23
fld %st(0)
...

and:

grep xmm zero.s
pxor%xmm0, %xmm0
movsd   %xmm0, -16(%ebp)
movsd   %xmm0, -16(%ebp)
movsd   %xmm0, -16(%ebp)
movsd   %xmm0, -16(%ebp)

movsd   %xmm0, 8(%edx)
movsd   %xmm0, (%edx)

where movsds are followed by:
fldl-16(%ebp)

BTW: #include math.h can be removed from testcase to avoid
-D__NO_MATH_INLINES. Ther result will be the same.


-- 


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


[Bug c/19033] New: Passing array as a function parameter in C99 style fails

2004-12-16 Thread bonzo at lib dot msu dot ru
The following code fails to compile:
pl-1.c:

void print(int res, int K, double a[K][K])
{
}

int inverse(int K,double in[K][K],double out[K][K])
{
return 0;

}
int main(void)
{
int K;

double a[K][K];
double b[K][K];

print(inverse(K, a, b),K,b);
return 0;
}

[EMAIL PROTECTED] ~]$ gcc -v -save-temps -O2 -std=gnu99 pl-1.c
Reading specs from /usr/lib/gcc/i686-pc-linux-gnu/3.4.3/specs
Configured with: ../gcc-3.4.3/configure --prefix=/usr --sysconfdir=/etc --
localstatedir=/var --enable-shared --with-gnu-as --with-gnu-ld --enable-
threads --enable-__cxa_atexit --enable-initfini-array --disable-nls --with-
system-zlib --enable-java-awt=gtk,xlib
Thread model: posix
gcc version 3.4.3
 /usr/libexec/gcc/i686-pc-linux-gnu/3.4.3/cc1 -E -quiet -v pl-1.c -
mtune=pentiumpro -std=gnu99 -O2 -o pl-1.i
ignoring nonexistent directory /usr/lib/gcc/i686-pc-linux-
gnu/3.4.3/../../../../i686-pc-linux-gnu/include
#include ... search starts here:
#include ... search starts here:
 /usr/local/include
 /usr/lib/gcc/i686-pc-linux-gnu/3.4.3/include
 /usr/include
End of search list.
 /usr/libexec/gcc/i686-pc-linux-gnu/3.4.3/cc1 -fpreprocessed pl-1.i -quiet -
dumpbase pl-1.c -mtune=pentiumpro -auxbase pl-1 -O2 -std=gnu99 -version -o pl-
1.s
GNU C version 3.4.3 (i686-pc-linux-gnu)
compiled by GNU C version 3.4.3.
GGC heuristics: --param ggc-min-expand=64 --param ggc-min-heapsize=64552
pl-1.c: In function `print':
pl-1.c:6: error: prior parameter's size depends on 'K'
pl-1.c:6: error: prior parameter's size depends on 'K'
pl-1.c:6: error: prior parameter's size depends on 'K'
pl-1.c:6: error: prior parameter's size depends on 'K'
[EMAIL PROTECTED] ~]$

It compiles OK with -O0 and -O1.

-- 
   Summary: Passing array as a function parameter in C99 style fails
   Product: gcc
   Version: 3.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: bonzo at lib dot msu dot ru
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug middle-end/18590] [3.3/3.4 regression] ICE in add_insn_before, at emit-rtl.c:3599

2004-12-16 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-16 
13:59 ---
Subject: Bug 18590

CVSROOT:/cvs/gcc
Module name:gcc
Branch: gcc-3_3-branch
Changes by: [EMAIL PROTECTED]   2004-12-16 13:59:03

Modified files:
gcc: ChangeLog function.c 

Log message:
PR middle-end/18590
* function.c (fixup_var_refs_insns_with_hash): Do not invoke
fixup_var_refs_insn on insns marked as deleted.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_3-branchr1=1.16114.2.1040r2=1.16114.2.1041
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/function.c.diff?cvsroot=gcconly_with_tag=gcc-3_3-branchr1=1.389.2.16r2=1.389.2.17



-- 


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


[Bug middle-end/18882] [3.3/3.4 Regression] wrong results with complex long double

2004-12-16 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-16 
14:07 ---
Subject: Bug 18882

CVSROOT:/cvs/gcc
Module name:gcc
Branch: gcc-3_3-branch
Changes by: [EMAIL PROTECTED]   2004-12-16 14:04:54

Modified files:
gcc: ChangeLog function.c 
gcc/testsuite  : ChangeLog 
Added files:
gcc/testsuite/g++.dg/other: complex1.C 

Log message:
PR middle-end/18882
* function.c (assign_stack_local_1): Use BITS_PER_UNIT alignment
when passed -2 as 'align'.
(put_var_into_stack): Adjust calls to put_reg_into_stack.
When passed a CONCAT, instruct put_reg_into_stack to use
a consecutive stack slot for the second part.
(put_reg_into_stack): Remove 'promoted_mode' parameter, add
'consecutive_p' parameter.  Retrieve the register mode from 'reg'.
When consecutive_p is true, instruct assign_stack_local_1 to use
BITS_PER_UNIT alignment.
(put_addressof_into_stack): Adjust call to put_reg_into_stack.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_3-branchr1=1.16114.2.1041r2=1.16114.2.1042
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/function.c.diff?cvsroot=gcconly_with_tag=gcc-3_3-branchr1=1.389.2.17r2=1.389.2.18
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_3-branchr1=1.2261.2.389r2=1.2261.2.390
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/other/complex1.C.diff?cvsroot=gcconly_with_tag=gcc-3_3-branchr1=NONEr2=1.1.4.1



-- 


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


[Bug c++/19034] New: internal compiler error: in cp_tree_equal, at cp/tree.c:1633

2004-12-16 Thread jttoivon at cc dot helsinki dot fi
Following command causes an ICE
/home/jttoivon/usr/bin/g++ -v -save-temps poista.cpp
This used to work with 3.3.3 compiler.
Here's the dump.

Reading specs from /home/jttoivon/usr/lib/gcc/i686-pc-linux-gnu/3.4.3/specs
Configured with: /home/jttoivon/gcc-3.4.3/configure --prefix=/home/jttoivon/usr
Thread model: posix
gcc version 3.4.3
 /home/jttoivon/usr/libexec/gcc/i686-pc-linux-gnu/3.4.3/cc1plus -E -quiet -v
-D_GNU_SOURCE poista.cpp -mtune=pentiumpro -o poista.ii
ignoring nonexistent directory
/home/jttoivon/usr/lib/gcc/i686-pc-linux-gnu/3.4.3/../../../../i686-pc-linux-gnu/include
#include ... search starts here:
#include ... search starts here:
 /home/jttoivon/boost_1_31_0
 
/home/jttoivon/usr/lib/gcc/i686-pc-linux-gnu/3.4.3/../../../../include/c++/3.4.3
 
/home/jttoivon/usr/lib/gcc/i686-pc-linux-gnu/3.4.3/../../../../include/c++/3.4.3/i686-pc-linux-gnu
 
/home/jttoivon/usr/lib/gcc/i686-pc-linux-gnu/3.4.3/../../../../include/c++/3.4.3/backward
 /usr/local/include
 /home/jttoivon/usr/include
 /home/jttoivon/usr/lib/gcc/i686-pc-linux-gnu/3.4.3/include
 /usr/include
End of search list.
 /home/jttoivon/usr/libexec/gcc/i686-pc-linux-gnu/3.4.3/cc1plus -fpreprocessed
poista.ii -quiet -dumpbase poista.cpp -mtune=pentiumpro -auxbase poista -version
-o poista.s
GNU C++ version 3.4.3 (i686-pc-linux-gnu)
compiled by GNU C version 3.4.2 20041017 (Red Hat 3.4.2-6.fc3).
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
In file included from poista.cpp:1:
meta.hpp:188: internal compiler error: in cp_tree_equal, at cp/tree.c:1633
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://gcc.gnu.org/bugs.html for instructions.

-- 
   Summary: internal compiler error: in cp_tree_equal, at
cp/tree.c:1633
   Product: gcc
   Version: 3.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jttoivon at cc dot helsinki dot fi
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug middle-end/18882] [3.3/3.4 Regression] wrong results with complex long double

2004-12-16 Thread ebotcazou at gcc dot gnu dot org

--- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-12-16 
14:09 ---
See http://gcc.gnu.org/ml/gcc-patches/2004-12/msg01119.html


-- 
   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|3.4.4   |3.3.6


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


[Bug libfortran/18985] opening unit 6 messes up print

2004-12-16 Thread tobi at gcc dot gnu dot org

--- Additional Comments From tobi at gcc dot gnu dot org  2004-12-16 14:10 
---
Done thusly :-) BTW the directions discussions on comp.lang.fortran turn are 
fun.

-- 
   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


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


[Bug c++/19034] internal compiler error: in cp_tree_equal, at cp/tree.c:1633

2004-12-16 Thread jttoivon at cc dot helsinki dot fi

--- Additional Comments From jttoivon at cc dot helsinki dot fi  2004-12-16 
14:12 ---
Created an attachment (id=7757)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7757action=view)
source code that doesn't compile


-- 


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


[Bug java/18091] Valgrind errors building libjava

2004-12-16 Thread aph at gcc dot gnu dot org

--- Additional Comments From aph at gcc dot gnu dot org  2004-12-16 14:29 
---
comment

-- 
   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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


[Bug target/19009] Loading of FP constants into FP reg via SSE reg

2004-12-16 Thread uros at kss-loka dot si

--- Additional Comments From uros at kss-loka dot si  2004-12-16 14:35 
---
Another candidate for TARGET_SSE_MATH cleanup...

(insn 21 20 22 0 (set (reg:CCFP 17 flags)
(compare:CCFP (reg/v:DF 60 [ mod ])
(reg:DF 70))) 24 {*cmpfp_i_sse} (nil)
(nil))


-- 
   What|Removed |Added

   Last reconfirmed|-00-00 00:00:00 |2004-12-16 14:35:51
   date||


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


[Bug libfortran/19032] modulo generates wrong result for divisor -1

2004-12-16 Thread tobi at gcc dot gnu dot org

--- Additional Comments From tobi at gcc dot gnu dot org  2004-12-16 14:41 
---
I checked gfortran against the examples in the standard, and we seem to only get
the case modulo (..., -1) wrong (result should be 0, we print -1)

-- 
   What|Removed |Added

Summary|modulo generates wrong  |modulo generates wrong
   |result  |result for divisor -1


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


[Bug libfortran/19032] modulo generates wrong result for divisor -1

2004-12-16 Thread tobi at gcc dot gnu dot org

--- Additional Comments From tobi at gcc dot gnu dot org  2004-12-16 14:42 
---
(In reply to comment #1)
 The second result is correct, the first wrong.

It's the other way round, as might be obvious from comment #2
Sorry.


-- 


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


[Bug middle-end/18493] [3.4 Regression] gcc doesn't like switch blocks without case/default labels

2004-12-16 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-16 
14:43 ---
Subject: Bug 18493

CVSROOT:/cvs/gcc
Module name:gcc
Branch: gcc-3_4-branch
Changes by: [EMAIL PROTECTED]   2004-12-16 14:42:50

Modified files:
gcc: ChangeLog c-typeck.c 
gcc/testsuite  : ChangeLog 
Added files:
gcc/testsuite/gcc.dg: switch-4.c 

Log message:
PR middle-end/18493
* c-typeck.c (c_finish_case): Rechain statements if we didn't
encounter any case labels or a default.

* gcc.dg/switch-4.c: New test case.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=2.2326.2.744r2=2.2326.2.745
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-typeck.c.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.272.2.10r2=1.272.2.11
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.3389.2.328r2=1.3389.2.329
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/switch-4.c.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=NONEr2=1.1.22.1



-- 


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


[Bug middle-end/16417] [4.0 Regression] crappy code (gcc.c-torture/compile/20020210-1.c) in arguments causes ICE

2004-12-16 Thread dave at hiauly1 dot hia dot nrc dot ca

--- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  
2004-12-16 14:40 ---
Subject: Re:  [4.0 Regression] crappy code (gcc.c-tortur

 cft: http://gcc.gnu.org/ml/gcc-patches/2004-12/msg01174.html
 
 -- 
What|Removed |Added
 
  Status|ASSIGNED|WAITING

On hppa-unknown-linux-gnu and hpp2.0w-hp-hpux11.11, this leads to a
bootstrap comparison failure:

Bootstrap comparison failure!
./alias.o differs
./bb-reorder.o differs
./bt-load.o differs
./builtins.o differs
./c-aux-info.o differs
./c-common.o differs
./c-cppbuiltin.o differs
./c-decl.o differs
...

On hppa64-hp-hpux11.11, we don't get as far:

/test/gnu/gcc-3.3/objdir/gcc/gfortran -B/test/gnu/gcc-3.3/objdir/gcc/ -B/opt/gnu
64/gcc/gcc-4.0.0/hppa64-hp-hpux11.11/bin/ -B/opt/gnu64/gcc/gcc-4.0.0/hppa64-hp-h
pux11.11/lib/ -isystem /opt/gnu64/gcc/gcc-4.0.0/hppa64-hp-hpux11.11/include -isy
stem /opt/gnu64/gcc/gcc-4.0.0/hppa64-hp-hpux11.11/sys-include -g -O2 -Wall -fno-
repack-arrays -fno-underscoring -c ../../../gcc/libgfortran/intrinsics/selected_
int_kind.f90  -fPIC -DPIC -o .libs/selected_int_kind.o
../../../gcc/libgfortran/intrinsics/selected_int_kind.f90: In function 'selected
_int_kind':
../../../gcc/libgfortran/intrinsics/selected_int_kind.f90:22: internal compiler
error: Segmentation fault

I can try look at these problems tonight.

Dave


-- 


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


[Bug libfortran/19032] modulo generates wrong result

2004-12-16 Thread tobi at gcc dot gnu dot org

--- Additional Comments From tobi at gcc dot gnu dot org  2004-12-16 14:30 
---
The second result is correct, the first wrong.

The difference results from the fact that the first statement is evaluated by
gfortran's constant folding pass, whereas the second is evaluated in generated 
code.

In other words, the code generation for modulo is wrong.

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2004-12-16 14:30:16
   date||


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


[Bug java/18931] jar - .so optimization problem

2004-12-16 Thread aph at gcc dot gnu dot org


-- 
   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |aph at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
  Component|middle-end  |java
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2004-12-16 14:59:15
   date||


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


[Bug java/18931] jar - .so optimization problem

2004-12-16 Thread aph at gcc dot gnu dot org

--- Additional Comments From aph at gcc dot gnu dot org  2004-12-16 15:00 
---
Bumping priority because this is possibly a front end bug that breaks many 
programs/

-- 
   What|Removed |Added

   Severity|normal  |critical
   Priority|P2  |P1


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


[Bug java/19036] New: readObject memory consumption

2004-12-16 Thread nkuzminski at gmail dot com
I'm using the 4.0 Windows port downloaded from
http://www.thisiscool.com/gcc_mingw.htm. It has been very useful for
me, since the libjcj in 4.0 is way more complete than the one on the
current releases. And I'm also using SWT and other things that works
out of the box on this special release.
But now I'm facing this issue, wich I don't know if it happens on the
current snapshots. Really, I've tried a bit to build the snapshots,
and failed. I lack the experience to do it.
So, here it is. The problem is the big memory consumption  that the
readObject part of the testcase shows (Just see it on the
Task Manager). This is a very much simplified situation than the one
I'm working on, but is enough to show the problem.  Any ideas?

-- 
   Summary: readObject memory consumption
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: java
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: nkuzminski at gmail 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=19036


[Bug java/19036] readObject memory consumption

2004-12-16 Thread nkuzminski at gmail dot com

--- Additional Comments From nkuzminski at gmail dot com  2004-12-16 15:05 
---
Created an attachment (id=7759)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7759action=view)
Testcase showin big memory consumption on the readObject part


-- 


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


[Bug c++/19004] [3.4/4.0 regression] ICE in uses_template_parms at cp/pt.c:4860

2004-12-16 Thread lerdsuwa at gcc dot gnu dot org


-- 
   What|Removed |Added

 AssignedTo|lerdsuwa at gcc dot gnu dot |unassigned at gcc dot gnu
   |org |dot org
 Status|ASSIGNED|NEW


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


[Bug c++/19034] [3.4/4.0 Regression] internal compiler error: in cp_tree_equal, at cp/tree.c:1633

2004-12-16 Thread belyshev at lubercy dot com

--- Additional Comments From belyshev at lubercy dot com  2004-12-16 15:08 
---
// reduced testcase

template bool C  struct B
{
};

templatetypename S int foo();
templatetypename S int foo1();

templatetypename T struct bar : public B (sizeof(fooT()) == 1)
{
};

templatetypename T struct bar1 : public B (sizeof(foo1T()) == 1)
{
};


-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Keywords||ice-on-valid-code
  Known to fail||3.4.4 4.0.0
  Known to work||3.3.5
   Last reconfirmed|-00-00 00:00:00 |2004-12-16 15:08:27
   date||
Summary|internal compiler error: in |[3.4/4.0 Regression]
   |cp_tree_equal, at   |internal compiler error: in
   |cp/tree.c:1633  |cp_tree_equal, at
   ||cp/tree.c:1633
   Target Milestone|--- |3.4.4


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


[Bug ada/19037] New: constant renaming creates new constant

2004-12-16 Thread jc at apinc dot org
Look at the following example:
with System; use System;  
with Ada.Text_Io; use Ada.Text_IO;

procedure foo is
   bar : constant integer := 1;
   foobar : integer renames bar;
begin
   if foo'Address = foobar'Address then
  Put_Line (OK);
   end if;
end foo;

The normal output of this program would be OK, but in fact the test fails.
Another example:
package foo is
   bar : constant integer := 1;
   foobar : integer renames bar;
end foo;

$ gcc -c foo.ads
Two symbols are created:
$ nm foo.o
 D foo__bar
0001 C foo_E
0004 D foo__foobar

Futhermore I checked and both symbols reserve space (there 4 bytes).
$ objdump -t foo.o
[...]
 g O .data  0004 foo__bar
0004 g O .data  0004 foo__foobar

Nevertheless both get the right value:
$ readelf -x 2 foo.o 

Hex dump of section '.data':
  0x   0001 0001 

If I declare a variable instead of a constant, then we get the normal behaviour 
(ie only 1 symbol and 1 space for it):
package Foo is

   Bar : Integer := 1;
   FooBar : Integer renames Bar;

end Foo;
$ gcc -c foo.ads
$ nm foo.o
 D foo__bar
0001 C foo_E

-- 
   Summary: constant renaming creates new constant
   Product: gcc
   Version: 3.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: ada
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jc at apinc dot org
CC: gcc-bugs at gcc dot gnu dot org
  GCC host triplet: i486-pc-linux-gnu


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


[Bug c++/19034] [3.4/4.0 Regression] internal compiler error: in cp_tree_equal, at cp/tree.c:1633

2004-12-16 Thread belyshev at lubercy dot com

--- Additional Comments From belyshev at lubercy dot com  2004-12-16 15:20 
---
: Search converges between 2003-06-18-trunk (#268) and 2003-06-19-trunk (#269).


-- 
   What|Removed |Added

  Known to fail|3.4.4 4.0.0 |3.4.0 3.4.1 3.4.2 3.4.3
   ||3.4.4 4.0.0


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


[Bug c/14765] [3.3 Regression] ice-on-invalid-code, ICE while compiling ({}) expression

2004-12-16 Thread gdr at integrable-solutions dot net

--- Additional Comments From gdr at integrable-solutions dot net  
2004-12-16 14:05 ---
Subject: Re:  [3.3 Regression] ice-on-invalid-code, ICE while compiling ({}) 
expression

reichelt at gcc dot gnu dot org [EMAIL PROTECTED] writes:

| Bootstrapped and regtested on 3.3 branch.
| 
| Gaby, is it ok to commit the patch in comment #4 to the 3.3 branch?
| Do we need the testcase?

This bug seems to have an interesting history...

yes, if you can pleas apply it.

-- Gaby


-- 


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


[Bug rtl-optimization/19038] New: Loop header copying

2004-12-16 Thread dje at gcc dot gnu dot org
Loop header copying would allow some loops to be transformed from two or more 
basic blocks into a single basic block, allowing better scheduling of the 
instructions in the loop.  This would help SPEC CPU2000 sixtrack benchmark, 
for example.

-- 
   Summary: Loop header copying
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Keywords: missed-optimization
  Severity: enhancement
  Priority: P2
 Component: rtl-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dje at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: *-*-*
  GCC host triplet: *-*-*
GCC target triplet: *-*-*


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


[Bug target/17603] [4.0 Regression] cpowf and cpowl give wrong results

2004-12-16 Thread jbeulich at novell dot com

--- Additional Comments From jbeulich at novell dot com  2004-12-16 15:46 
---
Patch for the x86-64 long double complex part submitted.

-- 


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


[Bug fortran/18977] LAPACK test xeigtsts segfaults with optimization

2004-12-16 Thread Thomas dot Koenig at online dot de

--- Additional Comments From Thomas dot Koenig at online dot de  2004-12-16 
15:59 ---
I reran the tests with the 20041114 snapshot at -O1, and
the segfault did indeed go away, so this is a regression.

Quite likely, this is a IA-64 target problem.


-- 


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


[Bug middle-end/18493] [3.4 Regression] gcc doesn't like switch blocks without case/default labels

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
16:25 ---
Fixed.

-- 
   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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


[Bug libgcj/19036] readObject memory consumption

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
16:27 ---
Note This version is almost 3 months old.

-- 
   What|Removed |Added

  Component|java|libgcj


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


[Bug c/19031] [4.0 Regression] #pragma weak handling changes in 4.0.0

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
16:31 ---
Well the following patch changed it:
2004-11-29  Daniel Jacobowitz  [EMAIL PROTECTED]

PR c/7544
* Makefile.in (c-lang.o): Update dependencies.
* c-lang.c: Include c-pragma.h.
(finish_file): Call maybe_apply_pending_pragma_weaks.
* c-pragma.c (maybe_apply_pending_pragma_weaks): New function.
* c-pragma.h (maybe_apply_pending_pragma_weaks): New prototype.




-- 
   What|Removed |Added

 CC||jsm28 at gcc dot gnu dot org
   Keywords||wrong-code
Summary|#pragma weak handling   |[4.0 Regression] #pragma
   |changes in 4.0.0|weak handling changes in
   ||4.0.0
   Target Milestone|--- |4.0.0


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


[Bug target/17603] [4.0 Regression] cpowf and cpowl give wrong results

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
16:33 ---
Patch here: http://gcc.gnu.org/ml/gcc-patches/2004-12/msg01223.html.

-- 
   What|Removed |Added

   Keywords||patch


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


[Bug c/19033] Passing array as a function parameter in C99 style fails

2004-12-16 Thread bangerth at dealii dot org

--- Additional Comments From bangerth at dealii dot org  2004-12-16 16:50 
---
This is a duplicate of PR 15114. It is fixed on mainline, but the audit 
trail of that PR states that it is not going to be fixed for 3.4.x. 
 
W. 

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

-- 
   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


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


[Bug middle-end/15114] [3.4 regression] -funit-at-a-time causes compilation of functions with variable length arrays to fail

2004-12-16 Thread bangerth at dealii dot org

--- Additional Comments From bangerth at dealii dot org  2004-12-16 16:50 
---
*** Bug 19033 has been marked as a duplicate of this bug. ***

-- 
   What|Removed |Added

 CC||bonzo at lib dot msu dot ru


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


[Bug c++/19030] [4.0 Regression] ice on tree check

2004-12-16 Thread bangerth at dealii dot org

--- Additional Comments From bangerth at dealii dot org  2004-12-16 17:01 
---
Created an attachment (id=7762)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7762action=view)
Slightly smaller testcase

Attached is a slightly smaller testcase (down to 183,000 lines or so).
The bug may actually be relatively easy to fix even without a small
testcase: I would imagine that there is only a check for error_mark_node
missing somewhere, and finding this place should be easy.

W.

-- 


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


[Bug tree-optimization/18754] unrolling happens too late/SRA does not happen late enough

2004-12-16 Thread rguenth at tat dot physik dot uni-tuebingen dot de

--- Additional Comments From rguenth at tat dot physik dot uni-tuebingen 
dot de  2004-12-16 17:08 ---
The attached patch makes us for -O3 -funroll-loops -ffast-math produce in .vars

float foobar() ()
{
bb 0:
  return a.array[3] * b.array[3] + a.array[2] * b.array[2] + a.array[0] *
b.array[0] + a.array[1] * b.array[1];

}

though the assembly is as good as before.

-- 


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


[Bug middle-end/18191] [4.0 Regression] Struct member is not getting default-initialized

2004-12-16 Thread steven at gcc dot gnu dot org

--- Additional Comments From steven at gcc dot gnu dot org  2004-12-16 
18:07 ---
Someone had a bad day: 
 
case ARRAY_TYPE: 
case VECTOR_TYPE: 
  /* We're already checked the component type (TREE_TYPE), so just check 
 the index type.  */ 
  return type_contains_placeholder_p (TYPE_DOMAIN (type)); 
 
But a VECTOR_TYPE doesn't have a TYPE_DOMAIN, so we ICE.  This is the  
cause of the gcc.dg/i386-3dnow-[12].c failures. 
 
 

-- 


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


[Bug preprocessor/19040] New: #elif token1 token2 doesn't produce a diagnostic

2004-12-16 Thread dpatel at apple dot com
GCC emits diagnostics for following...

$ cat a.c
int foo()
{

#ifdef FOO
return 1;
#elif BAR FOO
return 0;
#endif
}
$ cc a.c -c
a.c:6:11: error: missing binary operator before token FOO
$

However, it does not emit diagnostics for following ...

$ cat a.c
#define FOO 1
int foo()
{

#ifdef FOO
return 1;
#elif BAR FOO
return 0;
#endif
}

-- 
   Summary: #elif token1 token2 doesn't produce a diagnostic
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: preprocessor
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dpatel at apple dot com
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug target/19039] [4.0 Regression] another SSE optimization ICE

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
18:19 ---
This is a dup of bug 17767.

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

-- 
   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
  Component|c   |target
   Keywords||ice-on-valid-code
 Resolution||DUPLICATE
Summary|another SSE optimization ICE|[4.0 Regression] another SSE
   ||optimization ICE
   Target Milestone|--- |4.0.0


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


[Bug c++/18829] Error signale on an unexisting line

2004-12-16 Thread federicotomassetti at yahoo dot it

--- Additional Comments From federicotomassetti at yahoo dot it  2004-12-16 
18:31 ---
No I provided info needed to analyze this bug

-- 
   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|INVALID |


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


[Bug c/19039] New: another SSE optimization ICE

2004-12-16 Thread stuart at apple dot com
Attached testcase ICEs GCC:

[opel:/Volumes/sandbox/stuart] hasting2% gcc.fsf.debug.obj/gcc/xgcc -B 
gcc.fsf.debug.obj/gcc -O1 -
msse2 -S m4.i
m4.i: In function 'rrr':
m4.i:36: error: unrecognizable insn:
(insn 283 210 211 10 (set (reg:V16QI 22 xmm1)
(const_int 1 [0x1])) -1 (nil)
(nil))
m4.i:36: internal compiler error: in extract_insn, at recog.c:2020
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://gcc.gnu.org/bugs.html for instructions.
---
Here is the testcase:
---
typedef unsigned long ulong;
typedef long long __v2di __attribute__ ((vector_size (16)));
typedef char __v16qi __attribute__ ((vector_size (16)));
typedef struct
{
void *v1;
ulong kk;
ulong ss;
}bbbccc;
long rrr(const bbbccc *od, ulong lc, ulong rc, ulong br, ulong kw)
{
long i, j, x, y, kx = kw, ky, p1 = (kx)/2, r1 = (ky)/2, kk = od-kk, q1 = 
lc - p1, sts = p1, lml = od-
ss - rc,  g1, *pg1, i1, s1, j1;
char *out = (char*) od-v1;
__v2di h1;
for( i = 0; i  kk; i++ )
{
j1 = i + r1;
if( i = kk - (long) br )
j1 = ( kk-1) + r1 - (long) br;
s1 = j1 - i1;
for(; y  s1; y++ )
{
for( x = q1; x  sts; x++ )
;
}
out[j] = g1;
for( ; j = lml - 16; j += 16 )
{
h1 = (__v2di)__builtin_ia32_pcmpeqb128 ((__v16qi)h1, (__v16qi)h1);
for( y = 0; y  s1; y++ )
for( x = 0; x  (long) kw; x++ )
  ;
__builtin_ia32_storedqu ((char *)pg1, (__v16qi)h1);
 }
}
}

-- 
   Summary: another SSE optimization ICE
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: stuart at apple dot com
CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: i686-apple-darwin
  GCC host triplet: i686-apple-darwin
GCC target triplet: i686-apple-darwin


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


[Bug c/19041] New: -fvisibility=hidden causes bad codegen for common symbols

2004-12-16 Thread austern at apple dot com
Compile the following file with -fvisibility=hidden
int foo;
void bar(void) { foo = 0; }

You will find that the assembler rejects the .s file that the compiler creates, 
giving the error:
/var/tmp//cclfEVh7.s:16:non-relocatable subtraction expression, _foo minus 
L001$pb
/var/tmp//cclfEVh7.s:16:symbol: _foo can't be undefined in a subtraction 
expression

The assembler is right to complain.  The compiler generates these lines:
addis r2,r31,ha16(_foo-L001$pb)
la r2,lo16(_foo-L001$pb)(r2)
This is incorrect.  Common symbols must be treated as undefined symbols, so 
they must be addressed 
indirectly through non-lazy pointers.  Without -fvisibility=hidden, the 
compiler gets this right.

-- 
   Summary: -fvisibility=hidden causes bad codegen for common
symbols
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: austern at apple dot com
CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: powerpc-apple-darwin7.6.0
  GCC host triplet: powerpc-apple-darwin7.6.0
GCC target triplet: powerpc-apple-darwin7.6.0


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


[Bug target/19041] -fvisibility=hidden causes bad codegen for common symbols

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
19:10 ---
Mine, I posted a patch last week, I will find it again and add the link to the 
bug here.

-- 
   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pinskia at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
  Component|c   |target
 Ever Confirmed||1
   Keywords||wrong-code
   Last reconfirmed|-00-00 00:00:00 |2004-12-16 19:10:10
   date||


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


[Bug target/19041] [4.0 Regression] -fvisibility=hidden causes bad codegen for common symbols

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
19:12 ---
Patch posted here: http://gcc.gnu.org/ml/gcc-patches/2004-12/msg00814.html, 
this is a 
regression from before Mark implemented his speed up.
There is also a better testcase which does not use the option but attributes 
instead.

-- 
   What|Removed |Added

   Keywords||patch
Summary|-fvisibility=hidden causes  |[4.0 Regression] -
   |bad codegen for common  |fvisibility=hidden causes
   |symbols |bad codegen for common
   ||symbols
   Target Milestone|--- |4.0.0


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


[Bug other/18508] [3.4/4.0 Regression] basename: too few arguments when building without bootstrap

2004-12-16 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-16 
19:14 ---
Subject: Bug 18508

CVSROOT:/cvs/gcc
Module name:gcc
Changes by: [EMAIL PROTECTED]   2004-12-16 19:14:29

Modified files:
gcc: ChangeLog 
gcc/config : t-libunwind-elf t-slibgcc-darwin 
 t-slibgcc-elf-ver t-slibgcc-sld 
gcc/config/alpha: t-osf4 
gcc/config/arm : t-netbsd 
gcc/config/i386: t-nwld 
gcc/config/mips: t-slibgcc-irix 
gcc/config/pa  : t-hpux-shlib 
gcc/config/sh  : t-linux 

Log message:
2004-12-14  H.J. Lu  [EMAIL PROTECTED]

PR other/18508
* config/alpha/t-osf4 (SHLIB_LINK): Use `.backup' as the suffix
to back up the existing shared library.
* config/arm/t-netbsd (SHLIB_LINK): Likewise.
* config/mips/t-slibgcc-irix (SHLIB_LINK): Likewise.
* config/pa/t-hpux-shlib (SHLIB_LINK): Likewise.
* config/sh/t-linux (SHLIB_LINK): Likewise.
* config/t-libunwind-elf (SHLIBUNWIND_LINK): Likewise.
* config/t-slibgcc-darwin (SHLIB_LINK): Likewise.
* config/t-slibgcc-elf-ver (SHLIB_LINK): Likewise.
* config/t-slibgcc-sld (SHLIB_LINK): Likewise.

* config/i386/t-nwld (SHLIB_LINK): Don't use the temporary
file.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gccr1=2.6857r2=2.6858
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/t-libunwind-elf.diff?cvsroot=gccr1=1.3r2=1.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/t-slibgcc-darwin.diff?cvsroot=gccr1=1.7r2=1.8
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/t-slibgcc-elf-ver.diff?cvsroot=gccr1=1.9r2=1.10
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/t-slibgcc-sld.diff?cvsroot=gccr1=1.9r2=1.10
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/alpha/t-osf4.diff?cvsroot=gccr1=1.8r2=1.9
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/t-netbsd.diff?cvsroot=gccr1=1.8r2=1.9
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/t-nwld.diff?cvsroot=gccr1=1.3r2=1.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/mips/t-slibgcc-irix.diff?cvsroot=gccr1=1.3r2=1.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/pa/t-hpux-shlib.diff?cvsroot=gccr1=1.3r2=1.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sh/t-linux.diff?cvsroot=gccr1=1.15r2=1.16



-- 


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


[Bug other/18508] [3.4/4.0 Regression] basename: too few arguments when building without bootstrap

2004-12-16 Thread hjl at lucon dot org

--- Additional Comments From hjl at lucon dot org  2004-12-16 19:17 ---
Fixed.

-- 
   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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


[Bug tree-optimization/19042] Complex types are not SRA all the time.

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
19:32 ---
Note we end up with:
  D.770 = COMPLEX_EXPR D.768 - 4.0e+0, 0.0;
  ca1$imag = IMAGPART_EXPR D.770;
  ca1$real = REALPART_EXPR D.770;

in .t66.final_cleanup


-- 


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


[Bug tree-optimization/19042] New: Complex types are not SRA all the time.

2004-12-16 Thread pinskia at gcc dot gnu dot org
I decided to look into sixtrack and noticed this.  I will add a small testcase 
after I reduce the problem.

-- 
   Summary: Complex types are not SRA all the time.
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Keywords: missed-optimization
  Severity: minor
  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
GCC target triplet: powerpc-darwin


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


[Bug c++/19043] New: -fpermissive gives bad loop initializations

2004-12-16 Thread japple at freeshell dot org
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --enable-shared --enable-threads=posix
--disable-checking --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-java-awt=gtk --host=i386-redhat-linux

int main() {
  //int i;
  for(int i = 1; i  0; ++i);
  for(i = 2; i  4; ++i) {
for(int j = 3; j  5; ++j) {
  cout  i j  endl;
}
  }
}

outputs 
3 3
4 4

initializing i outside of the first for loop gives
2 3
2 4
3 3
3 4

-- 
   Summary: -fpermissive gives bad loop initializations
   Product: gcc
   Version: 3.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: japple at freeshell dot org
CC: gcc-bugs at gcc dot gnu dot org
  GCC host triplet: Red Hat 3.4.3-10


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


[Bug target/18997] [4.0 Regression] Segmentation Violation in pthread_getspecific

2004-12-16 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-16 
19:56 ---
Subject: Bug 18997

CVSROOT:/cvs/gcc
Module name:gcc
Changes by: [EMAIL PROTECTED]   2004-12-16 19:56:12

Modified files:
gcc: ChangeLog 
gcc/config/i386: cygwin.h 
libstdc++-v3   : ChangeLog 
libstdc++-v3/config/os/newlib: os_defines.h 

Log message:
gcc
PR target/18997
* config/i386/cygwin.h (GTHREAD_USE_WEAK): Define to 0.

libstdc++-v3
PR target/18997
* config/os/newlib/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK):
Define to 0 for __CYGWIN__.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gccr1=2.6859r2=2.6860
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/cygwin.h.diff?cvsroot=gccr1=1.85r2=1.86
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/ChangeLog.diff?cvsroot=gccr1=1.2813r2=1.2814
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/config/os/newlib/os_defines.h.diff?cvsroot=gccr1=1.2r2=1.3



-- 


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


[Bug tree-optimization/18707] [4.0 Regression] Performance regression at -O2 with gzip

2004-12-16 Thread ebotcazou at gcc dot gnu dot org

--- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-12-16 
20:04 ---
See http://gcc.gnu.org/ml/gcc-patches/2004-12/msg01232.html


-- 
   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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


[Bug tree-optimization/19042] Complex types are not SRA all the time.

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
20:30 ---
Here is the reduced testcase (fortran):
  COMMON TA(6,6)
  COMPLEX*16 CA1,CA2,CLAM2  
  
  CA2=DCMPLX(F2,ZERO)   
  CA2=SQRT(CA2) 
 
  CLAM2=(EGWG2+CA2)/TWO  
  DO 40 I=1,4   
  TA(I,3)=DREAL(CLAM2)  
 
   40 CONTINUE  
  RETURN
   
  END  

-- 


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


[Bug tree-optimization/19042] Complex types are not SRA all the time.

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
20:40 ---
Here it is further reduced:
  COMMON TA(6,6)
  COMPLEX*16 CA2,CLAM2  
  

  CLAM2=DCMPLX(a,2.0)   

  DO 40 I=1,4   
  TA(I,3)=DREAL(CLAM2)  
 
   40 CONTINUE  


  RETURN
   
  END   

-- 


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


[Bug tree-optimization/19042] Complex types are not SRA all the time.

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
20:38 ---
Here it is further reduced:
  COMMON TA(6,6)
  COMPLEX*16 CA2,CLAM2  
  

  CA2=DCMPLX(F2,ZERO)   
  CLAM2=(EGWG2+CA2)/TWO  

  DO 40 I=1,4   
  TA(I,3)=DREAL(CLAM2)  
 
   40 CONTINUE  


  RETURN
   
  END   


-- 


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


[Bug tree-optimization/19042] Complex types are not SRA all the time.

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
20:49 ---
This is most likely a dup of bug 18268.

-- 
   What|Removed |Added

  BugsThisDependsOn||18268


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


[Bug target/18997] [4.0 Regression] Segmentation Violation in pthread_getspecific

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
20:49 ---
Fixed.

-- 
   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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


[Bug tree-optimization/19042] Complex types are not SRA all the time.

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
21:03 ---
And here is a testcase where we don't use an unitialized variable and no loops 
either:
  COMMON TA,A
  COMPLEX*16 CLAM2  
  
  CLAM2=DCMPLX(A,2.0)   
  TA=DIMAG(CLAM2)
  RETURN
   
  END

-- 


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


[Bug preprocessor/19040] #elif token1 token2 doesn't produce a diagnostic

2004-12-16 Thread dpatel at apple dot com

--- Additional Comments From dpatel at apple dot com  2004-12-16 21:07 
---
Subject: Re:  #elif token1 token2 doesn't produce a diagnostic


On Dec 16, 2004, at 1:01 PM, bangerth at dealii dot org wrote:

 That's because it doesn't have to evaluate the #elif condition any 
 more,
 since it has already taken the #ifdef branch.

But that's the point. My reading of C99 standard does not give 
preprocessor this freedom.



-- 


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


[Bug preprocessor/19040] #elif token1 token2 doesn't produce a diagnostic

2004-12-16 Thread bangerth at dealii dot org

--- Additional Comments From bangerth at dealii dot org  2004-12-16 21:01 
---
That's because it doesn't have to evaluate the #elif condition any more, 
since it has already taken the #ifdef branch. If you change the code to 
  #ifdef BAR 
return 1; 
  #elif BAR FOO 
return 0; 
  #endif 
} 
it again issues the warning. This almost seems like a sensible approach. 
 
W. 

-- 
   What|Removed |Added

   Severity|normal  |minor


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


[Bug c++/19044] New: Alternate asm name for atan ignored when calling __builtin_atan

2004-12-16 Thread austern at apple dot com
For atan (and other functions like it), calling __builtin_atan is sometimes 
supposed to fall back to the 
library version of atan.  In the C++ front end, this interacts poorly with 
alternate asm names.

Consider the following test case:
#ifdef __cplusplus
extern C
#endif
double atan(double x) __asm(_fancy_atan);
double foo(double x) { return __builtin_atan(x); }

When it's compiled as C, it gives the behavior I expect: foo calls _fancy_atan. 
 The C++ front end, 
however, gets it wrong: we call _atan, ignoring the fact that this function is 
supposed to have a different 
assembler name.

-- 
   Summary: Alternate asm name for atan ignored when calling
__builtin_atan
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: austern at apple dot com
CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: powerpc-apple-darwin7.6.0
  GCC host triplet: powerpc-apple-darwin7.6.0
GCC target triplet: powerpc-apple-darwin7.6.0


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


[Bug rtl-optimization/19038] Loop header copying

2004-12-16 Thread dje at gcc dot gnu dot org

--- Additional Comments From dje at gcc dot gnu dot org  2004-12-16 21:39 
---
The focus of the problem is the inner loop of functio thin6d at line 572.  The 
function consumes 97.5% of the cycles and the inner loop consumes 48.5%.

-- 


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


[Bug fortran/19045] New: ICE in gfc_conv_expr

2004-12-16 Thread sje at cup dot hp dot com
I think this is different than the existing Fortran failures.  If
'(ims:,jms:)'is changed to '(ims,jms)' or '(ims:ime,jms:jme)' things work.

Test case:

SUBROUTINE foo ( dnew , ims, jms, ime, jme)

IMPLICIT NONE
INTEGER ims, jms, ime, jme
REAL , DIMENSION(ims:,jms:) :: dnew
INTEGER i

i = dnew(10,10)

END SUBROUTINE foo

The failure:

% gfortran -c x.f90
x.f90: In function 'foo':
x.f90:1: internal compiler error: in gfc_conv_expr, at fortran/trans-expr.c:1807

Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://gcc.gnu.org/bugs.html for instructions.

-- 
   Summary: ICE in gfc_conv_expr
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sje at cup dot hp dot com
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug tree-optimization/18268] structure copy propagation not done

2004-12-16 Thread rth at gcc dot gnu dot org

--- Additional Comments From rth at gcc dot gnu dot org  2004-12-16 22:07 
---
SRA shouldn't be responsible for this.  There should be a generalized
block copy propagator.  Which would help with copies far larger than
you'd ever expect SRA to handle as well.

-- 
   What|Removed |Added

   Severity|normal  |enhancement
   Last reconfirmed|2004-12-07 18:51:32 |2004-12-16 22:07:40
   date||
Summary|missed SRA of a block copy  |structure copy propagation
   ||not done


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


[Bug target/19046] New: [4.0 Regression] MOVE_RATIO should be tweaked

2004-12-16 Thread pinskia at gcc dot gnu dot org
Take the following C++ code:
class StringMap {
  const char empty_str[8];
public:
  StringMap() : empty_str() {}
};

StringMap f()
{
 StringMap a;
 return a;
}

For 3.3.2, we produced (at -O3):
__Z1fv:
LFB6:
li r4,0
stw r4,0(r3)
stw r4,4(r3)
blr

on the mainline we get:
__Z1fv:
LFB5:
mflr r0
LCFI0:
bcl 20,31,L001$pb
L001$pb:
stw r31,-4(r1)
LCFI1:
mflr r31
stw r0,8(r1)
LCFI2:
addis r2,r31,ha16(__ZZN9StringMapC1EvE3C.0-L001$pb)
la r9,lo16(__ZZN9StringMapC1EvE3C.0-L001$pb)(r2)
lwz r10,4(r9)
lwz r9,0(r9)
stw r10,4(r3)
lwz r0,8(r1)
lwz r31,-4(r1)
mtlr r0
stw r9,0(r3)
blr

-- 
   Summary: [4.0 Regression] MOVE_RATIO should be tweaked
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Keywords: missed-optimization
  Severity: normal
  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-darwin


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


[Bug target/19046] [4.0 Regression] MOVE_RATIO should be tweaked

2004-12-16 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

   Target Milestone|--- |4.0.0


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


[Bug libfortran/19032] modulo generates wrong result for divisor -1

2004-12-16 Thread Thomas dot Koenig at online dot de

--- Additional Comments From Thomas dot Koenig at online dot de  2004-12-16 
22:40 ---
Reals are also broken:

$ cat mod-real.f90
program main
  real :: a,b
  a = 2.0
  b = -1.0
  print *,modulo(a,b)
end program main
$ gfortran mod-real.f90
$ ./a.out
  -1.00

-- 


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


[Bug preprocessor/19040] #elif token1 token2 doesn't produce a diagnostic

2004-12-16 Thread neil at gcc dot gnu dot org

--- Additional Comments From neil at gcc dot gnu dot org  2004-12-16 22:38 
---
Not a bug - the standard requires this.

-- 
   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||INVALID


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


[Bug c++/19047] New: Template template argument matching can violate SFINAE

2004-12-16 Thread benh at bwsint dot com
The following program fails to compile:

#include iostream

templatetemplateint class CT, int TA
void operator(CTTA, int);

int main()
{
   std::cout  Hello, world\n;
}

The error messages given are:
test.cpp: In function `int main()':
test.cpp:8: error: template argument 2 is invalid

-- 
   Summary: Template template argument matching can violate SFINAE
   Product: gcc
   Version: 3.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: benh at bwsint dot com
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug preprocessor/19040] #elif token1 token2 doesn't produce a diagnostic

2004-12-16 Thread dpatel at apple dot com

--- Additional Comments From dpatel at apple dot com  2004-12-16 22:54 
---
Subject: Re:  #elif token1 token2 doesn't produce a diagnostic

Neil,

Would it be possible to quote standard here? We encountered this while 
running Plum Hall tests, so I just wanted to make sure. Thank you.



-- 


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


[Bug rtl-optimization/19038] Loop header copying

2004-12-16 Thread steven at gcc dot gnu dot org

--- Additional Comments From steven at gcc dot gnu dot org  2004-12-16 
22:55 ---
The interesting thing is that the front end already does the header 
copying when it generates code: 
 
  { 
int4 D.1164; 
 
D.1164 = nmz; 
k = 3; 
k.12 = k; 
 
if (k.12 = D.1164) 
  { 
D1500:; 
{ 
  ...loop body, straight-line code... 
  __label_000420:; 
  k.12 = k; 
  D.1168 = k.12 == D.1164; 
  k.12 = k; 
  D.1522 = k.12 + 1; 
  k = D.1522; 
  if (D.1168) 
{ 
  goto L.51; 
} 
  else 
{ 
 
} 
} 
goto D1500; 
  } 
else 
  { 
 
  } 
L.51:; 
  } 
 
 
 

-- 


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


[Bug c++/19047] Template template argument matching can violate SFINAE

2004-12-16 Thread benh at bwsint dot com


-- 
   What|Removed |Added

  GCC build triplet||i486-linux
   GCC host triplet||i486-linux
 GCC target triplet||i486-linux
   Keywords||rejects-valid
  Known to fail||3.0.4 3.2.3 3.3.4 3.4.3
  Known to work||2.95.4


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


[Bug c++/19047] Template template argument matching can violate SFINAE

2004-12-16 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

  Known to work|2.95.4  |2.95.4 4.0.0


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


[Bug preprocessor/9449] UCNs not recognized in identifiers (c++/c99)

2004-12-16 Thread joseph at codesourcery dot com

--- Additional Comments From joseph at codesourcery dot com  2004-12-16 
23:04 ---
Subject: Re:  UCNs not recognized in identifiers
 (c++/c99)

The following example illustrates the problems with lack of normalisation.  
(I still expect WG14 and WG21 to consider the lack of normalisation to be 
both the current meaning of the standards and their correct meaning in 
context, though future revisions might change the exact lists of 
characters, but this is an appropriate example to present to them and 
shows why diagnostics would be needed for various cases.)

\u05e9\u05bc\u05c1
\u05e9\u05c1\u05bc
are valid identifiers in C99 but not C++ while
\ufb2c
is a valid identifier in C++ but not in C99.

In Unicode, the three are canonically equivalent, the first being both NFC 
and NFD.

05BC HEBREW POINT DAGESH OR MAPIQ (combining class 21)
05C1 HEBREW POINT SHIN DOT (combining class 24)
05E9 HEBREW LETTER SHIN (combining class 0)
FB2C HEBREW LETTER SHIN WITH DAGESH AND SHIN DOT (combining class 0)

(U+FB2C is excluded from the compositions allowed in NFC, hence the 
decomposed form being NFC.)

So with current C and C++ standards users cannot portably link some 
pointed Hebrew identifiers between the two languages; it would be 
advisable for them to avoid such identifiers.  Warning for any use of the 
characters permitted by C++ but not C seems appropriate in the expectation 
that such characters will cease to be permitted in future, regardless of 
any other changes there may be.  Making the C++ extern C \ufb2c into 
something else would seem to me to be the road to madness, though we could 
see how other implementations of the C++ ABI interpret it as regards 
identifiers with UCNs.



-- 


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


[Bug tree-optimization/19042] Complex types are not SRA all the time.

2004-12-16 Thread dje at gcc dot gnu dot org


-- 
   What|Removed |Added

 CC||dje at gcc dot gnu dot org


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


[Bug ada/19048] New: Assertion failure on illegal program

2004-12-16 Thread jc at apinc dot org
The following code will make gcc abort:
package foo is

   A : constant Integer := 1;
   B : Integer renames A;
   B : constant Integer := 2;

end foo;

$ gcc -c foo.ads
+===GNAT BUG DETECTED==+
| 3.4.4 20041128 (prerelease) (Debian 3.4.3-3) (i486-pc-linux-gnu) |
| Assert_Failure sinfo.adb:1063|
| Error detected at foo.ads:5:4|
| Please submit a bug report; see http://gcc.gnu.org/bugs.html.|
| Include the entire contents of this bug box in the report.   |
| Include the exact gcc-3.4 or gnatmake command that you entered.  |
| Also include sources listed below in gnatchop format |
| (concatenated together with no headers between files).   |
+==+

Please note that if A and B aren't constant gcc detects the conflicting 
declaration and don't abort. So I guess that this bug might be linked to the 
bug 
#19037

-- 
   Summary: Assertion failure on illegal program
   Product: gcc
   Version: 3.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: ada
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jc at apinc dot org
CC: gcc-bugs at gcc dot gnu dot org
  GCC host triplet: i486-pc-linux-gnu


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


[Bug c++/19047] [3.3/3.4 Regression] Template template argument matching can violate SFINAE

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
23:28 ---
Reduced testcase:

templateclass _CharT struct char_traits {};

templatetypename _CharT, typename _Traits = char_traits_CharT 
  class basic_ostream {};
templateclass _Traits
  basic_ostreamchar, _Traits
  operator(basic_ostreamchar, _Traits __out, const char* __s);

extern basic_ostreamchar cout;

templatetemplateint class CT, int TA
void operator(CTTA, int);

int main()
{
   cout  Hello, world\n;
}


-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2004-12-16 23:28:32
   date||
Summary|Template template argument  |[3.3/3.4 Regression]
   |matching can violate SFINAE |Template template argument
   ||matching can violate SFINAE
   Target Milestone|--- |3.4.4


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


[Bug c++/19047] [3.3/3.4 Regression] Template template argument matching can violate SFINAE

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
23:28 ---
Fixed on the mainline:
: Search converges between 2004-11-14-014001-trunk (#634) and 
2004-11-14-161001-trunk 
(#635).


-- 


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


[Bug fortran/19045] ICE in gfc_conv_expr

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
23:32 ---
Confirmed.

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2004-12-16 23:32:58
   date||


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


[Bug c++/19043] [3.4/3.3 only] -fpermissive gives bad loop initializations

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
23:41 ---
3.3.2 does not work but the mainline works.

-- 
   What|Removed |Added

   Keywords||wrong-code
  Known to fail||3.3.2
  Known to work||4.0.0
Summary|-fpermissive gives bad loop |[3.4/3.3 only] -fpermissive
   |initializations |gives bad loop
   ||initializations


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


[Bug target/19019] GCC ldouble format incompatibility with XLC long double

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
23:41 ---
Confirmed.

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2004-12-16 23:41:43
   date||


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


[Bug ada/19037] constant renaming creates new constant

2004-12-16 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-16 
23:48 ---
Confirmed, note for the procedure case, we put the const decl on the stack (at 
least on ppc-darwin).

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Keywords||missed-optimization
   Last reconfirmed|-00-00 00:00:00 |2004-12-16 23:48:13
   date||


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


  1   2   >