[Bug debug/44112] [4.6 regression] Revision 159354 causes Fortran test failures

2010-05-14 Thread jakub at gcc dot gnu dot org


--- Comment #3 from jakub at gcc dot gnu dot org  2010-05-15 06:01 ---
Subject: Bug 44112

Author: jakub
Date: Sat May 15 06:01:20 2010
New Revision: 159429

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159429
Log:
PR debug/44112
* dwarf2out.c (resolve_one_addr): Check TREE_ASM_WRITTEN
for all SYMBOL_REF_DECLs.

* gcc.dg/debug/dwarf2/const-1.c: Remove.
* g++.dg/debug/dwarf2/const1.C: Remove.

Removed:
trunk/gcc/testsuite/g++.dg/debug/dwarf2/const1.C
trunk/gcc/testsuite/gcc.dg/debug/dwarf2/const-1.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/dwarf2out.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug c++/43601] Enormous increase in DLL object files size in 4.5

2010-05-14 Thread a14331990 at hotmail dot com


--- Comment #16 from a14331990 at hotmail dot com  2010-05-15 06:01 ---
(In reply to comment #8)
> I think this is a bug the MingW maintainers should handle.
> 
> While I understand Andrew's position, it seems to me that this is nevertheless
> a definite regression from the user's perspective.
> 
> W.
> 

Yes, I think this is mostly a mingw bug, but I think developers of cygwin, a
very similar project had already resolved this issue, they had enabled
auto-import by default in ld, please follow this post
[PATCH] Silence ld auto-import warnings for pe-i386.
http://sourceware.org/ml/binutils/2009-02/msg00341.html
for details.
   With auto-import enabled by default in ld, there is no need to emit exported
inline functions in gcc code.
   See my workaround here:
FYI: GCC 4.5.0 on Mingw.org
http://forums.codeblocks.org/index.php/topic,12183.msg85066.html#msg85066


-- 


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



[Bug bootstrap/44146] r159371 breaks bootstrap on x86_64-apple-darwin10

2010-05-14 Thread howarth at nitro dot med dot uc dot edu


--- Comment #2 from howarth at nitro dot med dot uc dot edu  2010-05-15 
05:16 ---
It appears that only darwin uses the set_user_assembler_name() call so we
ought to be able to restore the previous behavior with...

Index: gcc/varpool.c
===
--- gcc/varpool.c   (revision 159421)
+++ gcc/varpool.c   (working copy)
@@ -321,6 +321,14 @@
   || node->force_output)
 return true;

+
+  /* ??? If the assembler name is set by hand, it is possible to assemble
+ the name later after finalizing the function and the fact is noticed
+ in assemble_name then.  This is arguably a bug.  */
+  if (TARGET_MACHO && DECL_ASSEMBLER_NAME_SET_P (decl)
+  && TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)))
+return true;
+
   /* Externally visible variables must be output.  The exception is
  COMDAT variables that must be output only when they are needed.  */
   if (TREE_PUBLIC (decl)


-- 


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



[Bug ada/44147] New: Ada attribute definition clause for controlled type

2010-05-14 Thread andrew dot starritt at synchrotron dot org dot au
$ gcc -v
Using built-in specs.
Target: i386-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-libgcj-multifile
--enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk
--disable-dssi --enable-plugin
--with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic
--host=i386-redhat-linux
Thread model: posix
gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)


$ cat /etc/redhat-release
CentOS release 5.3 (Final)


$ gnatmake -gnat05  bug_main.adb
gcc -c -gnat05 bug_main.adb
+===GNAT BUG DETECTED==+
| 4.1.2 20080704 (Red Hat 4.1.2-46) (i386-redhat-linux-gnu) Assert_Failure
nlists.adb:853|
| Error detected at bug_pkg.ads:4:1|
| Please submit a bug report; see http://gcc.gnu.org/bugs.html.|
| Use a subject line meaningful to you and us to track the bug.|
| Include the entire contents of this bug box in the report.   |
| Include the exact gcc or gnatmake command that you entered.  |
| Also include sources listed below in gnatchop format |
| (concatenated together with no headers between files).   |
+==+

Please include these source files with error report
Note that list may not be accurate in some cases,
so please double check that the problem can still
be reproduced with the set of files listed.

bug_main.adb
bug_pkg.ads

compilation abandoned
gnatmake: "bug_main.adb" compilation error

Source files:

with Ada.Finalization;
with Ada.Streams;

package Bug_Pkg is

   type Objects is private;

   procedure My_Write (Stream : not null access
Ada.Streams.Root_Stream_Type'Class;
   Item   : in Objects);
   for Objects'Write use My_Write;

private

   type Objects is new Ada.Finalization.Controlled with record
  null;
   end record;

end Bug_Pkg;
package body Bug_Pkg is

   procedure My_Write (Stream : not null access
Ada.Streams.Root_Stream_Type'Class;
   Item   : in Objects) is
   begin
  null;
   end My_Write;

end Bug_Pkg;
with Bug_Pkg;

procedure Bug_Main is
begin
   null;
end Bug_Main;


Expected behavior:
$ gnatmake -gnat05bug_main.adb
gcc -c -gnat05 bug_main.adb
gcc -c -gnat05 bug_pkg.adb
gnatbind -x bug_main.ali
gnatlink bug_main.ali

Actual behavior: See above.


-- 
   Summary: Ada attribute definition clause for controlled type
   Product: gcc
   Version: 4.1.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: ada
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: andrew dot starritt at synchrotron dot org dot au


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



[Bug target/44129] Building linux kernel with gcc-4.5.0 and CONFIG_CC_OPTIMIZE_FOR_SIZE segfaults

2010-05-14 Thread bdubbs at linuxfromscratch dot org


--- Comment #7 from bdubbs at linuxfromscratch dot org  2010-05-15 04:06 
---
(In reply to comment #6)

> You build 2 kernel trees, one with gcc 4.5.1 and one
> with gcc 4.4.4. You copy binaries from one tree to
> another and rebuild kernel one file at a time until
> you find the single file which was miscompiled.

OK.  That will take some time.  I'll get back to you when I find the problem
file.

> > > BTW, you aren't using gold, are you?
> > 
> > I don't know what gold is either.

> Please show the output of
> # ld -V

 GNU ld (GNU Binutils) 2.20.1.20100303
  Supported emulations:
   elf_x86_64
   elf_i386
   i386linux
   elf_l1om


-- 


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



[Bug c++/44127] [4.3/4.4/4.5/4.6 Regression] G++ emits unnecessary EH code

2010-05-14 Thread jason at gcc dot gnu dot org


--- Comment #5 from jason at gcc dot gnu dot org  2010-05-15 03:49 ---
Fixed for 4.5.1.


-- 

jason at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|4.3.5   |4.5.1


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



[Bug c/10676] Using unnamed fields in initializers

2010-05-14 Thread balrogg at gmail dot com


--- Comment #18 from balrogg at gmail dot com  2010-05-15 03:23 ---
(In reply to comment #11)
> An example program that shows 3 different methods. Only one works (see 
> comment) 
>   .c = 3, //Will not work
>   {.c = 3}, //works
>   {.c= 2}, //Does not work

For sake of documentation, with versions from before the fix the second method
did not always work.  It seems to depend also on the ordering of the members in
the anonymous union.  If .c is the first, second or third member of the union
it seems to work.  It does not work for the fourth and following members. 
Really puzzling.


-- 

balrogg at gmail dot com changed:

   What|Removed |Added

 CC||balrogg at gmail dot com


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



[Bug bootstrap/44079] Bootstrap error about elf_getshdrstrndx when configure script does not detect elf_getshdrstrndx

2010-05-14 Thread soni dot sandeepb at gmail dot com


--- Comment #2 from soni dot sandeepb at gmail dot com  2010-05-15 02:53 
---
(In reply to comment #1)
> Could you please provide some more details, please: what system are you 
> running
> on, what version of libelf is in use?
> 
> And please provide config.log and configure output from the toplevel and from
> the gcc subdirectory, together with gcc/auto-host.h.
> 


[sa...@sandy ~]$ uname -r
2.6.29.4-167.fc11.i686.PAE

Currently, I am unable to reproduce the configure output since now I am working
with elfutils-libelf-devel-0.145-1 which, it seems, has fixed the problem.
Earlier, I was using elfutils-libelf-devel-0.140-1 which came installed with
the distro.
I also had libelf 0.8.13 on my system at the time of this bug but that was
insufficient to resolve the bug. 

Maybe Mike can reproduce the configure and config.log output.


-- 

soni dot sandeepb at gmail dot com changed:

   What|Removed |Added

 CC||soni dot sandeepb at gmail
   ||dot com


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



[Bug bootstrap/44146] r159371 breaks bootstrap on x86_64-apple-darwin10

2010-05-14 Thread howarth at nitro dot med dot uc dot edu


--- Comment #1 from howarth at nitro dot med dot uc dot edu  2010-05-15 
02:25 ---
I also noticed that in gcc/config/darwin.c that we have...

  /* Do what output_addr_const will do when we actually call it.  */
  if (SYMBOL_REF_DECL (p->symbol)) 
  mark_decl_referenced (SYMBOL_REF_DECL (p->symbol));

in machopic_validate_stub_or_non_lazy_ptr(). We are no longer synchronized
with output_addr_const() so perhaps this should now be...

  /* Do what output_addr_const will do when we actually call it.  */
  if (SYMBOL_REF_DECL (p->symbol)) {
  mark_decl_referenced (SYMBOL_REF_DECL (p->symbol));
  assemble_external (SYMBOL_REF_DECL (p->symbol));
}


-- 


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



[Bug bootstrap/44146] New: r159371 breaks bootstrap on x86_64-apple-darwin10

2010-05-14 Thread howarth at nitro dot med dot uc dot edu
The change...

Author: hubicka
Date: Thu May 13 17:47:48 2010
New Revision: 159371

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159371
Log:
* varpool.c (decide_is_variable_needed): Drop code checking
TREE_SYMBOL_REFERENCED.

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

breaks the bootstrap of gcc trunk on x86_64-apple-darwin10. The failure appears
as...

libtool: link: (cd ".libs" && rm -f "libgfortran.dylib" && ln -s
"libgfortran.3.dylib" "libgfortran.dylib")
libtool: link: ar rc .libs/libgfortran.a  backtrace.o bounds.o
compile_options.o convert_char.o environ.o error.o fpu.o main.o memory.o
pause.o stop.o string.o select.o all_l1.o all_l2.o all_l4.o all_l8.o all_l16.o
any_l1.o any_l2.o any_l4.o any_l8.o any_l16.o count_1_l.o count_2_l.o
count_4_l.o count_8_l.o count_16_l.o maxloc0_4_i1.o maxloc0_8_i1.o
maxloc0_16_i1.o maxloc0_4_i2.o maxloc0_8_i2.o maxloc0_16_i2.o maxloc0_4_i4.o
maxloc0_8_i4.o maxloc0_16_i4.o maxloc0_4_i8.o maxloc0_8_i8.o maxloc0_16_i8.o
maxloc0_4_i16.o maxloc0_8_i16.o maxloc0_16_i16.o maxloc0_4_r4.o maxloc0_8_r4.o
maxloc0_16_r4.o maxloc0_4_r8.o maxloc0_8_r8.o maxloc0_16_r8.o maxloc0_4_r10.o
maxloc0_8_r10.o maxloc0_16_r10.o maxloc0_4_r16.o maxloc0_8_r16.o
maxloc0_16_r16.o maxloc1_4_i1.o maxloc1_8_i1.o maxloc1_16_i1.o maxloc1_4_i2.o
maxloc1_8_i2.o maxloc1_16_i2.o maxloc1_4_i4.o maxloc1_8_i4.o maxloc1_16_i4.o
maxloc1_4_i8.o maxloc1_8_i8.o maxloc1_16_i8.o maxloc1_4_i16.o maxloc1_8_i16.o
maxloc1_16_i16.o maxloc1_4_r4.o maxloc1_8_r4.o maxloc1_16_r4.o maxloc1_4_r8.o
maxloc1_8_r8.o maxloc1_16_r8.o maxloc1_4_r10.o maxloc1_8_r10.o maxloc1_16_r10.o
maxloc1_4_r16.o maxloc1_8_r16.o maxloc1_16_r16.o maxval_i1.o maxval_i2.o
maxval_i4.o maxval_i8.o maxval_i16.o maxval_r4.o maxval_r8.o maxval_r10.o
maxval_r16.o minloc0_4_i1.o minloc0_8_i1.o minloc0_16_i1.o minloc0_4_i2.o
minloc0_8_i2.o minloc0_16_i2.o minloc0_4_i4.o minloc0_8_i4.o minloc0_16_i4.o
minloc0_4_i8.o minloc0_8_i8.o minloc0_16_i8.o minloc0_4_i16.o minloc0_8_i16.o
minloc0_16_i16.o minloc0_4_r4.o minloc0_8_r4.o minloc0_16_r4.o minloc0_4_r8.o
minloc0_8_r8.o minloc0_16_r8.o minloc0_4_r10.o minloc0_8_r10.o minloc0_16_r10.o
minloc0_4_r16.o minloc0_8_r16.o minloc0_16_r16.o minloc1_4_i1.o minloc1_8_i1.o
minloc1_16_i1.o minloc1_4_i2.o minloc1_8_i2.o minloc1_16_i2.o minloc1_4_i4.o
minloc1_8_i4.o minloc1_16_i4.o minloc1_4_i8.o minloc1_8_i8.o minloc1_16_i8.o
minloc1_4_i16.o minloc1_8_i16.o minloc1_16_i16.o minloc1_4_r4.o minloc1_8_r4.o
minloc1_16_r4.o minloc1_4_r8.o minloc1_8_r8.o minloc1_16_r8.o minloc1_4_r10.o
minloc1_8_r10.o minloc1_16_r10.o minloc1_4_r16.o minloc1_8_r16.o
minloc1_16_r16.o minval_i1.o minval_i2.o minval_i4.o minval_i8.o minval_i16.o
minval_r4.o minval_r8.o minval_r10.o minval_r16.o product_i1.o product_i2.o
product_i4.o product_i8.o product_i16.o product_r4.o product_r8.o product_r10.o
product_r16.o product_c4.o product_c8.o product_c10.o product_c16.o sum_i1.o
sum_i2.o sum_i4.o sum_i8.o sum_i16.o sum_r4.o sum_r8.o sum_r10.o sum_r16.o
sum_c4.o sum_c8.o sum_c10.o sum_c16.o matmul_i1.o matmul_i2.o matmul_i4.o
matmul_i8.o matmul_i16.o matmul_r4.o matmul_r8.o matmul_r10.o matmul_r16.o
matmul_c4.o matmul_c8.o matmul_c10.o matmul_c16.o matmul_l4.o matmul_l8.o
matmul_l16.o transpose_i4.o transpose_i8.o transpose_i16.o transpose_r4.o
transpose_r8.o transpose_r10.o transpose_r16.o transpose_c4.o transpose_c8.o
transpose_c10.o transpose_c16.o shape_i4.o shape_i8.o shape_i16.o eoshift1_4.o
eoshift1_8.o eoshift1_16.o eoshift3_4.o eoshift3_8.o eoshift3_16.o cshift1_4.o
cshift1_8.o cshift1_16.o reshape_i4.o reshape_i8.o reshape_i16.o reshape_r4.o
reshape_r8.o reshape_r10.o reshape_r16.o reshape_c4.o reshape_c8.o
reshape_c10.o reshape_c16.o in_pack_i1.o in_pack_i2.o in_pack_i4.o in_pack_i8.o
in_pack_i16.o in_pack_r4.o in_pack_r8.o in_pack_r10.o in_pack_r16.o
in_pack_c4.o in_pack_c8.o in_pack_c10.o in_pack_c16.o in_unpack_i1.o
in_unpack_i2.o in_unpack_i4.o in_unpack_i8.o in_unpack_i16.o in_unpack_r4.o
in_unpack_r8.o in_unpack_r10.o in_unpack_r16.o in_unpack_c4.o in_unpack_c8.o
in_unpack_c10.o in_unpack_c16.o exponent_r4.o exponent_r8.o exponent_r10.o
exponent_r16.o fraction_r4.o fraction_r8.o fraction_r10.o fraction_r16.o
nearest_r4.o nearest_r8.o nearest_r10.o nearest_r16.o set_exponent_r4.o
set_exponent_r8.o set_exponent_r10.o set_exponent_r16.o pow_i4_i4.o pow_i8_i4.o
pow_i16_i4.o pow_c4_i4.o pow_c8_i4.o pow_c10_i4.o pow_c16_i4.o pow_i4_i8.o
pow_i8_i8.o pow_i16_i8.o pow_r4_i8.o pow_r8_i8.o pow_r10_i8.o pow_r16_i8.o
pow_c4_i8.o pow_c8_i8.o pow_c10_i8.o pow_c16_i8.o pow_i4_i16.o pow_i8_i16.o
pow_i16_i16.o pow_r4_i16.o pow_r8_i16.o pow_r10_i16.o pow_r16_i16.o
pow_c4_i16.o pow_c8_i16.o pow_c10_i16.o pow_c16_i16.o rrspacing_r4.o
rrspacing_r8.o rrspacing_r10.o rrspacing_r16.o spacing_r4.o spacing_r8.o
spacing_r10.o spacing_r16.o pack_i1.o pack_i2.o pack_i4.o pack_i8.o pack_i16.o
pack_r4.o pack_r8.o pack_r10.o pack_r16.o pack_c4.o pack_c8.o pack_c10.o
pack_c16.o unpack_i1.o unpack_i2.o unpack_i4.o unpack_i8.o unpack

[Bug middle-end/44078] [4.6 regression] FAIL: gcc.dg/tree-ssa/prefetch-7.c

2010-05-14 Thread hjl dot tools at gmail dot com


--- Comment #3 from hjl dot tools at gmail dot com  2010-05-15 01:31 ---
(In reply to comment #2)
> Created an attachment (id=20629)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20629&action=view) [edit]
> Testfix for the prefetch-7.c testcase
> 
> There always was
> fprintf (dump_file, "Marked reference %p as a nontemporal store.\n",
> in the old code.
> 
> r159256 now adds
> fprintf (dump_file, "Ignoring nontemporal store %p\n", (void *) ref);
> 
> The testcase matches both messages, but it should only match the first one.
> 
> So a potential fix might look like like the attachement. Can you confirm that
> this patch fixes the testcase on your system?
> 

This fixed the problem. Thanks.


-- 


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



[Bug target/44129] Building linux kernel with gcc-4.5.0 and CONFIG_CC_OPTIMIZE_FOR_SIZE segfaults

2010-05-14 Thread hjl dot tools at gmail dot com


--- Comment #6 from hjl dot tools at gmail dot com  2010-05-15 01:13 ---
(In reply to comment #5)
> (In reply to comment #4)
> 
> > I saw you have tried revision 159398. I guess you
> > need to find which file is miscompiled.
> 
> I have no idea how to do that for the kernel.

You build 2 kernel trees, one with gcc 4.5.1 and one
with gcc 4.4.4. You copy binaries from one tree to
another and rebuild kernel one file at a time until
you find the single file which was miscompiled.

> 
> > BTW, you aren't using gold, are you?
> 
> I don't know what gold is either.
> 

Please show the output of

# ld -V


-- 


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



[Bug c++/44122] Confusing error: cannot convert 'T*' to 'T*'

2010-05-14 Thread ppluzhnikov at google dot com


--- Comment #4 from ppluzhnikov at google dot com  2010-05-15 00:59 ---
For reference, here is what clang currently prints (I am told):

t.cc:8:9: error: no matching function for call to 'foo'
 return foo(&pos);
^~~
t.cc:3:5: note: candidate function not viable: no known conversion from
'Py_ssize_t *' (aka 'int *') to 'Py_ssize_t *' (aka 'long *') for 1st argument
 int foo(Py_ssize_t *);
   ^
1 error generated.

I do like both the 'typedef for', and the extra notes ideas.


-- 


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



[Bug c++/44122] Confusing error: cannot convert 'T*' to 'T*'

2010-05-14 Thread manu at gcc dot gnu dot org


--- Comment #3 from manu at gcc dot gnu dot org  2010-05-15 00:55 ---
(In reply to comment #2)
> 
> 1) bar:: looks like valid C++ syntax but it is not a valid
> nested-name-specifier, so it should be something that is not valid C++ syntax,
> such as {bar}::Py_ssize_t

True, but {bar}:: is still confusing. If someone does a patch with that, so be
it, but I would prefer a different syntax. Or even two extra notes like:

t.cc: 7: note: 'Py_ssize_t*' (typedef for 'int*') defined here.
t.cc: 1: note: 'Py_ssize_t*' (typedef for 'long*') defined here.

so it is easy to jump to the definitions.

> 2) Although the quotes _should_ make it clear, I think that could get 
> confusing
> 
> How about adding "typedef for" in there? e.g.
> 
> cannot convert 'bar::Py_ssize_t*' (typedef for 'int*')

Perfect!


-- 


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



[Bug c++/44122] Confusing error: cannot convert 'T*' to 'T*'

2010-05-14 Thread redi at gcc dot gnu dot org


--- Comment #2 from redi at gcc dot gnu dot org  2010-05-15 00:47 ---
(In reply to comment #1)
> Have you tried with Clang?
> 
> I think Clang prints typedefs using 'aka', which is not very clear.
> 
> error: incompatible type assigning 'vector', expected 'std::string' (aka
> 'class std::basic_string')
> 
> I would suggest:
> 
> t.cc:8: error: cannot convert 'bar::Py_ssize_t*' ('int*') to 'Py_ssize_t*'
> ('long*') for 1st argument to 'int foo(Py_ssize_t*)'

1) bar:: looks like valid C++ syntax but it is not a valid
nested-name-specifier, so it should be something that is not valid C++ syntax,
such as {bar}::Py_ssize_t

2) Although the quotes _should_ make it clear, I think that could get confusing
when the type involves parentheses, e.g.

cannot convert 'my_fun_type' ('int* (Foo::*)(char*)') to 'int* const
(Foo::*)(char*)'

How about adding "typedef for" in there? e.g.

cannot convert 'bar::Py_ssize_t*' (typedef for 'int*')


> Do we have typedef unwrapping?

We used to only have unwrapped typedefs, so hopefully we can still get it when
wanted!


-- 


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



[Bug fortran/44054] Handle -Werror, -Werror=, -fdiagnostics-show-option

2010-05-14 Thread manu at gcc dot gnu dot org


--- Comment #4 from manu at gcc dot gnu dot org  2010-05-15 00:44 ---
It would be so nice if there was a single diagnostics library that all FEs
could use and help to enhance. Something configurable, flexible and powerful
like LLVM's diagnostics library. Then Fortran could configure the library to
get a consistent output. Maybe pooling resources we could get caret
diagnostics, ranges, xml output, color, fix-it hints, spell-checker and a few
other features that LLVM already has.


-- 

manu at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||manu at gcc dot gnu dot org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-05-15 00:44:07
   date||


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



[Bug c++/44122] Confusing error: cannot convert 'T*' to 'T*'

2010-05-14 Thread manu at gcc dot gnu dot org


--- Comment #1 from manu at gcc dot gnu dot org  2010-05-15 00:16 ---
Have you tried with Clang?

I think Clang prints typedefs using 'aka', which is not very clear.

error: incompatible type assigning 'vector', expected 'std::string' (aka
'class std::basic_string')

I would suggest:

t.cc:8: error: cannot convert 'bar::Py_ssize_t*' ('int*') to 'Py_ssize_t*'
('long*') for 1st argument to 'int foo(Py_ssize_t*)'

Do we have typedef unwrapping?


-- 

manu at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||manu at gcc dot gnu dot org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-05-15 00:16:20
   date||


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



[Bug target/44129] Building linux kernel with gcc-4.5.0 and CONFIG_CC_OPTIMIZE_FOR_SIZE segfaults

2010-05-14 Thread bdubbs at linuxfromscratch dot org


--- Comment #5 from bdubbs at linuxfromscratch dot org  2010-05-14 22:50 
---
(In reply to comment #4)

> I saw you have tried revision 159398. I guess you
> need to find which file is miscompiled.

I have no idea how to do that for the kernel.

> BTW, you aren't using gold, are you?

I don't know what gold is either.

I'm willing to help find the problem, but I need some hints on how to proceed.


-- 


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



[Bug fortran/44135] Negative array bounds lead to spurious warning

2010-05-14 Thread kargl at gcc dot gnu dot org


--- Comment #8 from kargl at gcc dot gnu dot org  2010-05-14 22:49 ---
Fixed on 4.4, 4.5, and trunk.

Thomas, thanks for the bug report.


-- 

kargl at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug fortran/44135] Negative array bounds lead to spurious warning

2010-05-14 Thread kargl at gcc dot gnu dot org


--- Comment #7 from kargl at gcc dot gnu dot org  2010-05-14 22:40 ---
Subject: Bug 44135

Author: kargl
Date: Fri May 14 22:40:01 2010
New Revision: 159419

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159419
Log:
2010-05-14  Steven G. Kargl  

PR fortran/44135
* gfortran.dg/actual_array_interface_2.f90: New test.

2010-05-14  Steven G. Kargl  

PR fortran/44135
* fortran/interface.c (get_sym_storage_size): Use signed instead of
unsigned mpz_get_?i routines.

Added:
   
branches/gcc-4_4-branch/gcc/testsuite/gfortran.dg/actual_array_interface_2.f90
Modified:
branches/gcc-4_4-branch/gcc/fortran/ChangeLog
branches/gcc-4_4-branch/gcc/fortran/interface.c
branches/gcc-4_4-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug target/44129] Building linux kernel with gcc-4.5.0 and CONFIG_CC_OPTIMIZE_FOR_SIZE segfaults

2010-05-14 Thread hjl dot tools at gmail dot com


--- Comment #4 from hjl dot tools at gmail dot com  2010-05-14 22:27 ---
(In reply to comment #3)
> There are some known issues with gcc 4.5.0 and
> Linux kernel. Please try gcc 4.5.1 snapshot from
> 
> ftp://gcc.gnu.org/pub/gcc/snapshots/4.5-20100513/
> 
> or the mirror sites.
> 

I saw you have tried revision 159398. I guess you
need to find which file is miscompiled.

BTW, you aren't using gold, are you?


-- 


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



[Bug target/44129] Building linux kernel with gcc-4.5.0 and CONFIG_CC_OPTIMIZE_FOR_SIZE segfaults

2010-05-14 Thread hjl dot tools at gmail dot com


--- Comment #3 from hjl dot tools at gmail dot com  2010-05-14 22:24 ---
There are some known issues with gcc 4.5.0 and
Linux kernel. Please try gcc 4.5.1 snapshot from

ftp://gcc.gnu.org/pub/gcc/snapshots/4.5-20100513/

or the mirror sites.


-- 


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



[Bug debug/44136] [4.5/4.6 Regression] ICE in expand_debug_expr with -mno-sse

2010-05-14 Thread jakub at gcc dot gnu dot org


--- Comment #3 from jakub at gcc dot gnu dot org  2010-05-14 21:49 ---
Fixed.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


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



[Bug middle-end/44069] [4.5/4.6 Regression] optimization bug initializing from cast array

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #7 from rguenth at gcc dot gnu dot org  2010-05-14 21:28 ---
More reduced testcase:

template 
class M {
public:
M(const int* arr) {
for (unsigned long r = 0; r < R; ++r)
  for (unsigned long c = 0; c < C; ++c)
m[r*C+c] = arr[r*C+c];
}
int operator()(unsigned r, unsigned c) const
  { return m[r*C+c]; }
private:
int m[R*C];
};
extern "C" void abort (void);
int main()
{
  int vals[2][2] = { { 1, 2 }, { 5, 6 } };
  M<2,2> m( &(vals[0][0]) );
  if (m(1,0) != 5)
abort ();
  return 0;
}


-- 


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



[Bug target/44129] Building linux kernel with gcc-4.5.0 and CONFIG_CC_OPTIMIZE_FOR_SIZE segfaults

2010-05-14 Thread bdubbs at linuxfromscratch dot org


--- Comment #2 from bdubbs at linuxfromscratch dot org  2010-05-14 21:27 
---
OK, these are my procedures:

svn co svn://gcc.gnu.org/svn/gcc/branches/gcc-4_5-branch gcc45-svn
(revision 159398)

cd gcc45-svn
sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in 
sed -i 's...@\./fixinc\...@-c true@' gcc/Makefile.in
mkdir ../gcc-build 
cd../gcc-build 

../gcc45-svn/configure \
--prefix=/usr \
--libexecdir=/usr/lib \
--enable-shared \
--enable-threads=posix \
--enable-__cxa_atexit \
--disable-multilib \
--enable-bootstrap \
--enable-clocale=gnu \
--enable-languages=c,c++

make bootstrap 
make -k check  

../gcc45-svn/contrib/test_summary

Native configuration is x86_64-unknown-linux-gnu

=== g++ tests ===


Running target unix

=== g++ Summary ===

# of expected passes21906
# of expected failures  149
# of unsupported tests  269

=== gcc tests ===


Running target unix
FAIL: gcc.c-torture/compile/limits-exprparen.c  -O0  (test for excess errors)
FAIL: gcc.c-torture/compile/limits-exprparen.c  -O1  (test for excess errors)
FAIL: gcc.c-torture/compile/limits-exprparen.c  -O2  (test for excess errors)
FAIL: gcc.c-torture/compile/limits-exprparen.c  -O3 -fomit-frame-pointer  (test
for excess errors)
FAIL: gcc.c-torture/compile/limits-exprparen.c  -O3 -g  (test for excess
errors)
FAIL: gcc.c-torture/compile/limits-exprparen.c  -Os  (test for excess errors)

=== gcc Summary ===

# of expected passes61141
# of unexpected failures6
# of expected failures  168
# of unsupported tests  826

Running target unix

=== libgomp Summary ===

# of expected passes1029

=== libmudflap tests ===


Running target unix
FAIL: libmudflap.c/fail31-frag.c (-O3) output pattern test
FAIL: libmudflap.c/pass45-frag.c (-O3) execution test
FAIL: libmudflap.c/pass45-frag.c (-O3) output pattern test
FAIL: libmudflap.c/pass45-frag.c (-O3) execution test
FAIL: libmudflap.c/pass45-frag.c (-O3) output pattern test
FAIL: libmudflap.c++/pass41-frag.cxx execution test
FAIL: libmudflap.c++/pass41-frag.cxx (-static) execution test
FAIL: libmudflap.c++/pass41-frag.cxx ( -O) execution test
FAIL: libmudflap.c++/pass41-frag.cxx (-O2) execution test
FAIL: libmudflap.c++/pass41-frag.cxx (-O3) execution test

=== libmudflap Summary ===

# of expected passes1884
# of unexpected failures10
=== libstdc++ tests ===


Running target unix

=== libstdc++ Summary ===

# of expected passes7065
# of expected failures  95
# of unsupported tests  339

make install

gcc --version
gcc (GCC) 4.5.1 20100514 (prerelease)

cd /sources/linux-2.6.33.4

make menuconfig
# KBUILD_CFLAGS   += -Os

make
make modules_install

cp arch/x86/boot/bzImage /boot/linux-test

reboot

Hand Copied:

init[1] segfault at 810099bd ip 810088bd sp
- error 15
kernel panic - not syncing: Attempted to kill init!
Pid: 1,comm: init not tainted 2.6.33.4-lfs66
 Call Trace:
 [] panic
 [] ? get_current_tty
 [] do_exit
 [] do_group_exit
 [] get_signal_to_deliver
 [] do_signal
 [] ? printk
 [] ? rdtsc_barrier
 [] ? printk
 [] ? __bad_area_nosemaphore
 [] ? rdtsc_barrier
 [] do_notify_resume
 [] retint_signal
 [] ? rdtsc_barrier
-

Changing back to not optimize for size results in a bootable kernel.

Also, every package on the boot partition was built with gcc-4.5.0.  Evidently
none of the other core packages tries to optimize for size.





-- 


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



[Bug fortran/44135] Negative array bounds lead to spurious warning

2010-05-14 Thread kargl at gcc dot gnu dot org


--- Comment #6 from kargl at gcc dot gnu dot org  2010-05-14 21:17 ---
Subject: Bug 44135

Author: kargl
Date: Fri May 14 21:17:42 2010
New Revision: 159417

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159417
Log:
2010-05-14  Steven G. Kargl  

PR fortran/44135
* gfortran.dg/actual_array_interface_2.f90: New test.

2010-05-14  Steven G. Kargl  

PR fortran/44135
* fortran/interface.c (get_sym_storage_size): Use signed instead of
unsigned mpz_get_?i routines.

Added:
   
branches/gcc-4_5-branch/gcc/testsuite/gfortran.dg/actual_array_interface_2.f90
Modified:
branches/gcc-4_5-branch/gcc/fortran/ChangeLog
branches/gcc-4_5-branch/gcc/fortran/interface.c
branches/gcc-4_5-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug middle-end/44069] [4.5/4.6 Regression] optimization bug initializing from cast array

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2010-05-14 21:16 ---
We fold

  D.1794_14 = D.1795_13 * 4;
  D.1793_15 = &vals[0][0] + D.1794_14;

to &vals[0][D.1795_13]

Now we can either avoid doing this kind of foldings or we need to be more
careful when analyzing the result in the oracle.


-- 


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



[Bug fortran/44135] Negative array bounds lead to spurious warning

2010-05-14 Thread kargl at gcc dot gnu dot org


--- Comment #5 from kargl at gcc dot gnu dot org  2010-05-14 21:02 ---
Subject: Bug 44135

Author: kargl
Date: Fri May 14 21:02:26 2010
New Revision: 159415

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159415
Log:
2010-05-14  Steven G. Kargl  

PR fortran/44135
* gfortran.dg/actual_array_interface_2.f90: New test.

2010-05-14  Steven G. Kargl  

PR fortran/44135
* fortran/interface.c (get_sym_storage_size): Use signed instead of
unsigned mpz_get_?i routines.

Added:
trunk/gcc/testsuite/gfortran.dg/actual_array_interface_2.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/interface.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug middle-end/44145] crash in get_last_value_validate

2010-05-14 Thread rmansfield at qnx dot com


--- Comment #1 from rmansfield at qnx dot com  2010-05-14 20:48 ---
Created an attachment (id=20661)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20661&action=view)
preprocessed source


-- 


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



[Bug middle-end/44103] [4.6 Regression] New Java test failures

2010-05-14 Thread froydnj at gcc dot gnu dot org


--- Comment #2 from froydnj at gcc dot gnu dot org  2010-05-14 20:47 ---
Subject: Bug 44103

Author: froydnj
Date: Fri May 14 20:47:39 2010
New Revision: 159414

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159414
Log:
PR 44103
* java-tree.h (START_RECORD_CONSTRUCTOR): Change first argument to a
vector.  Move call to build_constructor...
(FINISH_RECORD_CONSTRUCTOR): ...here.  Add necessary arguments.  Clear
TREE_CONSTANT on the constructor.
(PUSH_SUPER_VALUE): Change first argument to a vector.
(PUSH_FIELD_VALUE): Likewise.
* resource.c (compile_resource_data): Update calls to above macros.
* constants.c (build_constants_constructor): Likewise.
* class.c (build_utf8_ref): Likewise.
(make_field_value): Likewise.
(make_method_value): Likewise.
(add_table_and_syms): New function.
(make_class_data): Call it.  Update calls to above macros.
(build_symbol_table_entry): New function.
(build_symbol_entry): Call it.  Update calls to above macros.
(emit_symbol_table): Likewise.
(make_catch_class_record): Update calls to above macros.
(build_assertion_table_entry): New function.
(add_assertion_table_entry): Call it.
(emit_assertion_table): Likewise.

Modified:
trunk/gcc/java/ChangeLog
trunk/gcc/java/class.c
trunk/gcc/java/constants.c
trunk/gcc/java/java-tree.h
trunk/gcc/java/resource.c


-- 


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



[Bug middle-end/44145] New: crash in get_last_value_validate

2010-05-14 Thread rmansfield at qnx dot com
~/gcc/gcc-4_4-branch/mips-build/gcc$ ./xgcc -v
Using built-in specs.
Target: mips-unknown-linux-uclibc
Configured with: ../configure --target=mips-unknown-linux-uclibc
--prefix=/home/ryan/x-tools/mips-unknown-linux-uclibc
--with-sysroot=/home/ryan/x-tools/mips-unknown-linux-uclibc/mips-unknown-linux-uclibc/sys-root
--enable-languages=c --disable-multilib --with-float=soft --enable-__cxa_atexit
--with-local-prefix=/home/ryan/x-tools/mips-unknown-linux-uclibc/mips-unknown-linux-uclibc/sys-root
--disable-nls --enable-threads=posix --enable-symvers=gnu --enable-c99
--enable-long-long --enable-target-optspace
Thread model: posix

I have been only been able to reproduce the segfault on one machine. If the
source is preprocessed the crash no longer occurs but valgrind reports several
errors. I have not been able to reproduce the crash/valid errors on trunk/4.5.0
or after rev145283.

~/gcc/gcc-4_4-branch/mips-bld/gcc$ valgrind -q ./cc1 -quiet -mplt -mno-shared
-O1 t.i
==28263== Invalid read of size 4
==28263==at 0x84CEA86: get_last_value_validate (regs.h:92)
==28263==by 0x84CE8C6: get_last_value_validate (combine.c:11808)
==28263==by 0x84CEE48: record_value_for_reg (combine.c:11421)
==28263==by 0x84CF2B4: record_dead_and_set_regs (combine.c:11555)
==28263==by 0x84E5374: rest_of_handle_combine (combine.c:1266)
==28263==by 0x821EAD5: execute_one_pass (passes.c:1277)
==28263==by 0x821ED2B: execute_pass_list (passes.c:1326)
==28263==by 0x821ED3E: execute_pass_list (passes.c:1327)
==28263==by 0x82F493C: tree_rest_of_compilation (tree-optimize.c:420)
==28263==by 0x8402C1D: cgraph_expand_function (cgraphunit.c:1047)
==28263==by 0x8403F84: cgraph_optimize (cgraphunit.c:1106)
==28263==by 0x805A1DB: c_write_global_declarations (c-decl.c:8118)
==28263==  Address 0x4dc8030 is 0 bytes after a block of size 4,456 alloc'd
==28263==at 0x4024C1C: malloc (vg_replace_malloc.c:195)
==28263==by 0x856E127: xmalloc (xmalloc.c:147)
==28263==by 0x8244766: regstat_init_n_sets_and_refs (regstat.c:63)
==28263==by 0x84E48E4: rest_of_handle_combine (combine.c:13009)
==28263==by 0x821EAD5: execute_one_pass (passes.c:1277)
==28263==by 0x821ED2B: execute_pass_list (passes.c:1326)
==28263==by 0x821ED3E: execute_pass_list (passes.c:1327)
==28263==by 0x82F493C: tree_rest_of_compilation (tree-optimize.c:420)
==28263==by 0x8402C1D: cgraph_expand_function (cgraphunit.c:1047)
==28263==by 0x8403F84: cgraph_optimize (cgraphunit.c:1106)
==28263==by 0x805A1DB: c_write_global_declarations (c-decl.c:8118)
==28263==by 0x82B9839: toplev_main (toplev.c:981)
==28263== 
==28263== Invalid read of size 4
==28263==at 0x84CEA86: get_last_value_validate (regs.h:92)
==28263==by 0x84CE8C6: get_last_value_validate (combine.c:11808)
==28263==by 0x84CEBD9: get_last_value (combine.c:11876)
==28263==by 0x84D195C: if_then_else_cond (combine.c:7975)
==28263==by 0x84D1A9D: if_then_else_cond (combine.c:7845)
==28263==by 0x84DAACB: combine_simplify_rtx (combine.c:4608)
==28263==by 0x84DD5F4: subst (combine.c:4547)
==28263==by 0x84DD6EC: subst (combine.c:4485)
==28263==by 0x84E1174: try_combine (combine.c:2732)
==28263==by 0x84E50E5: rest_of_handle_combine (combine.c:1139)
==28263==by 0x821EAD5: execute_one_pass (passes.c:1277)
==28263==by 0x821ED2B: execute_pass_list (passes.c:1326)
==28263==  Address 0x4dc8030 is 0 bytes after a block of size 4,456 alloc'd
==28263==at 0x4024C1C: malloc (vg_replace_malloc.c:195)
==28263==by 0x856E127: xmalloc (xmalloc.c:147)
==28263==by 0x8244766: regstat_init_n_sets_and_refs (regstat.c:63)
==28263==by 0x84E48E4: rest_of_handle_combine (combine.c:13009)
==28263==by 0x821EAD5: execute_one_pass (passes.c:1277)
==28263==by 0x821ED2B: execute_pass_list (passes.c:1326)
==28263==by 0x821ED3E: execute_pass_list (passes.c:1327)
==28263==by 0x82F493C: tree_rest_of_compilation (tree-optimize.c:420)
==28263==by 0x8402C1D: cgraph_expand_function (cgraphunit.c:1047)
==28263==by 0x8403F84: cgraph_optimize (cgraphunit.c:1106)
==28263==by 0x805A1DB: c_write_global_declarations (c-decl.c:8118)
==28263==by 0x82B9839: toplev_main (toplev.c:981)
==28263==


-- 
   Summary: crash in get_last_value_validate
   Product: gcc
   Version: 4.4.5
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: rmansfield at qnx dot com
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: mips-unknown-linux-uclibc


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



[Bug tree-optimization/44119] [4.6 Regression] error: SSA name in freelist but still referenced

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2010-05-14 20:22 ---
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/44119] [4.6 Regression] error: SSA name in freelist but still referenced

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2010-05-14 20:18 ---
Subject: Bug 44119

Author: rguenth
Date: Fri May 14 20:18:34 2010
New Revision: 159412

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159412
Log:
2010-05-14  Richard Guenther  

PR tree-optimization/44119
* tree-ssa-pre.c (eliminate): Properly mark replacement of
a PHI node necessary.

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

Added:
trunk/gcc/testsuite/gcc.c-torture/compile/pr44119.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-pre.c


-- 


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



[Bug c++/44127] [4.3/4.4/4.5/4.6 Regression] G++ emits unnecessary EH code

2010-05-14 Thread jason at gcc dot gnu dot org


--- Comment #4 from jason at gcc dot gnu dot org  2010-05-14 20:00 ---
Subject: Bug 44127

Author: jason
Date: Fri May 14 19:59:43 2010
New Revision: 159411

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159411
Log:
PR c++/44127
gcc:
* gimple.h (enum gf_mask): Add GF_CALL_NOTHROW.
(gimple_call_set_nothrow): New.
* gimple.c (gimple_build_call_from_tree): Call it.
(gimple_call_flags): Set ECF_NOTHROW from GF_CALL_NOTHROW.
gcc/cp:
* except.c (dtor_nothrow): Return nonzero for type with
trivial destructor.

Modified:
branches/gcc-4_5-branch/gcc/ChangeLog
branches/gcc-4_5-branch/gcc/cp/ChangeLog
branches/gcc-4_5-branch/gcc/cp/except.c
branches/gcc-4_5-branch/gcc/gimple.c
branches/gcc-4_5-branch/gcc/gimple.h
branches/gcc-4_5-branch/gcc/testsuite/g++.dg/eh/terminate1.C


-- 


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



[Bug c++/44127] [4.3/4.4/4.5/4.6 Regression] G++ emits unnecessary EH code

2010-05-14 Thread jason at gcc dot gnu dot org


--- Comment #3 from jason at gcc dot gnu dot org  2010-05-14 19:59 ---
Subject: Bug 44127

Author: jason
Date: Fri May 14 19:59:32 2010
New Revision: 159410

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159410
Log:
PR c++/44127
gcc:
* gimplify.c (gimplify_seq_add_stmt): No longer static.
* gimple.h: Declare it.
* gimple.c (gimple_build_eh_filter): No ops.
gcc/cp:
* cp-gimplify.c (gimplify_must_not_throw_expr): Use
gimple_build_eh_must_not_throw.

Added:
branches/gcc-4_5-branch/gcc/testsuite/g++.dg/eh/terminate1.C
Modified:
branches/gcc-4_5-branch/gcc/ChangeLog
branches/gcc-4_5-branch/gcc/cp/ChangeLog
branches/gcc-4_5-branch/gcc/cp/cp-gimplify.c
branches/gcc-4_5-branch/gcc/gimple.c
branches/gcc-4_5-branch/gcc/gimple.h
branches/gcc-4_5-branch/gcc/gimplify.c
branches/gcc-4_5-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug c++/44127] [4.3/4.4/4.5/4.6 Regression] G++ emits unnecessary EH code

2010-05-14 Thread jason at gcc dot gnu dot org


--- Comment #2 from jason at gcc dot gnu dot org  2010-05-14 18:55 ---
Subject: Bug 44127

Author: jason
Date: Fri May 14 18:55:22 2010
New Revision: 159408

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159408
Log:
PR c++/44127
gcc:
* gimple.h (enum gf_mask): Add GF_CALL_NOTHROW.
(gimple_call_set_nothrow): New.
* gimple.c (gimple_build_call_from_tree): Call it.
(gimple_call_flags): Set ECF_NOTHROW from GF_CALL_NOTHROW.
gcc/cp:
* except.c (dtor_nothrow): Return nonzero for type with
trivial destructor.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/except.c
trunk/gcc/gimple.c
trunk/gcc/gimple.h
trunk/gcc/testsuite/g++.dg/eh/terminate1.C


-- 


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



[Bug c++/44127] [4.3/4.4/4.5/4.6 Regression] G++ emits unnecessary EH code

2010-05-14 Thread jason at gcc dot gnu dot org


--- Comment #1 from jason at gcc dot gnu dot org  2010-05-14 18:55 ---
Subject: Bug 44127

Author: jason
Date: Fri May 14 18:55:10 2010
New Revision: 159407

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159407
Log:
PR c++/44127
gcc:
* gimplify.c (gimplify_seq_add_stmt): No longer static.
* gimple.h: Declare it.
* gimple.c (gimple_build_eh_filter): No ops.
gcc/cp:
* cp-gimplify.c (gimplify_must_not_throw_expr): Use
gimple_build_eh_must_not_throw.

Added:
trunk/gcc/testsuite/g++.dg/eh/terminate1.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-gimplify.c
trunk/gcc/gimple.c
trunk/gcc/gimple.h
trunk/gcc/gimplify.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug middle-end/44144] [vect256] ICE at at tree-vect-data-refs.c:2574

2010-05-14 Thread hjl dot tools at gmail dot com


--- Comment #2 from hjl dot tools at gmail dot com  2010-05-14 18:47 ---
Fixed.


-- 

hjl dot tools at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


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



[Bug fortran/44135] Negative array bounds lead to spurious warning

2010-05-14 Thread kargl at gcc dot gnu dot org


--- Comment #4 from kargl at gcc dot gnu dot org  2010-05-14 18:29 ---
Patch submitted here:

http://gcc.gnu.org/ml/gcc-patches/2010-05/msg01080.html


-- 


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



[Bug middle-end/44144] [vect256] ICE at at tree-vect-data-refs.c:2574

2010-05-14 Thread hjl at gcc dot gnu dot org


--- Comment #1 from hjl at gcc dot gnu dot org  2010-05-14 18:29 ---
Subject: Bug 44144

Author: hjl
Date: Fri May 14 18:28:52 2010
New Revision: 159404

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159404
Log:
Increase base_name alignment only if base_name is a variable.

gcc/

2010-05-14  H.J. Lu  

PR middle-end/44144
* tree-vect-data-refs.c (vect_create_data_ref_ptr): Increase
base_name alignment only if base_name is a variable.

gcc/testsuite/

2010-05-14  H.J. Lu  

PR middle-end/44144
* gcc.target/i386/pr44144.c: New.

Added:
branches/vect256/gcc/testsuite/gcc.target/i386/pr44144.c
Modified:
branches/vect256/gcc/ChangeLog.vect256
branches/vect256/gcc/testsuite/ChangeLog.vect256
branches/vect256/gcc/tree-vect-data-refs.c


-- 


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



[Bug middle-end/44144] New: [vect256] ICE at at tree-vect-data-refs.c:2574

2010-05-14 Thread hjl dot tools at gmail dot com
On vect256 branch, revision 159384 gave

[...@gnu-18 gcc]$ cat /tmp/x.c
void
foo (char * dest, int xcount, int ycount)
{
  int x, y;
  for (y = 0; y < ycount; y++)
for (x = 0; x < xcount; x++)
  dest[x + y*2] = 0;
}
[...@gnu-18 gcc]$ ./xgcc -B./ -O2 -ftree-vectorize -O2 -mavx -S /tmp/x.c
/tmp/x.c: In function ‘foo’:
/tmp/x.c:2:1: internal compiler error: tree check: expected tree that contains
‘decl common’ structure, have ‘indirect_ref’ in vect_create_data_ref_ptr, at
tree-vect-data-refs.c:2574
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.
[...@gnu-18 gcc]$


-- 
   Summary: [vect256] ICE at at tree-vect-data-refs.c:2574
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl dot tools at gmail dot com


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



[Bug debug/44136] [4.5/4.6 Regression] ICE in expand_debug_expr with -mno-sse

2010-05-14 Thread jakub at gcc dot gnu dot org


--- Comment #2 from jakub at gcc dot gnu dot org  2010-05-14 18:11 ---
Subject: Bug 44136

Author: jakub
Date: Fri May 14 18:11:03 2010
New Revision: 159401

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159401
Log:
PR debug/44136
* cfgexpand.c (expand_debug_expr): If non-memory op0
has BLKmode, return NULL.

* gcc.dg/pr44136.c: New test.

Added:
branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/pr44136.c
Modified:
branches/gcc-4_5-branch/gcc/ChangeLog
branches/gcc-4_5-branch/gcc/cfgexpand.c
branches/gcc-4_5-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug debug/44136] [4.5/4.6 Regression] ICE in expand_debug_expr with -mno-sse

2010-05-14 Thread jakub at gcc dot gnu dot org


--- Comment #1 from jakub at gcc dot gnu dot org  2010-05-14 18:09 ---
Subject: Bug 44136

Author: jakub
Date: Fri May 14 18:09:14 2010
New Revision: 159400

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159400
Log:
PR debug/44136
* cfgexpand.c (expand_debug_expr): If non-memory op0
has BLKmode, return NULL.

* gcc.dg/pr44136.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/pr44136.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cfgexpand.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug fortran/43207] [OOP] ICE for class pointer => null() initialization

2010-05-14 Thread janus at gcc dot gnu dot org


-- 

janus at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |janus at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED
   Last reconfirmed|2010-05-13 14:47:03 |2010-05-14 17:59:08
   date||


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



[Bug lto/44143] [4.6 Regression] -fdump-tree-all for lto does not work as expected

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2010-05-14 17:13 ---
Btw, I like to have wpa/ltrans dumps named after the final output file, not
random source files.  That would allow easier adaption of dg-scan-* i think.


-- 


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



[Bug lto/44143] [4.6 Regression] -fdump-tree-all for lto does not work as expected

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2010-05-14 16:53 ---
I'll fix it (again).


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-05-14 16:53:08
   date||


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



[Bug lto/44143] [4.6 Regression] -fdump-tree-all for lto does not work as expected

2010-05-14 Thread hjl dot tools at gmail dot com


--- Comment #4 from hjl dot tools at gmail dot com  2010-05-14 16:38 ---
I opened PR 41708, which is closed as a dup for PR 41564.


-- 


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



[Bug target/44141] Redundant loads and stores generated for AMD bdver1 target

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2010-05-14 16:35 ---
I suppose the optimization can be re-implemented as a peephole2 or as
optimization
in the assembler instead?


-- 


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



[Bug fortran/44135] Negative array bounds lead to spurious warning

2010-05-14 Thread kargl at gcc dot gnu dot org


--- Comment #3 from kargl at gcc dot gnu dot org  2010-05-14 16:34 ---
I have a patch that I'm testing.


-- 

kargl at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |kargl at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED
   Last reconfirmed|2010-05-14 16:23:36 |2010-05-14 16:34:06
   date||


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



[Bug lto/44143] [4.6 Regression] -fdump-tree-all for lto does not work as expected

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2010-05-14 16:33 ---
So that's not "-fdump-tree-* do not work as expected" but "testing leaves
temporary files behind"?


-- 


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



[Bug lto/44143] [4.6 Regression] -fdump-tree-all for lto does not work as expected

2010-05-14 Thread hjl dot tools at gmail dot com


--- Comment #2 from hjl dot tools at gmail dot com  2010-05-14 16:32 ---
I saw

[...@gnu-26 tmp]$ ls /tmp/cc*.alias
/tmp/cc0eEl7p.wpa.o.062t.alias  /tmp/cckTN74j.wpa.o.062t.alias
/tmp/cc0fl2Gv.wpa.o.062t.alias  /tmp/ccKxCa48.wpa.o.062t.alias
/tmp/cc0mDjKr.wpa.o.062t.alias  /tmp/ccmBxp4i.wpa.o.062t.alias
/tmp/cc2aQnfZ.wpa.o.062t.alias  /tmp/ccmCGQyk.wpa.o.062t.alias
/tmp/cc44cnPJ.wpa.o.062t.alias  /tmp/ccmeNbWi.wpa.o.062t.alias
/tmp/cc4VTteM.wpa.o.062t.alias  /tmp/ccMf6RhU.wpa.o.062t.alias
/tmp/cc6PRdMg.wpa.o.062t.alias  /tmp/ccMfSIug.wpa.o.062t.alias
/tmp/cc6uMLow.wpa.o.062t.alias  /tmp/ccmhdUhZ.wpa.o.062t.alias
/tmp/cc89Jo9c.wpa.o.062t.alias  /tmp/ccMRx2Rm.wpa.o.062t.alias
/tmp/cc8C0Fnr.wpa.o.062t.alias  /tmp/ccmStWDb.wpa.o.062t.alias
/tmp/cc8IKE3z.wpa.o.062t.alias  /tmp/ccMVFGbe.wpa.o.062t.alias
/tmp/ccA0uYOV.wpa.o.062t.alias  /tmp/ccmZ1YYH.wpa.o.062t.alias
/tmp/ccACidGl.wpa.o.062t.alias  /tmp/cco1kqB2.wpa.o.062t.alias
/tmp/ccaKvd2e.wpa.o.062t.alias  /tmp/ccoalfcL.wpa.o.062t.alias
/tmp/ccaSErpY.wpa.o.062t.alias  /tmp/ccoKBpHd.wpa.o.062t.alias
/tmp/ccAUJRcI.wpa.o.062t.alias  /tmp/ccQ2FPLZ.wpa.o.062t.alias
/tmp/ccAZcsmq.wpa.o.062t.alias  /tmp/ccq3LmLt.wpa.o.062t.alias
/tmp/cccfr7pZ.wpa.o.062t.alias  /tmp/ccqeFc1T.wpa.o.062t.alias
/tmp/ccCkB5aX.wpa.o.062t.alias  /tmp/ccQnJ9tm.wpa.o.062t.alias
/tmp/ccCPo3KN.wpa.o.062t.alias  /tmp/ccs3kFvP.wpa.o.062t.alias
/tmp/cccYRb2r.wpa.o.062t.alias  /tmp/ccs9g6iX.wpa.o.062t.alias
/tmp/cccySTRh.wpa.o.062t.alias  /tmp/ccSCkKGD.wpa.o.062t.alias
/tmp/ccEbBSxV.wpa.o.062t.alias  /tmp/ccSfBmUQ.wpa.o.062t.alias
/tmp/ccEhqkkj.wpa.o.062t.alias  /tmp/ccSR21cA.wpa.o.062t.alias
/tmp/cceMXyCM.wpa.o.062t.alias  /tmp/ccsSDmqA.wpa.o.062t.alias
/tmp/cceOgGZP.wpa.o.062t.alias  /tmp/ccU0Gb3j.wpa.o.062t.alias
/tmp/ccg7uyKt.wpa.o.062t.alias  /tmp/ccUC5eql.wpa.o.062t.alias
/tmp/ccGdMtFc.wpa.o.062t.alias  /tmp/ccuTcS0o.wpa.o.062t.alias
/tmp/ccI8fSXr.wpa.o.062t.alias  /tmp/ccw6QIfF.wpa.o.062t.alias
/tmp/ccircpzK.wpa.o.062t.alias  /tmp/ccWd7clT.wpa.o.062t.alias
/tmp/ccISWkIR.wpa.o.062t.alias  /tmp/ccWg1Bqk.wpa.o.062t.alias
/tmp/ccK1120n.wpa.o.062t.alias  /tmp/ccwIbmdq.wpa.o.062t.alias
/tmp/cck4NFD9.wpa.o.062t.alias  /tmp/ccwIMzla.wpa.o.062t.alias
/tmp/cckBb0IM.wpa.o.062t.alias  /tmp/ccyGlDlq.wpa.o.062t.alias
/tmp/ccKcLaRh.wpa.o.062t.alias  /tmp/ccyMLPcV.wpa.o.062t.alias
/tmp/cckG4BDR.wpa.o.062t.alias  /tmp/ccYO3bBu.wpa.o.062t.alias
[...@gnu-26 tmp]$ 


-- 


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



[Bug lto/44143] [4.6 Regression] -fdump-tree-all for lto does not work as expected

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2010-05-14 16:26 ---
Did it?

> ./xgcc -B. -o t 1.c 2.c -flto -fdump-tree-optimized
> ls t.142t.optimized 1.c.142t.optimized 2.c.142t.optimized 
1.c.142t.optimized  2.c.142t.optimized  t.142t.optimized

or do you mean with -fwhopr?  Yes, there it might have been - but I'd like
to change 4.5 behavior there anyway.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|-fdump-tree-all for lto does|[4.6 Regression] -fdump-
   |not work as expected|tree-all for lto does not
   ||work as expected


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



[Bug fortran/44135] Negative array bounds lead to spurious warning

2010-05-14 Thread kargl at gcc dot gnu dot org


--- Comment #2 from kargl at gcc dot gnu dot org  2010-05-14 16:23 ---
The problem seems to be triggered by the upper bound value of 0.
If I change it to 1 or -1 in both the main program and the 
subroutine, then the warning is not triggered.


-- 

kargl at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
  Known to fail||4.3.5 4.4.3 4.5.1 4.6.0
   Last reconfirmed|-00-00 00:00:00 |2010-05-14 16:23:36
   date||


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



[Bug lto/44143] -fdump-tree-all for lto does not work as expected

2010-05-14 Thread hjl dot tools at gmail dot com


-- 

hjl dot tools at gmail dot com changed:

   What|Removed |Added

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


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



[Bug lto/44143] New: -fdump-tree-all for lto does not work as expected

2010-05-14 Thread hjl dot tools at gmail dot com
PR 41564 came back.


-- 
   Summary: -fdump-tree-all for lto does not work as expected
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: lto
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl dot tools at gmail dot com


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



[Bug libstdc++/40974] cannot build gcc-4.4.1: fenv_t has not been declared

2010-05-14 Thread dougsemler at gmail dot com


--- Comment #28 from dougsemler at gmail dot com  2010-05-14 15:49 ---
I tried adding -nostdinc++ via --enable-cxx-flags configure option, but those
aren't passed through to the pch compilation...and I'm not sure that it's
appropriate to pass all the --enable-cxx-flags to the pch generation Makefile
anyway.

Seems to me that -nostdinc++ would be the correct thing to do (are the cross
compiler's header set appropriate for inclusion into the pch??), but it won't
necessarily work if the cross-target compiler isn't g++, right?


-- 

dougsemler at gmail dot com changed:

   What|Removed |Added

 CC||dougsemler at gmail dot com


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



[Bug c++/43915] Compiler flags error: error: invalid initialization of reference of type 'boost::thread&&' from expression of type 'boost::thread'

2010-05-14 Thread redi at gcc dot gnu dot org


--- Comment #12 from redi at gcc dot gnu dot org  2010-05-14 15:36 ---
(In reply to comment #11)
> 
> 2. Modify gcc.hpp to disable the conditional compilation of rvalue references
> (temporarily, until that part of the code works with g++)
> diff gcc.hpp.orig gcc.hpp
> 124c124,125
> # define BOOST_HAS_RVALUE_REFS
> // # define BOOST_HAS_RVALUE_REFS
> # define BOOST_NO_RVALUE_REFERENCES

Or you can do it without editing the boost headers by defining
BOOST_COMPILER_CONFIG to refer to a modified version ofthe gcc.hpp header


-- 


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



[Bug target/44141] Redundant loads and stores generated for AMD bdver1 target

2010-05-14 Thread hjl dot tools at gmail dot com


--- Comment #1 from hjl dot tools at gmail dot com  2010-05-14 15:31 ---
*** Bug 44142 has been marked as a duplicate of this bug. ***


-- 


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



[Bug target/44142] Redundant loads and stores generated for AMD bdver1 target

2010-05-14 Thread hjl dot tools at gmail dot com


--- Comment #1 from hjl dot tools at gmail dot com  2010-05-14 15:31 ---


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


-- 

hjl dot tools at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


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



[Bug target/44142] New: Redundant loads and stores generated for AMD bdver1 target

2010-05-14 Thread harsha dot jagasia at amd dot com
Redundant loads and stores created with the new -mtune=bdver1 target. BDVER1 is
optimized to generate packed single moves instead packed double/integer moves
to save 1 byte of space.

Here is the excerpt from the asm dump for ac.f90 benchmark in the Polyhedron
testsuite. Complete asm dump generated with -dP also attached.

vmovaps %xmm15, 304(%rsp)   # 4985  *avx_movv4sf_internal/3 [length = 9]
#(insn 4987 4985 2838 ac.f90:503 (set (reg:V2DF 52 xmm15)
#(mem/c:V2DF (plus:DI (reg/f:DI 7 sp)
#(const_int 304 [0x130])) [16 %sfp+-37872 S16 A128])) 1031
{*avx_movv2df_internal} (nil))
vmovaps 304(%rsp), %xmm15   # 4987  *avx_movv2df_internal/2 [length
= 9]
#(insn 2838 4987 4986 ac.f90:503 (set (reg:V2DF 52 xmm15)
#(div:V2DF (reg:V2DF 52 xmm15)
#(mem:V2DF (plus:DI (reg/f:DI 7 sp)
#(const_int 32432 [0x7eb0])) [2 *vect_pdclroo.541_5123+0
S16 A128]))) 1100 {avx_divv2df3} (nil))

Comments from Uros:
You are changing V4SFmode to V2DF mode. Since this combination is not
allowed by MODES_TIEABLE_P (and/or CANNOT_CHANGE_MODE_CLASS), value
gets reloaded through the memory. You can perhaps experiment with
these two macros a bit.


-- 
   Summary: Redundant loads and stores generated for AMD bdver1
target
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: harsha dot jagasia at amd dot com
 GCC build triplet: x86_64-unknown-linux-gnu
  GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64-unknown-linux-gnu


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



[Bug objc/44140] objc.dg/torture/tls/thr-init-3.m failure

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2010-05-14 15:25 ---
That's obviously a objc bug, not a lto bug.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

  Component|lto |objc


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



[Bug target/44141] New: Redundant loads and stores generated for AMD bdver1 target

2010-05-14 Thread harsha dot jagasia at amd dot com
Redundant loads and stores created with the new -mtune=bdver1 target. BDVER1 is
optimized to generate packed single moves instead packed double/integer moves
to save 1 byte of space.

Here is the excerpt from the asm dump for ac.f90 benchmark in the Polyhedron
testsuite. Complete asm dump generated with -dP also attached.

vmovaps %xmm15, 304(%rsp)   # 4985  *avx_movv4sf_internal/3 [length = 9]
#(insn 4987 4985 2838 ac.f90:503 (set (reg:V2DF 52 xmm15)
#(mem/c:V2DF (plus:DI (reg/f:DI 7 sp)
#(const_int 304 [0x130])) [16 %sfp+-37872 S16 A128])) 1031
{*avx_movv2df_internal} (nil))
vmovaps 304(%rsp), %xmm15   # 4987  *avx_movv2df_internal/2 [length
= 9]
#(insn 2838 4987 4986 ac.f90:503 (set (reg:V2DF 52 xmm15)
#(div:V2DF (reg:V2DF 52 xmm15)
#(mem:V2DF (plus:DI (reg/f:DI 7 sp)
#(const_int 32432 [0x7eb0])) [2 *vect_pdclroo.541_5123+0
S16 A128]))) 1100 {avx_divv2df3} (nil))

Comments from Uros:
You are changing V4SFmode to V2DF mode. Since this combination is not
allowed by MODES_TIEABLE_P (and/or CANNOT_CHANGE_MODE_CLASS), value
gets reloaded through the memory. You can perhaps experiment with
these two macros a bit.


-- 
   Summary: Redundant loads and stores generated for AMD bdver1
target
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: harsha dot jagasia at amd dot com
 GCC build triplet: x86_64-unknown-linux-gnu
  GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64-unknown-linux-gnu


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



[Bug libstdc++/40974] cannot build gcc-4.4.1: fenv_t has not been declared

2010-05-14 Thread paolo dot carlini at oracle dot com


--- Comment #27 from paolo dot carlini at oracle dot com  2010-05-14 15:11 
---
You mean the patch in Comment # 20? Because it seems an hack to me. Maybe Ralf
is willing to explain why is the only possible fix. In the meanwhile just
disabling the generation of the PCHs works around the problem pretty well and
doesn't seem a big deal to me.


-- 


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



[Bug libstdc++/40974] cannot build gcc-4.4.1: fenv_t has not been declared

2010-05-14 Thread armin76 at gentoo dot org


--- Comment #26 from armin76 at gentoo dot org  2010-05-14 15:07 ---
Why hasn't that patch have been applied?


-- 


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



[Bug c++/30298] [4.3/4.4/4.5/4.6 regression] ICE with duplicate broken inheritance

2010-05-14 Thread paolo dot carlini at oracle dot com


--- Comment #11 from paolo dot carlini at oracle dot com  2010-05-14 15:04 
---
On it, after all ;)


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |paolo dot carlini at oracle
   |dot org |dot com
 Status|NEW |ASSIGNED
   Last reconfirmed|2006-12-26 22:33:06 |2010-05-14 15:04:58
   date||


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



[Bug target/44088] -mavx doesn't generate always AVX instructions

2010-05-14 Thread hjl dot tools at gmail dot com


--- Comment #4 from hjl dot tools at gmail dot com  2010-05-14 14:44 ---
Fixed.


-- 

hjl dot tools at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.5.1


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



[Bug target/44088] -mavx doesn't generate always AVX instructions

2010-05-14 Thread hjl at gcc dot gnu dot org


--- Comment #3 from hjl at gcc dot gnu dot org  2010-05-14 14:43 ---
Subject: Bug 44088

Author: hjl
Date: Fri May 14 14:43:32 2010
New Revision: 159395

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159395
Log:
Support AVX for cmpss/cmpsd.

gcc/

2010-05-14  H.J. Lu  

Backport from mainline
2010-05-12  H.J. Lu  

PR target/44088
* config/i386/sse.md (*avx_vmmaskcmp3): New.

gcc/testsuite/

2010-05-14  H.J. Lu  

Backport from mainline
2010-05-12  H.J. Lu  

PR target/44088
* gcc.target/i386/avx-cmpsd-1.c: New.
* gcc.target/i386/avx-cmpsd-2.c: Likewise.
* gcc.target/i386/avx-cmpss-1.c: Likewise.
* gcc.target/i386/avx-cmpss-2.c: Likewise.
* gcc.target/i386/sse-cmpss-1.c: Likewise.
* gcc.target/i386/sse2-cmpsd-1.c: Likewise.

Added:
branches/gcc-4_5-branch/gcc/testsuite/gcc.target/i386/avx-cmpsd-1.c
branches/gcc-4_5-branch/gcc/testsuite/gcc.target/i386/avx-cmpsd-2.c
branches/gcc-4_5-branch/gcc/testsuite/gcc.target/i386/avx-cmpss-1.c
branches/gcc-4_5-branch/gcc/testsuite/gcc.target/i386/avx-cmpss-2.c
branches/gcc-4_5-branch/gcc/testsuite/gcc.target/i386/sse-cmpss-1.c
branches/gcc-4_5-branch/gcc/testsuite/gcc.target/i386/sse2-cmpsd-1.c
Modified:
branches/gcc-4_5-branch/gcc/ChangeLog
branches/gcc-4_5-branch/gcc/config/i386/sse.md
branches/gcc-4_5-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug lto/44140] New: objc.dg/torture/tls/thr-init-3.m failure

2010-05-14 Thread hjl dot tools at gmail dot com
On Linux/ia32, I got

Executing on host: /export/build/gnu/gcc/build-i686-linux/gcc/xgcc
-B/export/build/gnu/gcc/build-i686-linux/gcc/
/net/gnu-13/export/gnu/src/gcc/gcc/gcc/testsuite/objc.dg/torture/tls/thr-init-3.m
  -O2 -flto  -fgnu-runtime
-I/net/gnu-13/export/gnu/src/gcc/gcc/gcc/testsuite/../../libobjc 
-B/export/build/gnu/gcc/build-i686-linux/i686-pc-linux-gnu/./libobjc/.libs  
-L/export/build/gnu/gcc/build-i686-linux/i686-pc-linux-gnu/./libobjc/.libs  
/net/gnu-13/export/gnu/src/gcc/gcc/gcc/testsuite/objc.dg/torture/tls/../../../objc-obj-c++-shared/Object1.m
 -lobjc -lm   -o ./thr-init-3.exe(timeout = 300)
/tmp/cc0nTyTC.lto.o:(.data+0xa0): undefined reference to
`_OBJC_METACLASS_tsObj.2114'^M
/tmp/cc0nTyTC.lto.o:(.data+0xfc): undefined reference to
`_OBJC_CLASS_tsObj.2110'^M
/tmp/cc0nTyTC.lto.o:(.data+0x104): undefined reference to
`__objc_class_name_tsObj'^M
collect2: ld returned 1 exit status^M


-- 
   Summary: objc.dg/torture/tls/thr-init-3.m failure
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: lto
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl dot tools at gmail dot com


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



[Bug target/44139] New: Exporting emutls symbols from a DLL broken on w32 targets

2010-05-14 Thread dougsemler at gmail dot com
Windows targets that use emutls add a "." character as a separator from the
_emutls_{t,v} and the true symbol name.  However, exporting these symbol names
from a DLL is problematic (i.e. a thread local data variable), because the "."
in the symbol name tells the Windows loader to treat the symbol as a forwarding
RVA to a second DLL (in this case, it will look for the symbol "varname" in
__emutls_v.dll, the symbol exported is __emutls_v.varname).  Note that this is
a runtime issue, not a compile/link issue.

This can be worked around by

#define TARGET_EMUTLS_VAR_PREFIX "__emutls_v_"
#define TARGET_EMUTLS_TMPL_PREFIX "__emutls_t_"

in the config header (e.g. config/i386/cygming.h or config/i386/mingw-w64.h,
etc).

However, this breaks backward compatibility with object files that were built
with previous versions of the compiler (e.g libold.a would have a global name
of __emutls_v.varname, while the patch would cause gcc to look for
__emutls_v_varname, which would cause linker errors).


-- 
   Summary: Exporting emutls symbols from a DLL broken on w32
targets
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dougsemler at gmail dot com
GCC target triplet: i686-pc-mingw32 x86_64-*-mingw32 i686-pc-cygwin


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



[Bug c++/44138] Cannot call template method from derived template class

2010-05-14 Thread paolo dot carlini at oracle dot com


--- Comment #1 from paolo dot carlini at oracle dot com  2010-05-14 14:22 
---
You want: this->template test();


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


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



[Bug c++/44138] New: Cannot call template method from derived template class

2010-05-14 Thread klenze at mpp dot mpg dot de
If a template class whose parent is a template class tries to call a template
method using the normal this->methodname() syntax, g++ fails to parse the
source file (details below).

-- begin test case file bug.cpp --
#define BUG_HERE
class T1;

//class A declares a template method
class A
{
public:
  template 
  void test()
  {
  }
};

//class B is derived from class A
template 
class B : public A
{
public:
  void works()
  {
//class B can still call the template method from class A
this->test();
  }
};


template 
class C : public B
{
public:
  void does_not_work()
  {
#ifdef BUG_HERE
this->test();
//unlike for class B, for class C, this does not work
// with g++ (Ubuntu 4.4.3-4ubuntu5) 4.4.3
#endif

A::test();  //this seems to compile
  }
};
-- end --

$ g++ -v -save-temps -c bug.cpp 
Using built-in specs.
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.4.3-4ubuntu5'
--with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared
--enable-multiarch --enable-linker-build-id --with-system-zlib
--libexecdir=/usr/lib --without-included-gettext --enable-threads=posix
--with-gxx-include-dir=/usr/include/c++/4.4 --program-suffix=-4.4 --enable-nls
--enable-clocale=gnu --enable-libstdcxx-debug --enable-plugin --enable-objc-gc
--disable-werror --with-arch-32=i486 --with-tune=generic
--enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu
--target=x86_64-linux-gnu
Thread model: posix
gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5) 
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-c' '-shared-libgcc' '-mtune=generic'
 /usr/lib/gcc/x86_64-linux-gnu/4.4.3/cc1plus -E -quiet -v -D_GNU_SOURCE bug.cpp
-D_FORTIFY_SOURCE=2 -mtune=generic -fpch-preprocess -fstack-protector -o bug.ii
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory
"/usr/lib/gcc/x86_64-linux-gnu/4.4.3/../../../../x86_64-linux-gnu/include"
ignoring nonexistent directory "/usr/include/x86_64-linux-gnu"
#include "..." search starts here:
#include <...> search starts here:
 /usr/include/c++/4.4
 /usr/include/c++/4.4/x86_64-linux-gnu
 /usr/include/c++/4.4/backward
 /usr/local/include
 /usr/lib/gcc/x86_64-linux-gnu/4.4.3/include
 /usr/lib/gcc/x86_64-linux-gnu/4.4.3/include-fixed
 /usr/include
End of search list.
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-c' '-shared-libgcc' '-mtune=generic'
 /usr/lib/gcc/x86_64-linux-gnu/4.4.3/cc1plus -fpreprocessed bug.ii -quiet
-dumpbase bug.cpp -mtune=generic -auxbase bug -version -fstack-protector -o
bug.s
GNU C++ (Ubuntu 4.4.3-4ubuntu5) version 4.4.3 (x86_64-linux-gnu)
compiled by GNU C version 4.4.3, GMP version 4.3.2, MPFR version
2.4.2-p1.
GGC heuristics: --param ggc-min-expand=98 --param ggc-min-heapsize=128001
GNU C++ (Ubuntu 4.4.3-4ubuntu5) version 4.4.3 (x86_64-linux-gnu)
compiled by GNU C version 4.4.3, GMP version 4.3.2, MPFR version
2.4.2-p1.
GGC heuristics: --param ggc-min-expand=98 --param ggc-min-heapsize=128001
Compiler executable checksum: 88858f45841827736473e527a4e9ab10
bug.cpp: In member function ‘void C::does_not_work()’:
bug.cpp:34: error: expected primary-expression before ‘>’ token
bug.cpp:34: error: expected primary-expression before ‘)’ token

While there are workarounds for this bug, it is certainly unexpected behavior.
Note that this bug does not occur for class B or for cases where class C is not
a template class.


-- 
   Summary: Cannot call template method from derived template class
   Product: gcc
   Version: 4.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: klenze at mpp dot mpg dot de
 GCC build triplet: x86_64-linux-gnu
  GCC host triplet: x86_64-linux-gnu
GCC target triplet: x86_64-linux-gnu


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



[Bug c++/43915] Compiler flags error: error: invalid initialization of reference of type 'boost::thread&&' from expression of type 'boost::thread'

2010-05-14 Thread mlrus at mac dot com


--- Comment #11 from mlrus at mac dot com  2010-05-14 13:25 ---
The following shows how to patch, compile and use boost 1.43.0 with g++
-std=c++0x.  At issue are the rvalue references and typecasts in the boost
threading libraries.  Simply tell Boost not to use its rvalue reference code
when it gets compiled, even with option std=c++0x is set.  Here's how:


1. Modify operatingSystem.jam, to compile with the -std=c+0x option.  Also,
remove the -no-cpp-precomp option
if it is not supported by your compiler.  For OS X  I
changed tools/build/v2/tools/darwin.jam at line 483 like this
# Misc options.
#flags darwin.compile OPTIONS : -no-cpp-precomp -gdwarf-2 ;
flags darwin.compile OPTIONS : -std=c++0x -gdwarf-2 ;


2. Modify gcc.hpp to disable the conditional compilation of rvalue references
(temporarily, until that part of the code works with g++)
diff gcc.hpp.orig gcc.hpp
124c124,125
# define BOOST_HAS_RVALUE_REFS
// # define BOOST_HAS_RVALUE_REFS
# define BOOST_NO_RVALUE_REFERENCES

In this manner you can compile and use Boost 1.43 fine gcc 4.5 or earlier, and
still build your software to use the c++0x features supported by the gnu
copmiler option -std=c++0x. 


-- 


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



[Bug middle-end/44134] Unneeded +0.0 for c = 0.0 ; c = c+ a*b

2010-05-14 Thread pinskia at gmail dot com


--- Comment #2 from pinskia at gmail dot com  2010-05-14 13:10 ---
Subject: Re:   New: Unneeded +0.0 for c = 0.0 ; c = c+ a*b



Sent from my iPhone

On May 14, 2010, at 2:18 AM, "tkoenig at gcc dot gnu dot org"
 wrote:

> This code leads to the adding of 0.0, which is a nop.  Any
> signalling should have been done previously.

It is not signalling that matters here but signed zero. 0.0 + -0.0 ==  
0.0. So without the 0.0 +, you can get a negative zero.


>
> i...@linux-fd1f:/tmp> cat mult.f90
> subroutine foo(a,b,c)
>  real, intent(in) :: a,b
>  real, intent(out) :: c
>  c = 0.0
>  c = c + a*b
> end subroutine foo
> i...@linux-fd1f:/tmp> gfortran -O3 -fdump-tree-optimized -S mult.f90
> i...@linux-fd1f:/tmp> cat mult.f90.142t.optimized
>
> ;; Function foo (foo_)
>
> foo (real(kind=4) & restrict a, real(kind=4) & restrict b, real 
> (kind=4) &
> restrict c)
> {
>  real(kind=4) D.1542;
>  real(kind=4) D.1541;
>  real(kind=4) D.1540;
>  real(kind=4) D.1539;
>
> :
>  D.1539_4 = *a_3(D);
>  D.1540_6 = *b_5(D);
>  D.1541_7 = D.1539_4 * D.1540_6;
>  D.1542_8 = D.1541_7 + 0.0;
>  *c_1(D) = D.1542_8;
>  return;
>
> }
>
> i...@linux-fd1f:/tmp> cat mult.s
>.file   "mult.f90"
>.text
>.p2align 4,,15
> .globl foo_
>.type   foo_, @function
> foo_:
> .LFB0:
>movss   (%rdi), %xmm0
>mulss   (%rsi), %xmm0
>addss   .LC0(%rip), %xmm0
>movss   %xmm0, (%rdx)
>ret
> .LFE0:
>.size   foo_, .-foo_
>.section.rodata.cst4,"aM",@progbits,4
>.align 4
> .LC0:
>.long   0
>.section.eh_frame,"a",@progbits
> .Lframe1:
>.long   .LECIE1-.LSCIE1
> .LSCIE1:
>.long   0
>.byte   0x1
>.string "zR"
>.uleb128 0x1
>.sleb128 -8
>.byte   0x10
>.uleb128 0x1
>.byte   0x3
>.byte   0xc
>.uleb128 0x7
>.uleb128 0x8
>.byte   0x90
>.uleb128 0x1
>.align 8
> .LECIE1:
> .LSFDE1:
>.long   .LEFDE1-.LASFDE1
> .LASFDE1:
>.long   .LASFDE1-.Lframe1
>.long   .LFB0
>.long   .LFE0-.LFB0
>.uleb128 0
>.align 8
> .LEFDE1:
>.ident  "GCC: (GNU) 4.6.0 20100513 (experimental)"
>.section.note.GNU-stack,"",@progbits
>
>
> -- 
>   Summary: Unneeded +0.0 for c = 0.0 ; c = c+ a*b
>   Product: gcc
>   Version: 4.6.0
>Status: UNCONFIRMED
>  Keywords: missed-optimization
>  Severity: enhancement
>  Priority: P3
> Component: middle-end
>AssignedTo: unassigned at gcc dot gnu dot org
>ReportedBy: tkoenig at gcc dot gnu dot org
>
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44134
>


-- 


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



Re: [Bug middle-end/44134] New: Unneeded +0.0 for c = 0.0 ; c = c+ a*b

2010-05-14 Thread Andrew Pinski



Sent from my iPhone

On May 14, 2010, at 2:18 AM, "tkoenig at gcc dot gnu dot org" > wrote:



This code leads to the adding of 0.0, which is a nop.  Any
signalling should have been done previously.


It is not signalling that matters here but signed zero. 0.0 + -0.0 ==  
0.0. So without the 0.0 +, you can get a negative zero.





i...@linux-fd1f:/tmp> cat mult.f90
subroutine foo(a,b,c)
 real, intent(in) :: a,b
 real, intent(out) :: c
 c = 0.0
 c = c + a*b
end subroutine foo
i...@linux-fd1f:/tmp> gfortran -O3 -fdump-tree-optimized -S mult.f90
i...@linux-fd1f:/tmp> cat mult.f90.142t.optimized

;; Function foo (foo_)

foo (real(kind=4) & restrict a, real(kind=4) & restrict b, real 
(kind=4) &

restrict c)
{
 real(kind=4) D.1542;
 real(kind=4) D.1541;
 real(kind=4) D.1540;
 real(kind=4) D.1539;

:
 D.1539_4 = *a_3(D);
 D.1540_6 = *b_5(D);
 D.1541_7 = D.1539_4 * D.1540_6;
 D.1542_8 = D.1541_7 + 0.0;
 *c_1(D) = D.1542_8;
 return;

}

i...@linux-fd1f:/tmp> cat mult.s
   .file   "mult.f90"
   .text
   .p2align 4,,15
.globl foo_
   .type   foo_, @function
foo_:
.LFB0:
   movss   (%rdi), %xmm0
   mulss   (%rsi), %xmm0
   addss   .LC0(%rip), %xmm0
   movss   %xmm0, (%rdx)
   ret
.LFE0:
   .size   foo_, .-foo_
   .section.rodata.cst4,"aM",@progbits,4
   .align 4
.LC0:
   .long   0
   .section.eh_frame,"a",@progbits
.Lframe1:
   .long   .LECIE1-.LSCIE1
.LSCIE1:
   .long   0
   .byte   0x1
   .string "zR"
   .uleb128 0x1
   .sleb128 -8
   .byte   0x10
   .uleb128 0x1
   .byte   0x3
   .byte   0xc
   .uleb128 0x7
   .uleb128 0x8
   .byte   0x90
   .uleb128 0x1
   .align 8
.LECIE1:
.LSFDE1:
   .long   .LEFDE1-.LASFDE1
.LASFDE1:
   .long   .LASFDE1-.Lframe1
   .long   .LFB0
   .long   .LFE0-.LFB0
   .uleb128 0
   .align 8
.LEFDE1:
   .ident  "GCC: (GNU) 4.6.0 20100513 (experimental)"
   .section.note.GNU-stack,"",@progbits


--
  Summary: Unneeded +0.0 for c = 0.0 ; c = c+ a*b
  Product: gcc
  Version: 4.6.0
   Status: UNCONFIRMED
 Keywords: missed-optimization
 Severity: enhancement
 Priority: P3
Component: middle-end
   AssignedTo: unassigned at gcc dot gnu dot org
   ReportedBy: tkoenig at gcc dot gnu dot org


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



[Bug tree-optimization/44137] New: [4.6 Regression]: objc.dg/torture/tls/thr-init-2.m and thr-init.m

2010-05-14 Thread hp at gcc dot gnu dot org
With revision 159369 these tests passed.
>From revision 159376 and on, including at least 159388, these tests have failed
as follows:

Running /tmp/hpautotest-gcc1/gcc/gcc/testsuite/objc.dg/torture/tls/tls.exp ...
FAIL: objc.dg/torture/tls/thr-init-2.m  -O1  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-2.m  -O1  compilation failed to produce
executable
FAIL: objc.dg/torture/tls/thr-init-2.m  -O2  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-2.m  -O2  compilation failed to produce
executable
FAIL: objc.dg/torture/tls/thr-init-2.m  -O3 -fomit-frame-pointer  (test for
excess errors)
WARNING: objc.dg/torture/tls/thr-init-2.m  -O3 -fomit-frame-pointer 
compilation failed to produce executable
FAIL: objc.dg/torture/tls/thr-init-2.m  -O3 -g  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-2.m  -O3 -g  compilation failed to
produce executable
FAIL: objc.dg/torture/tls/thr-init-2.m  -Os  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-2.m  -Os  compilation failed to produce
executable
FAIL: objc.dg/torture/tls/thr-init-2.m  -O2 -flto  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-2.m  -O2 -flto  compilation failed to
produce executable
FAIL: objc.dg/torture/tls/thr-init-2.m  -O2 -fwhopr  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-2.m  -O2 -fwhopr  compilation failed to
produce executable
FAIL: objc.dg/torture/tls/thr-init-3.m  -O1  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-3.m  -O1  compilation failed to produce
executable
FAIL: objc.dg/torture/tls/thr-init-3.m  -O2  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-3.m  -O2  compilation failed to produce
executable
FAIL: objc.dg/torture/tls/thr-init-3.m  -O3 -fomit-frame-pointer  (test for
excess errors)
WARNING: objc.dg/torture/tls/thr-init-3.m  -O3 -fomit-frame-pointer 
compilation failed to produce executable
FAIL: objc.dg/torture/tls/thr-init-3.m  -O3 -g  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-3.m  -O3 -g  compilation failed to
produce executable
FAIL: objc.dg/torture/tls/thr-init-3.m  -Os  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-3.m  -Os  compilation failed to produce
executable
FAIL: objc.dg/torture/tls/thr-init-3.m  -O2 -flto  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-3.m  -O2 -flto  compilation failed to
produce executable
FAIL: objc.dg/torture/tls/thr-init-3.m  -O2 -fwhopr  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init-3.m  -O2 -fwhopr  compilation failed to
produce executable
FAIL: objc.dg/torture/tls/thr-init.m  -O1  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init.m  -O1  compilation failed to produce
executable
FAIL: objc.dg/torture/tls/thr-init.m  -O2  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init.m  -O2  compilation failed to produce
executable
FAIL: objc.dg/torture/tls/thr-init.m  -O3 -fomit-frame-pointer  (test for
excess errors)
WARNING: objc.dg/torture/tls/thr-init.m  -O3 -fomit-frame-pointer  compilation
failed to produce executable
FAIL: objc.dg/torture/tls/thr-init.m  -O3 -g  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init.m  -O3 -g  compilation failed to produce
executable
FAIL: objc.dg/torture/tls/thr-init.m  -Os  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init.m  -Os  compilation failed to produce
executable
FAIL: objc.dg/torture/tls/thr-init.m  -O2 -flto  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init.m  -O2 -flto  compilation failed to
produce executable
FAIL: objc.dg/torture/tls/thr-init.m  -O2 -fwhopr  (test for excess errors)
WARNING: objc.dg/torture/tls/thr-init.m  -O2 -fwhopr  compilation failed to
produce executable

The message in objc.log for r159388 is:

Executing on host: /tmp/hpautotest-gcc1/cris-elf/gccobj/gcc/xgcc
-B/tmp/hpautotest-gcc1/cris-elf/gccobj/gcc/
/tmp/hpautotest-gcc1/gcc/gcc/testsuite/objc.dg/torture/tls/thr-init-2.m   -O1 
-fgnu-runtime -I/tmp/hpautotest-gcc1/gcc/gcc/testsuite/../../libobjc 
-B/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./libobjc/.libs  
-L/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./libobjc/.libs-isystem
/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./newlib/targ-include -isystem
/tmp/hpautotest-gcc1/gcc/newlib/libc/include
-B/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./libgloss/cris/
-L/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./libgloss/cris
-L/tmp/hpautotest-gcc1/gcc/libgloss/cris 
-B/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./newlib/
-L/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./newlib -sim3  -lobjc -lm   -o
./thr-init-2.exe(timeout = 300)
/tmp/ccyWCWTq.o: In function `_fa':

thr-init-2.m:(.text+0x12): undefined reference to `___emutls_v.as.1281'

/tmp/ccyWCWTq.o: In function `_fb':

thr-init-2.m:(.text+0x44): undefined reference to `___emutls_v.bs.1285'

collect2: ld returned 1 exit status

compiler exited with status 1
output is:
/tmp/ccyWCWTq.o: In function `_fa':

th

[Bug c++/44127] [4.3/4.4/4.5/4.6 Regression] G++ emits unnecessary EH code

2010-05-14 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug tree-optimization/43949] [4.3/4.4/4.5 Regression] bogus warning: array subscript is above array bounds

2010-05-14 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



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

2010-05-14 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug debug/43190] [4.3/4.4 Regression] Used pointer typedefs eliminated from debug info

2010-05-14 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug middle-end/42255] [4.3 Regression] broken generated code when using -fprofile-arcs and -O2

2010-05-14 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug bootstrap/38591] [4.3 regression] erratic comparison failures on very fast machines

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #12 from rguenth at gcc dot gnu dot org  2010-05-14 12:51 
---
Subject: Bug 38591

Author: rguenth
Date: Fri May 14 12:51:31 2010
New Revision: 159392

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159392
Log:
2010-05-15  Richard Guenther  

PR bootstrap/38591
* Makefile.in (graph.o): Add missing $(CONFIG_H) dependency.
(sparseset.o): Likewise.

Modified:
branches/gcc-4_3-branch/gcc/ChangeLog
branches/gcc-4_3-branch/gcc/Makefile.in


-- 


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



[Bug bootstrap/38591] [4.3 regression] erratic comparison failures on very fast machines

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #11 from rguenth at gcc dot gnu dot org  2010-05-14 12:51 
---
Fixed (hopefully).


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/44124] valgrind reports invalid read while compiling compile/pr34091.c

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2010-05-14 12:40 ---
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.5.1


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



[Bug tree-optimization/44124] valgrind reports invalid read while compiling compile/pr34091.c

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2010-05-14 12:40 ---
Subject: Bug 44124

Author: rguenth
Date: Fri May 14 12:40:18 2010
New Revision: 159391

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159391
Log:
2010-05-14  Richard Guenther  

PR tree-optimization/44124
* tree-ssa-sccvn.c (vn_nary_may_trap): Fix invalid memory access.

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


-- 


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



[Bug tree-optimization/44124] valgrind reports invalid read while compiling compile/pr34091.c

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2010-05-14 12:36 ---
Subject: Bug 44124

Author: rguenth
Date: Fri May 14 12:36:28 2010
New Revision: 159390

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159390
Log:
2010-05-14  Richard Guenther  

PR tree-optimization/44124
* tree-ssa-sccvn.c (vn_nary_may_trap): Fix invalid memory access.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/tree-ssa-sccvn.c


-- 


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



[Bug target/44129] Building linux kernel with gcc-4.5.0 and CONFIG_CC_OPTIMIZE_FOR_SIZE segfaults

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2010-05-14 12:26 ---
Waiting for a testcase.  And for the reporter to try the tip of the 4.5 branch.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


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



[Bug tree-optimization/44124] valgrind reports invalid read while compiling compile/pr34091.c

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2010-05-14 12:33 ---
Confirmed and mine.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-05-14 12:33:18
   date||


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



[Bug c++/44127] [4.3/4.4/4.5/4.6 Regression] G++ emits unnecessary EH code

2010-05-14 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug target/44132] [4.6 Regression] emutls is broken under a range of circumstances.

2010-05-14 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.6.0


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



[Bug middle-end/44134] Unneeded +0.0 for c = 0.0 ; c = c+ a*b

2010-05-14 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2010-05-14 12:19 ---
But -0.0 + 0.0 is 0.0, so the transformation is only valid for
-fno-signed-zeros.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


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



[Bug debug/44136] [4.5/4.6 Regression] ICE in expand_debug_expr with -mno-sse

2010-05-14 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.5.1


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



[Bug c++/44092] Undefined Symbol: std::basic_string

2010-05-14 Thread redi at gcc dot gnu dot org


--- Comment #6 from redi at gcc dot gnu dot org  2010-05-14 12:05 ---
You might want to read http://gcc.gnu.org/install/ starting with
"Prerequisites"


-- 


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



[Bug fortran/44131] [OOP] Using polymorphism in modules unware of derived types fails at run-time

2010-05-14 Thread janus at gcc dot gnu dot org


--- Comment #2 from janus at gcc dot gnu dot org  2010-05-14 12:04 ---
(In reply to comment #1)
> Copying your code into uh.f90 gives
> 
> laptop:kargl[204] gfc4x -o z uh.f90 
> laptop:kargl[205] ./z
>  Derived DoIt
> 
> with i686-*-freebsd and x86_64-*-freebsd on trunk.

Yes, the failure is only seen in release 4.5 (where the OOP support is highly
experimental). The problem is fixed on 4.6 trunk.


-- 

janus at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED
Summary|Using polymorfism in modules|[OOP] Using polymorphism in
   |unware of derived types |modules unware of derived
   |fails at run-time   |types fails at run-time


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



[Bug c++/44092] Undefined Symbol: std::basic_string

2010-05-14 Thread stefanwin at gmx dot net


--- Comment #5 from stefanwin at gmx dot net  2010-05-14 11:55 ---
If I want to install the gcc-4.4.0, I get the error "libgmp.a" and libmpfr.a
not found.
It seems I have to rebuild something.


-- 


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



[Bug fortran/42769] [OOP] ICE in resolve_typebound_procedure

2010-05-14 Thread janus at gcc dot gnu dot org


--- Comment #23 from janus at gcc dot gnu dot org  2010-05-14 11:53 ---
(In reply to comment #22)
> Janus, is there something left to do here?

Yes, sure. The ICE has not been fixed yet. With 4.6 trunk (r159368) I still get
the same ICE on comment #8/#14:

internal compiler error: in resolve_typebound_procedure, at
fortran/resolve.c:10304


-- 

janus at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|ICE  in |[OOP] ICE  in
   |resolve_typebound_procedure |resolve_typebound_procedure
   Target Milestone|4.5.1   |4.6.0


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



[Bug libstdc++/43259] ext/profile/all.cc fails on Solaris

2010-05-14 Thread paolo dot carlini at oracle dot com


--- Comment #28 from paolo dot carlini at oracle dot com  2010-05-14 11:41 
---
Fixed for 4.5.1.


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.5.1


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



[Bug libstdc++/43259] ext/profile/all.cc fails on Solaris

2010-05-14 Thread paolo at gcc dot gnu dot org


--- Comment #27 from paolo at gcc dot gnu dot org  2010-05-14 11:40 ---
Subject: Bug 43259

Author: paolo
Date: Fri May 14 11:40:05 2010
New Revision: 159389

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159389
Log:
2010-05-14  Silvius Rus  

PR libstdc++/43259
* include/profile/impl/profiler.h
(_GLIBCXX_PROFILE_DEFINE_UNINIT_DATA): Add.
* include/profile/impl/profiler_trace.h
(__mutex_t, __lock, __unlock): Remove.
(__lock_object_table, __lock_stack_table): Remove. Replace uses with
calls to __gnu_cxx::__mutex::lock.
(__unlock_object_table, __unlock_stack_table): Remove. Replace uses
with calls to __gnu_cxx::__mutex::unlock.

Modified:
branches/gcc-4_5-branch/libstdc++-v3/ChangeLog
branches/gcc-4_5-branch/libstdc++-v3/include/profile/impl/profiler.h
branches/gcc-4_5-branch/libstdc++-v3/include/profile/impl/profiler_trace.h


-- 


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



[Bug debug/44136] New: [4.5/4.6 Regression] ICE in expand_debug_expr with -mno-sse

2010-05-14 Thread jakub at gcc dot gnu dot org
/* { dg-do compile } */
/* { dg-options "-w -O2 -g" } */
/* { dg-options "-w -O2 -g -mno-sse" { target { { i?86-*-* x86_64-*-* && ilp32
} } } */

#define vector __attribute((vector_size(16)))
vector float a;

float
foo (float b)
{
  vector float c = {0, 0, 0, 0 };
  vector float d = {0, 0, 0, 0 };
  d += c;
  return ((float *)&c)[2];
}

float
bar (vector float a, int b, vector float c)
{
  vector float e = c * a;
  a = (vector float) {0, 0, 0, 0 };
  c = (vector float) {0, 0, 0, 0 };
  float d = ((float *)&a)[0];
  float f = ((float *)&c)[0];
  return d * f;
}

(from vector-2.c and vector-3.c testcases) ICEs in expand_debug_expr on i?86.
op0 has BLKmode, which the code asserts it does not.


-- 
   Summary: [4.5/4.6 Regression] ICE in expand_debug_expr with -mno-
sse
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P3
 Component: debug
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jakub at gcc dot gnu dot org


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



[Bug c++/44092] Undefined Symbol: std::basic_string

2010-05-14 Thread paolo dot carlini at oracle dot com


--- Comment #4 from paolo dot carlini at oracle dot com  2010-05-14 10:27 
---
Yes. Note that gcc-4.0.x, 4.1.x, and 4.2.x are *not maintained anymore* and
bugs affecting only those release series are simply closed.

Thus, before anything else, try a current release, preferably gcc-4.4.x.


-- 


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



[Bug c++/44092] Undefined Symbol: std::basic_string

2010-05-14 Thread stefanwin at gmx dot net


--- Comment #3 from stefanwin at gmx dot net  2010-05-14 10:04 ---
My sample program:

// g++ 4.0.0-1
// compile: g++ -c -Wall progname.c -> ist ok
// link (AIX linker "ld"): g++ -o progname progname.o 
// ERROR: Undefined symbol: .std::basic_string, std::allocator >::basic_string()
// ERROR: Undefined symbol: .std::basic_string, std::allocator >::~basic_string()
// 

#include 
#include 

using namespace std;

// main 
// 
int main (int argc,char **argv)
{
string test;

return(0);
}


-- 


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



  1   2   >