Re: [Bug c++/45462] Bad optimization in -O3 sometimes

2010-09-01 Thread Andrew Pinski
I am not talking about a library solution at all. I am talking about a  
solution inside the compiler. Gcc will optimize memcpy; how much for  
MIPS is a good question. Try it out and see. Oh if you are using  
scei's gcc you really should be reporting issues to them.


On Aug 31, 2010, at 10:03 PM, yotambarnoy at gmail dot com gcc-bugzi...@gcc.gnu.org 
 wrote:





--- Comment #8 from yotambarnoy at gmail dot com  2010-09-01  
05:03 ---
Unfortunately, a lib based solutions are difficult for me to  
implement. The
reason is that the current PSP SDK uses newlib. I can probably  
change my
personal toolchain with some work, but then it's a custom  
modification that
needs to be replicated to every other ScummVM dev as well as our  
buildbot. Not

impossible, but not work I'd like to get in to right now.

In any case, it sounds like what you're saying is that memcpy has asm
instructions in the right place to use lwl and lwr. I can also do  
that in my

implementation.

My request was more general, as in gcc needs some kind of custom  
keyword to
tell it to allow unaligned pointers and to generate appropriate  
unaligned code,
so we don't have to trick the compiler into doing it in a way that  
ruins

optimization. Something like __unaligned__ uint32 *ptr32 = bytePtr;


--


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



[Bug c++/45462] Bad optimization in -O3 sometimes

2010-09-01 Thread pinskia at gmail dot com


--- Comment #9 from pinskia at gmail dot com  2010-09-01 06:17 ---
Subject: Re:  Bad optimization in -O3 sometimes

I am not talking about a library solution at all. I am talking about a  
solution inside the compiler. Gcc will optimize memcpy; how much for  
MIPS is a good question. Try it out and see. Oh if you are using  
scei's gcc you really should be reporting issues to them.

On Aug 31, 2010, at 10:03 PM, yotambarnoy at gmail dot com
gcc-bugzi...@gcc.gnu.org 
  wrote:



 --- Comment #8 from yotambarnoy at gmail dot com  2010-09-01  
 05:03 ---
 Unfortunately, a lib based solutions are difficult for me to  
 implement. The
 reason is that the current PSP SDK uses newlib. I can probably  
 change my
 personal toolchain with some work, but then it's a custom  
 modification that
 needs to be replicated to every other ScummVM dev as well as our  
 buildbot. Not
 impossible, but not work I'd like to get in to right now.

 In any case, it sounds like what you're saying is that memcpy has asm
 instructions in the right place to use lwl and lwr. I can also do  
 that in my
 implementation.

 My request was more general, as in gcc needs some kind of custom  
 keyword to
 tell it to allow unaligned pointers and to generate appropriate  
 unaligned code,
 so we don't have to trick the compiler into doing it in a way that  
 ruins
 optimization. Something like __unaligned__ uint32 *ptr32 = bytePtr;


 -- 


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



-- 


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



[Bug fortran/45474] New: Missing definable check actuals to INTENT(INOUT) dummies of intrinsics

2010-09-01 Thread burnus at gcc dot gnu dot org
No error is printed for:

call execute_command_line(date, .true.,(1),(1),('aa'))
end

although the third to fifth argument are declared as INTENT(INOUT) in
intrinsic.c and thus they have to be definable. The example is for
execute_command_line, but I think it applies to all intrinsics.


-- 
   Summary: Missing definable check actuals to INTENT(INOUT) dummies
of intrinsics
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Keywords: accepts-invalid
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: burnus at gcc dot gnu dot org


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



[Bug fortran/45474] Missing definable check actuals to INTENT(INOUT) dummies of intrinsics

2010-09-01 Thread fxcoudert at gcc dot gnu dot org


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-09-01 08:34:23
   date||


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



[Bug target/44670] arm port fails to build with --enable-build-with-cxx

2010-09-01 Thread ramana at gcc dot gnu dot org


--- Comment #1 from ramana at gcc dot gnu dot org  2010-09-01 08:49 ---
This is partially subsumed by the other bug at PR45444

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


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


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



[Bug bootstrap/45444] [4.6 regression] ARM bootstrap failure: uninitialized const member in 'neon_builtin_datum' is invalid in C++ [-Werror=c++-compat]

2010-09-01 Thread ramana at gcc dot gnu dot org


--- Comment #3 from ramana at gcc dot gnu dot org  2010-09-01 08:49 ---
*** Bug 44670 has been marked as a duplicate of this bug. ***


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||amylaar at gcc dot gnu dot
   ||org


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



[Bug tree-optimization/45470] [4.6 Regression] ICE: verify_flow_info failed: BB 2 can not throw but has an EH edge with -ftree-vectorize -fnon-call-exceptions

2010-09-01 Thread irar at il dot ibm dot com


--- Comment #3 from irar at il dot ibm dot com  2010-09-01 09:06 ---
r163260 only made this BB vectorizable.

I checked lookup_stmt_eh_lp for the last stmt of the BB and EDGE_EH flags
before and after vectorization (basic block SLP), and in both cases
lookup_stmt_eh_lp returns 0 and there is an EH edge from the basic block.

I also tried to add cleanup_eh pass after SLP. If is somewhere before
pass_tree_loop_done, there is no ICE:

Index: passes.c
===
--- passes.c(revision 163538)
+++ passes.c(working copy)
@@ -925,6 +925,7 @@ init_optimization_passes (void)
  NEXT_PASS (pass_parallelize_loops);
  NEXT_PASS (pass_loop_prefetch);
  NEXT_PASS (pass_iv_optimize);
+  NEXT_PASS (pass_cleanup_eh);
  NEXT_PASS (pass_tree_loop_done);
}
   NEXT_PASS (pass_cse_reciprocals);


If cleanup_eh is scheduled after tree_loop_done, there is ICE:

Index: passes.c
===
--- passes.c(revision 163538)
+++ passes.c(working copy)
@@ -926,6 +926,7 @@ init_optimization_passes (void)
  NEXT_PASS (pass_loop_prefetch);
  NEXT_PASS (pass_iv_optimize);
  NEXT_PASS (pass_tree_loop_done);
+  NEXT_PASS (pass_cleanup_eh);
}
   NEXT_PASS (pass_cse_reciprocals);
   NEXT_PASS (pass_reassoc);


-- 

irar at il dot ibm dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-09-01 09:06:19
   date||


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



[Bug tree-optimization/42172] inefficient bit fields assignments

2010-09-01 Thread ramana at gcc dot gnu dot org


--- Comment #6 from ramana at gcc dot gnu dot org  2010-09-01 09:07 ---
Leaving this open as per comment #4


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-09-01 09:07:00
   date||


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



[Bug tree-optimization/42172] inefficient bit fields assignments

2010-09-01 Thread ramana at gcc dot gnu dot org


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.6.0


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



[Bug lto/45475] New: target use in libcpp breaks LTO bootstrap

2010-09-01 Thread andi-gcc at firstfloor dot org
I know I'm at least partly to blame for this :)

With a LTO bootstrap I get now

/home/ak/gcc/git/gcc/libcpp/lex.c:2838:1: sorry, unimplemented: gimple bytecode
streams do not support the target attribute

because of the new __target__ use in libcpp/lex.c


-- 
   Summary: target use in libcpp breaks LTO bootstrap
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: lto
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: andi-gcc at firstfloor dot org
  GCC host triplet: x86_64-linux


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



[Bug target/45476] New: libgcc should contain TFmode functions

2010-09-01 Thread fxcoudert at gcc dot gnu dot org
As the Fortran front-end now uses soft-float quad precision floating-point
types (__float128 and its complex counterpart), it would be nice for libgcc to
contain TFmode functions on Intel/darwin.

This is present on *86*-{linux,mingw,solaris} and ia64-{linux,hpux}. It was
recently introduced in *86*-freebsd, see patch at
http://gcc.gnu.org/ml/gcc-patches/2010-08/msg02139.html


-- 
   Summary: libgcc should contain TFmode functions
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: enhancement
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: fxcoudert at gcc dot gnu dot org
GCC target triplet: *86*-apple-darwin10


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



[Bug bootstrap/45444] [4.6 regression] ARM bootstrap failure: uninitialized const member in 'neon_builtin_datum' is invalid in C++ [-Werror=c++-compat]

2010-09-01 Thread amylaar at gcc dot gnu dot org


--- Comment #4 from amylaar at gcc dot gnu dot org  2010-09-01 09:38 ---
The 'uninitialized const members' warning also affects cross builds when
using --enable-build-with-cxx, see PR44670


-- 

amylaar at gcc dot gnu dot org changed:

   What|Removed |Added

OtherBugsDependingO||44433
  nThis||
   GCC host triplet|armv5tel-unknown-linux- |armv5tel-unknown-linux-
   |gnueabi |gnueabi, i686-pc-linux-gnu
 GCC target triplet||*-arm-*


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



[Bug lto/45475] target use in libcpp breaks LTO bootstrap

2010-09-01 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2010-09-01 09:42 ---
The problem is of course that the target and optimization attribute data
format is auto-generated.  A solution would be to simply byte-copy
TREE_TARGET_OPTION with pre-pending its size and check the size on LTO read-in.
Of course that will introduce another host-dependency on the LTO byte format
(so eventually store a magic 0x11223344 integer value as well).


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-09-01 09:42:09
   date||


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



[Bug tree-optimization/45470] [4.6 Regression] ICE: verify_flow_info failed: BB 2 can not throw but has an EH edge with -ftree-vectorize -fnon-call-exceptions

2010-09-01 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2010-09-01 09:43 ---
I'll have a look.


-- 

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=45470



[Bug c++/45462] Bad optimization in -O3 sometimes

2010-09-01 Thread rguenth at gcc dot gnu dot org


--- Comment #10 from rguenth at gcc dot gnu dot org  2010-09-01 09:45 
---
(In reply to comment #8)
 Unfortunately, a lib based solutions are difficult for me to implement. The
 reason is that the current PSP SDK uses newlib. I can probably change my
 personal toolchain with some work, but then it's a custom modification that
 needs to be replicated to every other ScummVM dev as well as our buildbot. Not
 impossible, but not work I'd like to get in to right now. 
 
 In any case, it sounds like what you're saying is that memcpy has asm
 instructions in the right place to use lwl and lwr. I can also do that in my
 implementation.
 
 My request was more general, as in gcc needs some kind of custom keyword to
 tell it to allow unaligned pointers and to generate appropriate unaligned 
 code,
 so we don't have to trick the compiler into doing it in a way that ruins
 optimization. Something like __unaligned__ uint32 *ptr32 = bytePtr; 
 

typedef my_unaligned_aliasing_uint32 uint32
__attribute__((aligned(1),may_alias));

inline __attribute__((__always_inline__)) uint32 READ_UINT32(const void *ptr)
{
  return *(const my_unaligned_aliasing_uint32 *)ptr;
}

should do it and does not require -fno-strict-aliasing.


-- 


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



[Bug rtl-optimization/45472] [4.5/4.6 Regression] ICE: in move_op_ascend, at sel-sched.c:6124 with -fselective-scheduling2

2010-09-01 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.5.2


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



[Bug target/45476] libgcc should contain TFmode functions

2010-09-01 Thread ubizjak at gmail dot com


--- Comment #1 from ubizjak at gmail dot com  2010-09-01 10:12 ---
Intel/darwin already supports __float128.


-- 

ubizjak at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


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



[Bug lto/45477] New: target use in libcpp breaks LTO bootstrap

2010-09-01 Thread andi-gcc at firstfloor dot org
I know I'm at least partly to blame for this :)

With a LTO bootstrap I get now

/home/ak/gcc/git/gcc/libcpp/lex.c:2838:1: sorry, unimplemented: gimple bytecode
streams do not support the target attribute

because of the new __target__ use in libcpp/lex.c


-- 
   Summary: target use in libcpp breaks LTO bootstrap
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: lto
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: andi-gcc at firstfloor dot org
  GCC host triplet: x86_64-linux


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



[Bug lto/45477] target use in libcpp breaks LTO bootstrap

2010-09-01 Thread andi-gcc at firstfloor dot org


--- Comment #1 from andi-gcc at firstfloor dot org  2010-09-01 10:14 ---
Working on a fix.


-- 


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



[Bug lto/45475] target use in libcpp breaks LTO bootstrap

2010-09-01 Thread andi-gcc at firstfloor dot org


--- Comment #2 from andi-gcc at firstfloor dot org  2010-09-01 10:15 ---
Yes, I have most of a patch already, but will add the check value.


-- 


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



[Bug tree-optimization/45470] [4.6 Regression] ICE: verify_flow_info failed: BB 2 can not throw but has an EH edge with -ftree-vectorize -fnon-call-exceptions

2010-09-01 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2010-09-01 10:19 ---
I see before SLP:

bb 2:
  MEM[(struct A *)this_1(D)].a = 0;
  MEM[(struct A *)this_1(D)].b = 0;
  MEM[(struct A *)this_1(D)].c = 0;
  [LP 2] MEM[(struct A *)this_1(D) + 12B].a = 0;

and after:

bb 2:
  vect_cst_.1_16 = { 0, 0, 0, 0 };
  vect_p.5_17 = MEM[(struct A *)this_1(D)].a;
  M*vect_p.5_17{misalignment: 0} = vect_cst_.1_16;

so EH info has not been properly transfered.  Now that only
MEM[(struct A *)this_1(D) + 12B].a can throw internally but not
MEM[(struct A *)this_1(D)].c = 0; is a fact that the frontend establishes.

The following mitigates the problem by simply removing the dead EH edges.

Index: gcc/tree-vect-slp.c
===
--- gcc/tree-vect-slp.c (revision 163721)
+++ gcc/tree-vect-slp.c (working copy)
@@ -2474,6 +2474,9 @@ vect_schedule_slp (loop_vec_info loop_vi
 }
 }

+  if (bb_vinfo)
+gimple_purge_dead_eh_edges (BB_VINFO_BB (bb_vinfo));
+
   return is_store;
 }



-- 


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



[Bug target/45476] libgcc should contain TCmode functions

2010-09-01 Thread fxcoudert at gcc dot gnu dot org


--- Comment #2 from fxcoudert at gcc dot gnu dot org  2010-09-01 10:21 
---
It partially does. But TC functions are missing:

$ cat a.c
typedef _Complex float __attribute__((mode(TC))) __complex128;

__complex128 foo (__complex128 z1, __complex128 z2) {
  return z1 * z2; }

__complex128 bar (__complex128 z1, __complex128 z2) {
  return z1 / z2; }

int main (void) {
  (void) foo (0, 0);
  return 0;
}
$ ./bin/gcc a.c -W -Wall
Undefined symbols:
  ___divtc3, referenced from:
  _bar in ccqf0ZEK.o
  ___multc3, referenced from:
  _foo in ccqf0ZEK.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

$ ./bin/gcc -v  
Using built-in specs.
COLLECT_GCC=./bin/gcc
COLLECT_LTO_WRAPPER=/Users/fx/devel/gcc/irun/libexec/gcc/x86_64-apple-darwin10.4.0/4.6.0/lto-wrapper
Target: x86_64-apple-darwin10.4.0
Configured with: ../trunk/configure --prefix=/Users/fx/devel/gcc/irun
--with-gmp=/Users/fx/devel/gcc/deps --enable-languages=c,fortran --without-ppl
Thread model: posix
gcc version 4.6.0 20100901 (experimental) [trunk revision 163721] (GCC) 


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|INVALID |
Summary|libgcc should contain TFmode|libgcc should contain TCmode
   |functions   |functions


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



[Bug target/45476] libgcc should contain TCmode functions

2010-09-01 Thread ubizjak at gmail dot com


--- Comment #3 from ubizjak at gmail dot com  2010-09-01 10:30 ---
(In reply to comment #2)
 It partially does. But TC functions are missing:

Ah, I see.  Put these defines somewhere:

/* Put all *tf routines in libgcc.  */
#undef LIBGCC2_HAS_TF_MODE
#define LIBGCC2_HAS_TF_MODE 1
#define LIBGCC2_TF_CEXT q
#define TF_SIZE 113


-- 

ubizjak at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-09-01 10:30:44
   date||


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



[Bug target/45478] New: ICE: in c_builtin_function_ext_scope, at c-decl.c:2852 with -mno-sse/-march=i386

2010-09-01 Thread zsojka at seznam dot cz
Command line:
$ gcc -mno-sse testcase.c
or
$ gcc -m32 -march=i386 testcase.c
(or other target without sse support)

Compiler output:
$ gcc -mno-sse testcase.c 
testcase.c:9: internal compiler error: in c_builtin_function_ext_scope, at
c-decl.c:2852
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

Tested revisions:
r163636 - crash
4.4 r149995 - crash


-- 
   Summary: ICE: in c_builtin_function_ext_scope, at c-decl.c:2852
with -mno-sse/-march=i386
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: zsojka at seznam dot cz
GCC target triplet: x86(_64)-pc-linux-gnu


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



[Bug target/43588] ICE in copy_to_mode_reg, at explow.c:635

2010-09-01 Thread ramana at gcc dot gnu dot org


--- Comment #1 from ramana at gcc dot gnu dot org  2010-09-01 10:31 ---
I'm not sure how well supported the old Linux target is with respect to the
Neon builtins. It never received much testing and probably needs work since
this target is in maintenance mode only.


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Priority|P3  |P4
   Last reconfirmed|-00-00 00:00:00 |2010-09-01 10:31:08
   date||


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



[Bug target/45478] ICE: in c_builtin_function_ext_scope, at c-decl.c:2852 with -mno-sse/-march=i386

2010-09-01 Thread zsojka at seznam dot cz


--- Comment #1 from zsojka at seznam dot cz  2010-09-01 10:33 ---
Created an attachment (id=21632)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21632action=view)
reduced testcase


-- 


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



[Bug rtl-optimization/44025] Multiple load 0 to register

2010-09-01 Thread ramana at gcc dot gnu dot org


--- Comment #2 from ramana at gcc dot gnu dot org  2010-09-01 10:34 ---
I'm not sure where this will be handled but I can see this with trunk today.


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

   Severity|normal  |enhancement
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Keywords||missed-optimization
   Last reconfirmed|-00-00 00:00:00 |2010-09-01 10:34:47
   date||
   Target Milestone|--- |4.6.0


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



[Bug lto/45475] target use in libcpp breaks LTO bootstrap

2010-09-01 Thread andi-gcc at firstfloor dot org


--- Comment #3 from andi-gcc at firstfloor dot org  2010-09-01 10:36 ---
*** Bug 45477 has been marked as a duplicate of this bug. ***


-- 


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



[Bug lto/45477] target use in libcpp breaks LTO bootstrap

2010-09-01 Thread andi-gcc at firstfloor dot org


--- Comment #2 from andi-gcc at firstfloor dot org  2010-09-01 10:36 ---


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


-- 

andi-gcc at firstfloor dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


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



[Bug tree-optimization/44328] switch/case optimization produces an invalid lookup table index

2010-09-01 Thread jamborm at gcc dot gnu dot org


--- Comment #27 from jamborm at gcc dot gnu dot org  2010-09-01 11:10 
---
As far as I understand it, this is fixed with
http://gcc.gnu.org/ml/gcc-cvs/2010-08/msg00577.html


-- 

jamborm at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug testsuite/42855] FAIL: gcc.dg/tree-ssa/pr42585.c scan-tree-dump-times optimized *

2010-09-01 Thread jamborm at gcc dot gnu dot org


--- Comment #9 from jamborm at gcc dot gnu dot org  2010-09-01 11:13 ---
Fixed.


-- 

jamborm at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/44328] switch/case optimization produces an invalid lookup table index

2010-09-01 Thread jamborm at gcc dot gnu dot org


--- Comment #28 from jamborm at gcc dot gnu dot org  2010-09-01 11:23 
---
Hm, no, I was too quick pruning my inbox.  The patch apparently has
not been applied to the 4.5 branch.


-- 

jamborm at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|FIXED   |


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



[Bug tree-optimization/44328] switch/case optimization produces an invalid lookup table index

2010-09-01 Thread jamborm at gcc dot gnu dot org


--- Comment #29 from jamborm at gcc dot gnu dot org  2010-09-01 11:24 
---
I'll do that, hopefully sooner rather than later.


-- 

jamborm at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |jamborm at gcc dot gnu dot
   |dot org |org
 Status|REOPENED|ASSIGNED
   Last reconfirmed|2010-07-05 13:43:01 |2010-09-01 11:24:15
   date||


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



[Bug tree-optimization/44328] switch/case optimization produces an invalid lookup table index

2010-09-01 Thread ibolton at gcc dot gnu dot org


--- Comment #30 from ibolton at gcc dot gnu dot org  2010-09-01 11:25 
---
(In reply to comment #28)
 Hm, no, I was too quick pruning my inbox.  The patch apparently has
 not been applied to the 4.5 branch.
 

It's on its way.  I've been testing in conjunction with a couple of other
backports and ran into some issues unrelated to this patch.  I'm hoping to be
ready to apply to 4.5 tomorrow.


-- 


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



[Bug tree-optimization/44328] switch/case optimization produces an invalid lookup table index

2010-09-01 Thread jamborm at gcc dot gnu dot org


--- Comment #31 from jamborm at gcc dot gnu dot org  2010-09-01 11:32 
---
(In reply to comment #30)
 (In reply to comment #28)
  Hm, no, I was too quick pruning my inbox.  The patch apparently has
  not been applied to the 4.5 branch.
  
 
 It's on its way.  I've been testing in conjunction with a couple of other
 backports and ran into some issues unrelated to this patch.  I'm hoping to be
 ready to apply to 4.5 tomorrow.
 

OK, reassigning to you then.  Please do not forget to add a hunk
adding the new dependence of tree-switch-conversion.o in Makefile.in.

Thanks.


-- 

jamborm at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|jamborm at gcc dot gnu dot  |ibolton at gcc dot gnu dot
   |org |org


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



[Bug tree-optimization/44328] switch/case optimization produces an invalid lookup table index

2010-09-01 Thread jifl-bugzilla at jifvik dot org


--- Comment #32 from jifl-bugzilla at jifvik dot org  2010-09-01 11:47 
---
I don't know if there are plans for more releases in the 4.4 series, but can it
be applied to the 4.4 branch too?


-- 


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



[Bug tree-optimization/44328] switch/case optimization produces an invalid lookup table index

2010-09-01 Thread jakub at gcc dot gnu dot org


--- Comment #33 from jakub at gcc dot gnu dot org  2010-09-01 11:50 ---
Yes, 4.4.5 and maybe 4.4.6 is planned.


-- 


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



[Bug bootstrap/45321] [4.6 regression] ARM bootstrap failure due to stdarg_p change

2010-09-01 Thread ramana at gcc dot gnu dot org


--- Comment #2 from ramana at gcc dot gnu dot org  2010-09-01 11:53 ---
Subject: Bug 45321

Author: ramana
Date: Wed Sep  1 11:52:55 2010
New Revision: 163726

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=163726
Log:
2010-09-01  Mikael Pettersson  mi...@it.uu.se

   PR bootstrap/45321
   * tree.c (stdarg_p): Make fntype parameter const.
   * tree.h (stdarg_p): Likewise.
   (function_args_iterator): Remove unused fntype field.
   (function_args_iter_init): Do not initialize fntype
   field.  Make fntype parameter const. 

Modified:
trunk/gcc/ChangeLog
trunk/gcc/tree.c
trunk/gcc/tree.h


-- 


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



[Bug tree-optimization/45470] [4.6 Regression] ICE: verify_flow_info failed: BB 2 can not throw but has an EH edge with -ftree-vectorize -fnon-call-exceptions

2010-09-01 Thread irar at il dot ibm dot com


--- Comment #6 from irar at il dot ibm dot com  2010-09-01 11:54 ---
(In reply to comment #5)
 I see before SLP:
 
 bb 2:
   MEM[(struct A *)this_1(D)].a = 0;
   MEM[(struct A *)this_1(D)].b = 0;
   MEM[(struct A *)this_1(D)].c = 0;
   [LP 2] MEM[(struct A *)this_1(D) + 12B].a = 0;
 
 and after:
 
 bb 2:
   vect_cst_.1_16 = { 0, 0, 0, 0 };
   vect_p.5_17 = MEM[(struct A *)this_1(D)].a;
   M*vect_p.5_17{misalignment: 0} = vect_cst_.1_16;
 
 so EH info has not been properly transfered.  

How should it be done? Is it ok to assume that if one of the old stmts can
throw, then we can set TREE_THIS_NOTRAP for the new access to 0? (and then we
can call maybe_duplicate_eh_stmt (new_stmt, old_stmt)).

Or maybe it's better to avoid vectorization?...

Thanks,
Ira

 Now that only
 MEM[(struct A *)this_1(D) + 12B].a can throw internally but not
 MEM[(struct A *)this_1(D)].c = 0; is a fact that the frontend establishes.
 
 The following mitigates the problem by simply removing the dead EH edges.
 
 Index: gcc/tree-vect-slp.c
 ===
 --- gcc/tree-vect-slp.c (revision 163721)
 +++ gcc/tree-vect-slp.c (working copy)
 @@ -2474,6 +2474,9 @@ vect_schedule_slp (loop_vec_info loop_vi
  }
  }
 
 +  if (bb_vinfo)
 +gimple_purge_dead_eh_edges (BB_VINFO_BB (bb_vinfo));
 +
return is_store;
  }
 
 


-- 

irar at il dot ibm dot com changed:

   What|Removed |Added

   Target Milestone|4.6.0   |---


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



[Bug fortran/45466] Bus Error: C program calls Fortran Function which has returned value as Character string

2010-09-01 Thread burnus at gcc dot gnu dot org


--- Comment #8 from burnus at gcc dot gnu dot org  2010-09-01 12:01 ---
(In reply to comment #0)
 Main program is written in C. (see the following)

I strongly suggest using the C Binding facility of Fortran 2003 instead of
relying on the internals of a given compiler. GCC/gfortran supports the C
binding since 4.3.0 and newer version of most other compilers support it as
well.

Cf. http://gcc.gnu.org/onlinedocs/gfortran/Interoperability-with-C.html

The article at
http://www.fortranplus.co.uk/resource/fortran_2003_2008_compiler_support.pdf
lists for some compilers the support of Fortran 2003 (and 2008) features;
interesting for you are the items Interoperability with C. Note: The list is
incomplete as not all vendors have submitted their data.


Regarding GCC/gfortran 4.1: I have no idea why it worked for you, but the
calling convention of 4.1 was the same (I just checked).


-- 


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



[Bug fortran/45451] [OOP] Inconsistent status of ALLOCATABLE components inside CLASS variables.

2010-09-01 Thread burnus at gcc dot gnu dot org


--- Comment #10 from burnus at gcc dot gnu dot org  2010-09-01 12:02 ---
I think this is a variant of PR 42647: Allocatable components of allocatable
scalars are not correctly handled.


-- 

burnus at gcc dot gnu dot org changed:

   What|Removed |Added

  BugsThisDependsOn||42647


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



[Bug bootstrap/45321] [4.6 regression] ARM bootstrap failure due to stdarg_p change

2010-09-01 Thread ramana at gcc dot gnu dot org


--- Comment #3 from ramana at gcc dot gnu dot org  2010-09-01 12:03 ---
Fixed.


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug rtl-optimization/45353] ICE: RTL check: expected elt 3 type 'B', have '0' (rtx barrier) in sel_bb_head, at sel-sched-ir.c:4329 with -fselective-scheduling and __builtin_unreachable()

2010-09-01 Thread ebotcazou at gcc dot gnu dot org


--- Comment #7 from ebotcazou at gcc dot gnu dot org  2010-09-01 12:24 
---
Subject: Bug 45353

Author: ebotcazou
Date: Wed Sep  1 12:24:35 2010
New Revision: 163731

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=163731
Log:
Backport from mainline
2010-08-20  Jakub Jelinek  ja...@redhat.com

PR rtl-optimization/45353
* sel-sched-ir.c (sel_bb_head): Return NULL even if next_nonnote_insn
after bb_note is a BARRIER.

Modified:
branches/gcc-4_4-branch/gcc/ChangeLog
branches/gcc-4_4-branch/gcc/sel-sched-ir.c


-- 


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



[Bug target/45476] libgcc should contain TCmode functions

2010-09-01 Thread dominiq at lps dot ens dot fr


--- Comment #4 from dominiq at lps dot ens dot fr  2010-09-01 12:31 ---
(In reply to comment #3)
On x86_64-apple-darwin10 I have applied the following patch

--- ../_clean/gcc/config/i386/darwin.h  2010-07-19 11:51:25.0 +0200
+++ ../p_work/gcc/config/i386/darwin.h  2010-09-01 14:10:53.0 +0200
@@ -148,6 +148,12 @@ extern int darwin_emit_branch_islands;

 #define SHIFT_DOUBLE_OMITS_COUNT 0

+/* Put all *tf routines in libgcc.  */
+#undef LIBGCC2_HAS_TF_MODE
+#define LIBGCC2_HAS_TF_MODE 1
+#define LIBGCC2_TF_CEXT q
+#define TF_SIZE 113
+
 #undef TARGET_ASM_FILE_END
 #define TARGET_ASM_FILE_END darwin_file_end

and bootstrap fails at stage 1 with

ld: duplicate symbol ___fixtfdi in fixtfdi_s.o and _fixtfdi_s.o

Any idea?


-- 


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



[Bug target/37954] [4.3 only] odd sized packed structures passed by value, under ARM, cause lockup of application

2010-09-01 Thread ramana at gcc dot gnu dot org


--- Comment #14 from ramana at gcc dot gnu dot org  2010-09-01 12:41 ---
Patches should be submitted to gcc-patc...@gcc.gnu.org. This is a 4.3 only
issue.


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Keywords||wrong-code
  Known to fail||4.3.1 4.3.5
  Known to work||4.4.2 4.5.0
   Last reconfirmed|-00-00 00:00:00 |2010-09-01 12:41:33
   date||
Summary|odd sized packed structures |[4.3 only] odd sized packed
   |passed by value, under ARM, |structures passed by value,
   |cause lockup of application |under ARM, cause lockup of
   ||application
   Target Milestone|--- |4.3.6


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



[Bug c++/45479] New: Exceptions not delivered properly after thread cancellation

2010-09-01 Thread mikedalpee at enginsol dot com
[r...@localhost Desktop]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/home/apps/gnu/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.6.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-4.6-20100828/configure --prefix=/apps/gnu
--disable-bootstrap --enable-shared --enable-threads=posix
--enable-__cxa_atexit --enable-languages=c,c++ --with-ppl=/apps/gnu
--with-cloog=/apps/gnu --with-mpc=/apps/gnu --with-mpfr=/apps/gnu
--with-gmp=/apps/gnu --with-libelf=/apps/gnu --disable-multilib
--disable-werror
Thread model: posix
gcc version 4.6.0 20100828 (experimental) (GCC) 

When a thread is cancelled via pthread_cancel, the cancelled thread's stack is
not being unwound properly and exception delivery is bugged.  This issue is
preventing me from being able to port a working system from Sun Studio/Solaris
to gcc/Linux.


-- 
   Summary: Exceptions not delivered properly after thread
cancellation
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: blocker
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: mikedalpee at enginsol dot com
 GCC build triplet: x86_64-unknown-linux
  GCC host triplet: x86_64-unknown-linux
GCC target triplet: x86_64-unknown-linux


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



[Bug c++/45479] Exceptions not delivered properly after thread cancellation

2010-09-01 Thread mikedalpee at enginsol dot com


--- Comment #1 from mikedalpee at enginsol dot com  2010-09-01 13:13 ---
Created an attachment (id=21633)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21633action=view)
Program that demonstrates the bug


-- 


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



[Bug c++/45479] Exceptions not delivered properly after thread cancellation

2010-09-01 Thread mikedalpee at enginsol dot com


--- Comment #2 from mikedalpee at enginsol dot com  2010-09-01 13:13 ---
Created an attachment (id=21634)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21634action=view)
script that builds the bug program


-- 


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



[Bug lto/45194] lto1: internal compiler error: in lto_varpool_replace_node, at lto-symtab.c:292

2010-09-01 Thread jamborm at gcc dot gnu dot org


--- Comment #3 from jamborm at gcc dot gnu dot org  2010-09-01 13:15 ---
No, I still get the same ICE (on both the reduced testcase and firefox
as such) even with a recent checkout of trunk (revision 163677 from
yesterday).

Not only I use the same version of gold but apparently also the same
binary on the same computer :-)

How do you configure the gcc?  I use

/abuild/mjambor/icln/configure --prefix=/abuild/mjambor/inst/icln/
--enable-checking=yes --enable-languages=c,c++ --disable-bootstrap
--enable-gold --with-plugin-ld=/usr/bin/gold


-- 

jamborm at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||hubicka at gcc dot gnu dot
   ||org
 Status|WAITING |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-09-01 13:15:16
   date||


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



[Bug c++/45479] Exceptions not delivered properly after thread cancellation

2010-09-01 Thread mikedalpee at enginsol dot com


--- Comment #3 from mikedalpee at enginsol dot com  2010-09-01 13:16 ---
Created an attachment (id=21635)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21635action=view)
output of the bug program


-- 


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



[Bug target/45478] ICE: in c_builtin_function_ext_scope, at c-decl.c:2852 with -mno-sse/-march=i386

2010-09-01 Thread zsojka at seznam dot cz


--- Comment #2 from zsojka at seznam dot cz  2010-09-01 13:23 ---
Created an attachment (id=21636)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21636action=view)
different testcase

This testcase crashes the same way with -mno-sse2. It was reduced from lex.i as
well.

$ gcc -mno-sse2 pr45478-2.c


-- 


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



[Bug c++/45479] Exceptions not delivered properly after thread cancellation

2010-09-01 Thread mikedalpee at enginsol dot com


--- Comment #4 from mikedalpee at enginsol dot com  2010-09-01 13:27 ---
Created an attachment (id=21637)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21637action=view)
Expected output of bug program - generated on Solaris 9 using Sun Studio 12.


-- 


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



[Bug lto/45480] New: [4.6 Regression] New LTO failures

2010-09-01 Thread hjl dot tools at gmail dot com
On Linux/x86, revision 163680 gave

FAIL: gcc.dg/lto/20081201-2 c_lto_20081201-2_0.o-c_lto_20081201-2_1.o execute
-O3 -fwhopr
FAIL: gcc.dg/lto/ipareference2 c_lto_ipareference2_0.o-c_lto_ipareference2_1.o
link,  -O1 -fwhopr -fwhole-program

Revision 163670 is OK.


-- 
   Summary: [4.6 Regression] New LTO failures
   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=45480



[Bug target/45476] libgcc should contain TCmode functions

2010-09-01 Thread burnus at gcc dot gnu dot org


--- Comment #5 from burnus at gcc dot gnu dot org  2010-09-01 13:31 ---
Cf. patch by Uros for cygming, darwin, freebsd at
http://gcc.gnu.org/ml/gcc-patches/2010-09/msg00040.html


-- 


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



[Bug c++/45479] Exceptions not delivered properly after thread cancellation

2010-09-01 Thread mikedalpee at enginsol dot com


--- Comment #5 from mikedalpee at enginsol dot com  2010-09-01 13:32 ---
This bug occurs across all versions of the compiler I have tested - 4.3, 4.4,
4.5, and 4.6. The bug is preventing me from porting software, because correct
destructor excecution in a cancelled thread is fundamental to the proper
functioning of this software.


-- 


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



[Bug lto/45480] [4.6 Regression] New LTO failures

2010-09-01 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2010-09-01 13:33 ---
Confirmed.  Obviously Honzas.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||hubicka at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-09-01 13:33:11
   date||
   Target Milestone|--- |4.6.0


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



[Bug c++/45481] New: Exception is erroneously rethrown from a constructor initializer try/catch block

2010-09-01 Thread mikedalpee at enginsol dot com
[r...@localhost exception1]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/home/apps/gnu/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.6.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-4.6-20100828/configure --prefix=/apps/gnu
--disable-bootstrap --enable-shared --enable-threads=posix
--enable-__cxa_atexit --enable-languages=c,c++ --with-ppl=/apps/gnu
--with-cloog=/apps/gnu --with-mpc=/apps/gnu --with-mpfr=/apps/gnu
--with-gmp=/apps/gnu --with-libelf=/apps/gnu --disable-multilib
--disable-werror
Thread model: posix
gcc version 4.6.0 20100828 (experimental) (GCC)


-- 
   Summary: Exception is erroneously rethrown from a constructor
initializer try/catch block
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: critical
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: mikedalpee at enginsol dot com
 GCC build triplet: x86_64-unknown-linux
  GCC host triplet: x86_64-unknown-linux
GCC target triplet: x86_64-unknown-linux


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



[Bug target/45476] libgcc should contain TCmode functions

2010-09-01 Thread burnus at gcc dot gnu dot org


--- Comment #6 from burnus at gcc dot gnu dot org  2010-09-01 13:35 ---
Uros, did you see the comment of Dominique regarding x86_64-apple-darwin10?

(In reply to comment #4)
 and bootstrap fails at stage 1 with
 ld: duplicate symbol ___fixtfdi in fixtfdi_s.o and _fixtfdi_s.o

That's with the patch from comment 2 (or comment 4) - but I think that's
identical to the submitted patch (comment 5).


-- 

burnus at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||ubizjak at gmail dot com


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



[Bug c++/45481] Exception is erroneously rethrown from a constructor initializer try/catch block

2010-09-01 Thread mikedalpee at enginsol dot com


--- Comment #1 from mikedalpee at enginsol dot com  2010-09-01 13:36 ---
Created an attachment (id=21638)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21638action=view)
Program that demonstrates the bug


-- 


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



[Bug c++/45481] Exception is erroneously rethrown from a constructor initializer try/catch block

2010-09-01 Thread mikedalpee at enginsol dot com


--- Comment #2 from mikedalpee at enginsol dot com  2010-09-01 13:36 ---
Created an attachment (id=21639)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21639action=view)
script that builds the bug program


-- 


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



[Bug c++/45481] Exception is erroneously rethrown from a constructor initializer try/catch block

2010-09-01 Thread mikedalpee at enginsol dot com


--- Comment #3 from mikedalpee at enginsol dot com  2010-09-01 13:38 ---
Created an attachment (id=21640)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21640action=view)
output of the bug program


-- 


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



[Bug c++/45479] Exceptions not delivered properly after thread cancellation

2010-09-01 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2010-09-01 13:40 ---
I am sure this is more a pthread implementation issue, so a glibc bug
on sourceware.org/bugzilla would be more appropriate.


-- 


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



[Bug c++/45481] Exception is erroneously rethrown from a constructor initializer try/catch block

2010-09-01 Thread mikedalpee at enginsol dot com


--- Comment #4 from mikedalpee at enginsol dot com  2010-09-01 13:41 ---
Created an attachment (id=21641)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21641action=view)
Expected output of bug program


-- 


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



[Bug c++/45479] Exceptions not delivered properly after thread cancellation

2010-09-01 Thread paolo dot carlini at oracle dot com


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

   Severity|blocker |normal


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



[Bug c++/45481] Exception is erroneously rethrown from a constructor initializer try/catch block

2010-09-01 Thread paolo dot carlini at oracle dot com


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

   Severity|critical|normal


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



[Bug bootstrap/45482] New: Bootstrap fails on PPC error: conflicting types for 'malloc'

2010-09-01 Thread sfilippone at uniroma2 dot it
The error I get is the same as in the old pr 33130. I don't see why this is so. 
Ian Lance Taylor suggested looking at STDC_HEADERS, and indeed in
libiberty/config.h it is defined in stage1, but not in stage2. 
I am attaching a few config files; please let me know what else is needed to
figure this out. 
=
make[3]: Entering directory `/home/snfilip/GNUBUILD/obj-4.6.0/libiberty'
if [ x != x ]; then \
  /home/snfilip/GNUBUILD/obj-4.6.0/./prev-gcc/xgcc
-B/home/snfilip/GNUBUILD/obj-4.6.0/./prev-gcc/
-B/home/snfilip/GNUBUILD/gnu460/powerpc64-unknown-linux-gnu/bin/
-B/home/snfilip/GNUBUILD/gnu460/powerpc64-unknown-linux-gnu/bin/
-B/home/snfilip/GNUBUILD/gnu460/powerpc64-unknown-linux-gnu/lib/ -isystem
/home/snfilip/GNUBUILD/gnu460/powerpc64-unknown-linux-gnu/include -isystem
/home/snfilip/GNUBUILD/gnu460/powerpc64-unknown-linux-gnu/sys-include-c
-DHAVE_CONFIG_H -g -O2 -gtoggle  -I. -I../../gcc-4.6.0/libiberty/../include  -W
-Wall -Wwrite-strings -Wc++-compat -Wstrict-prototypes -pedantic  
../../gcc-4.6.0/libiberty/regex.c -o pic/regex.o; \
else true; fi
/home/snfilip/GNUBUILD/obj-4.6.0/./prev-gcc/xgcc
-B/home/snfilip/GNUBUILD/obj-4.6.0/./prev-gcc/
-B/home/snfilip/GNUBUILD/gnu460/powerpc64-unknown-linux-gnu/bin/
-B/home/snfilip/GNUBUILD/gnu460/powerpc64-unknown-linux-gnu/bin/
-B/home/snfilip/GNUBUILD/gnu460/powerpc64-unknown-linux-gnu/lib/ -isystem
/home/snfilip/GNUBUILD/gnu460/powerpc64-unknown-linux-gnu/include -isystem
/home/snfilip/GNUBUILD/gnu460/powerpc64-unknown-linux-gnu/sys-include-c
-DHAVE_CONFIG_H -g -O2 -gtoggle  -I. -I../../gcc-4.6.0/libiberty/../include  -W
-Wall -Wwrite-strings -Wc++-compat -Wstrict-prototypes -pedantic 
../../gcc-4.6.0/libiberty/regex.c -o regex.o
../../gcc-4.6.0/libiberty/regex.c:130:1: warning: function declaration isn't a
prototype [-Wstrict-prototypes]
../../gcc-4.6.0/libiberty/regex.c:130:7: warning: conflicting types for
built-in function 'malloc' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c:131:1: warning: function declaration isn't a
prototype [-Wstrict-prototypes]
../../gcc-4.6.0/libiberty/regex.c:131:7: warning: conflicting types for
built-in function 'realloc' [enabled by default]
In file included from
/home/snfilip/GNUBUILD/obj-4.6.0/./prev-gcc/include-fixed/bits/string2.h:1308:0,
 from /usr/include/string.h:417,
 from ../../gcc-4.6.0/libiberty/regex.c:149:
/usr/include/stdlib.h:589:14: error: conflicting types for 'malloc'
../../gcc-4.6.0/libiberty/regex.c:130:7: note: previous declaration of 'malloc'
was here
In file included from ../../gcc-4.6.0/libiberty/regex.c:638:0:
../../gcc-4.6.0/libiberty/regex.c: In function 'byte_regex_compile':
../../gcc-4.6.0/libiberty/regex.c:2439:7: warning: implicit declaration of
function 'free' [-Wimplicit-function-declaration]
../../gcc-4.6.0/libiberty/regex.c:2439:33: warning: incompatible implicit
declaration of built-in function 'free' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c:2500:17: warning: incompatible implicit
declaration of built-in function 'free' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c:2533:36: warning: incompatible implicit
declaration of built-in function 'free' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c:2640:28: warning: incompatible implicit
declaration of built-in function 'free' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c:3643:26: warning: incompatible implicit
declaration of built-in function 'free' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c:4150:5: warning: incompatible implicit
declaration of built-in function 'free' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c: In function 'byte_re_compile_fastmap':
../../gcc-4.6.0/libiberty/regex.c:4835:11: warning: implicit declaration of
function 'abort' [-Wimplicit-function-declaration]
../../gcc-4.6.0/libiberty/regex.c:4835:11: warning: incompatible implicit
declaration of built-in function 'abort' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c: In function 'byte_re_match_2_internal':
../../gcc-4.6.0/libiberty/regex.c:7424:11: warning: incompatible implicit
declaration of built-in function 'abort' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c: In function 'xregcomp':
../../gcc-4.6.0/libiberty/regex.c:7978:4: warning: incompatible implicit
declaration of built-in function 'free' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c: In function 'xregexec':
../../gcc-4.6.0/libiberty/regex.c:8053:7: warning: incompatible implicit
declaration of built-in function 'free' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c: In function 'xregerror':
../../gcc-4.6.0/libiberty/regex.c:8081:5: warning: incompatible implicit
declaration of built-in function 'abort' [enabled by default]
../../gcc-4.6.0/libiberty/regex.c: In function 'xregfree':
../../gcc-4.6.0/libiberty/regex.c:8115:5: warning: incompatible implicit
declaration of built-in 

[Bug bootstrap/45482] Bootstrap fails on PPC error: conflicting types for 'malloc'

2010-09-01 Thread sfilippone at uniroma2 dot it


--- Comment #1 from sfilippone at uniroma2 dot it  2010-09-01 13:44 ---
Created an attachment (id=21642)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21642action=view)
Main config.log


-- 


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



[Bug bootstrap/45482] Bootstrap fails on PPC error: conflicting types for 'malloc'

2010-09-01 Thread sfilippone at uniroma2 dot it


--- Comment #2 from sfilippone at uniroma2 dot it  2010-09-01 13:44 ---
Created an attachment (id=21643)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21643action=view)
stage 1 libiberty/config.log


-- 


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



[Bug bootstrap/45482] Bootstrap fails on PPC error: conflicting types for 'malloc'

2010-09-01 Thread sfilippone at uniroma2 dot it


--- Comment #3 from sfilippone at uniroma2 dot it  2010-09-01 13:44 ---
Created an attachment (id=21644)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21644action=view)
stage 1 libiberty/config.h


-- 


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



[Bug bootstrap/45482] Bootstrap fails on PPC error: conflicting types for 'malloc'

2010-09-01 Thread sfilippone at uniroma2 dot it


--- Comment #4 from sfilippone at uniroma2 dot it  2010-09-01 13:45 ---
Created an attachment (id=21645)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21645action=view)
stage 2 libiberty/config.log


-- 


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



[Bug bootstrap/45482] Bootstrap fails on PPC error: conflicting types for 'malloc'

2010-09-01 Thread sfilippone at uniroma2 dot it


--- Comment #5 from sfilippone at uniroma2 dot it  2010-09-01 13:45 ---
Created an attachment (id=21646)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21646action=view)
stage 2 libiberty/config.h


-- 


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



[Bug c++/45481] Exception is erroneously rethrown from a constructor initializer try/catch block

2010-09-01 Thread paolo dot carlini at oracle dot com


--- Comment #5 from paolo dot carlini at oracle dot com  2010-09-01 13:49 
---
For the record, building with ICC gives the same behavior of GCC. Let's ask
Jason' opinion about this.


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 CC||jason at gcc dot gnu dot org


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



[Bug c++/45479] Exceptions not delivered properly after thread cancellation

2010-09-01 Thread paolo dot carlini at oracle dot com


--- Comment #7 from paolo dot carlini at oracle dot com  2010-09-01 13:53 
---
Likewise about ICC.


-- 


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



[Bug fortran/45466] Bus Error: C program calls Fortran Function which has returned value as Character string

2010-09-01 Thread Lulin dot Song at gmail dot com


--- Comment #9 from Lulin dot Song at gmail dot com  2010-09-01 14:22 
---
(In reply to comment #8)
 (In reply to comment #0)
  Main program is written in C. (see the following)
 
 I strongly suggest using the C Binding facility of Fortran 2003 instead of
 relying on the internals of a given compiler. GCC/gfortran supports the C
 binding since 4.3.0 and newer version of most other compilers support it as
 well.
 
 Cf. http://gcc.gnu.org/onlinedocs/gfortran/Interoperability-with-C.html
 
 The article at
 http://www.fortranplus.co.uk/resource/fortran_2003_2008_compiler_support.pdf
 lists for some compilers the support of Fortran 2003 (and 2008) features;
 interesting for you are the items Interoperability with C. Note: The list is
 incomplete as not all vendors have submitted their data.

Thank you all for the information and suggestions. Fortran2003 C Binding
facility seems to be what we should do next. Our project is a large
Fortran77,90,95 C mixing language software been developed for years. It is hard
to make it work with three different compilers (Intel ifort, AbfSalford ftn95
and gfortran).

 
 Regarding GCC/gfortran 4.1: I have no idea why it worked for you, but the
 calling convention of 4.1 was the same (I just checked).
 
It is mystery to me too. The small program I submitted here works if compiled
with 4.1.2 .

Another curious thought. 

When the return value is integer or double, the dump looks like

requestdouble (real(kind=8)  rlat, real(kind=8)  rlng)

when the return value is character string, is it more intuitive to be

 requestdouble ( real(kind=8)  rlat, real(kind=8) 
rlng,character(kind=1)[1:16]  __result, integer(kind=4) .__result)

instead of

requestdouble (character(kind=1)[1:16]  __result, integer(kind=4) .__result   
, real(kind=8)  rlat, real(kind=8)  rlng) ?

I mean the .__result appending to arguments list instead inserting before
arguments list.

Many thanks again.


-- 


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



[Bug fortran/43018] alloc_comp_scalar_1.f90: Valgrind Invalid read of size 4

2010-09-01 Thread janus at gcc dot gnu dot org


--- Comment #1 from janus at gcc dot gnu dot org  2010-09-01 14:26 ---
(In reply to comment #0)
 Invalid read of size 1

I don't see this at r163721 (probably has been fixed by r159445).

Closing.


-- 

janus at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


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



[Bug fortran/45466] Bus Error: C program calls Fortran Function which has returned value as Character string

2010-09-01 Thread burnus at gcc dot gnu dot org


--- Comment #10 from burnus at gcc dot gnu dot org  2010-09-01 14:32 ---
(In reply to comment #9)
 when the return value is character string, is it more intuitive to be
 
  requestdouble ( real(kind=8)  rlat, real(kind=8) 
 rlng,character(kind=1)[1:16]  __result, integer(kind=4) .__result)
 
 instead of
 
 requestdouble (character(kind=1)[1:16]  __result, integer(kind=4) .__result  
  
 , real(kind=8)  rlat, real(kind=8)  rlng) ?

I find both equally intuitive. I think the current order matches g77 and some
other compilers; for instance NAG uses:
  void requestdouble_(requestdouble_Result,requestdouble_ResultLen,rlat_,rlng_)

Thus as the other order is not clearly superior, sticking to the current order
avoids a lot of trouble both for the compiler development and for user code.


 with three different compilers (Intel ifort, AbfSalford ftn95 and gfortran).

Ifort supports Fortran 2003's C binding since quite some time; I think Salfort
doesn't nor does Absoft, but I might be wrong. (Of AbfSalfort I have never
heard.)

For general Fortran discussion, I suggest the newsgroup comp.lang.fortran (via
your news server or via http://groups.google.com/group/comp.lang.fortran/) or
the gfortran mailing list.

A bug report is not the proper method of communication :-)


-- 


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



[Bug fortran/43018] alloc_comp_scalar_1.f90: Valgrind Invalid read of size 4

2010-09-01 Thread burnus at gcc dot gnu dot org


--- Comment #2 from burnus at gcc dot gnu dot org  2010-09-01 14:36 ---
Using 4.6.0 20100901 (experimental) [trunk revision 163720], I still see:

gfortran -g alloc_comp_scalar_1.f90  valgrind ./a.out

==14804== Invalid read of size 8
==14804==at 0x400B82: MAIN__ (alloc_comp_scalar_1.f90:14)
==14804==by 0x400D22: main (alloc_comp_scalar_1.f90:17)
==14804==  Address 0x58e63d0 is 0 bytes inside a block of size 4 alloc'd
==14804==at 0x4C26C36: malloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==14804==by 0x4008F9: MAIN__ (alloc_comp_scalar_1.f90:12)
==14804==by 0x400D22: main (alloc_comp_scalar_1.f90:17)


-- 

burnus at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|FIXED   |


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



[Bug lto/44812] m32 lto produces non-relocatable subtraction expression errors

2010-09-01 Thread howarth at nitro dot med dot uc dot edu


--- Comment #30 from howarth at nitro dot med dot uc dot edu  2010-09-01 
14:38 ---
Original -m32 lto testsuite failures due to non-relocatable subtraction
expression errors were made latent by the commit...

Author: ak
Date: Tue Aug 31 16:58:46 2010
New Revision: 163680

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=163680
Log:

   * common.opt (fwhopr=): Update for -fwhopr=jobserver
   * doc/invoke.texi (fwhopr): Document -fwhopr=jobserver.
   * lto-wrapper.c (run_gcc): Add jobserver mode.
   * opts.c (common_handle_option): Fix OPT_fwhopr for non numeric
 argument.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/common.opt
trunk/gcc/doc/invoke.texi
trunk/gcc/lto-wrapper.c
trunk/gcc/opts.c


-- 


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



Re: [Bug lto/44812] m32 lto produces non-relocatable subtraction expression errors

2010-09-01 Thread Jan Hubicka
 Original -m32 lto testsuite failures due to non-relocatable subtraction
 expression errors were made latent by the commit...

Hmm, this does not make much sense. What changed?
Honza


[Bug lto/44812] m32 lto produces non-relocatable subtraction expression errors

2010-09-01 Thread hubicka at ucw dot cz


--- Comment #31 from hubicka at ucw dot cz  2010-09-01 14:42 ---
Subject: Re:  m32 lto produces non-relocatable subtraction
expression errors

 Original -m32 lto testsuite failures due to non-relocatable subtraction
 expression errors were made latent by the commit...

Hmm, this does not make much sense. What changed?
Honza


-- 


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



[Bug target/36502] i386/darwin generates unnecessary stack ops in every function

2010-09-01 Thread hjl dot tools at gmail dot com


--- Comment #31 from hjl dot tools at gmail dot com  2010-09-01 14:51 
---
(In reply to comment #30)
 With only gcc-pr45234-2.patch at r163712 , I am seeing the following
 regressions...
 
 FAIL: gcc.c-torture/execute/builtins/sprintf-chk.c compilation,  -Os  
 (internal
 compiler error)

Please provide preprocessed .i file.

 FAIL: gcc.dg/stack-usage-1.c scan-file foo\t(256|264)\tstatic
 FAIL: gcc.target/i386/stack-usage-realign.c scan-file 
 main\t48\tdynamic,bounded
 
 whereas with gcc-pr45234-2.patch and...

I compared revision 163733 against revision 163733 + gcc-pr45234-2.patch
with a cross compiler to x86_64-apple-darwin10.4.0.  I saw no
differences in .su files for gcc.dg/stack-usage-1.c nor
gcc.target/i386/stack-usage-realign.c.  Are you sure they pass
on Darwin with revision 163733?


-- 


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



[Bug bootstrap/45445] [4.6 regression] ARM bootstrap failure: comparison failures after stage 3

2010-09-01 Thread ramana at gcc dot gnu dot org


--- Comment #1 from ramana at gcc dot gnu dot org  2010-09-01 14:54 ---
With r163667 and fixes for PR45444 applied I don't see issues with a v7-a
bootstrap. Can we see if a later version works for you ? 

Ramana


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


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




[Bug c/45483] New: gcc-4.4.3: probably wrong optimization options chosen by -march=native

2010-09-01 Thread pacho at condmat1 dot ciencias dot uniovi dot es
I checked what options are being chosen on one of my laptops following the
following instructions:
http://en.chys.info/2010/04/what-exactly-marchnative-means/

But,  when reviewing used options I got:

$ ps af | grep cc1
18118 pts/1S+ 0:00  \_ grep --colour=auto cc1
18116 pts/0S+ 0:00  \_ /usr/libexec/gcc/i686-pc-linux-gnu/4.4.3/cc1
-quiet - -D_FORTIFY_SOURCE=2 -march=prescott --param l1-cache-size=32 --param
l1-cache-line-size=64 --param l2-cache-size=2048 -mtune=generic -quiet
-dumpbase - -auxbase-strip /dev/null -o /tmp/ccLS5xw5.s
13580 tty3 S+ 0:00  \_
/usr/libexec/gcc/i686-pc-linux-gnu/4.4.3/cc1 -quiet - -D_FORTIFY_SOURCE=2
-march=prescott --param l1-cache-size=32 --param l1-cache-line-size=64 --param
l2-cache-size=2048 -mtune=generic -quiet -dumpbase - -auxbase-strip /dev/null
-o /tmp/ccSnTxP2.s

My /proc/cpuinfo is the following:

$ cat /proc/cpuinfo 
processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model   : 14
model name  : Genuine Intel(R) CPU   T2300  @ 1.66GHz
stepping: 8
cpu MHz : 996.000
cache size  : 2048 KB
physical id : 0
siblings: 2
core id : 0
cpu cores   : 2
apicid  : 0
initial apicid  : 0
fdiv_bug: no
hlt_bug : no
f00f_bug: no
coma_bug: no
fpu : yes
fpu_exception   : yes
cpuid level : 10
wp  : yes
flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc arch_perfmon
bts aperfmperf pni monitor vmx est tm2 xtpr pdcm
bogomips: 3324.55
clflush size: 64
cache_alignment : 64
address sizes   : 32 bits physical, 32 bits virtual
power management:

processor   : 1
vendor_id   : GenuineIntel
cpu family  : 6
model   : 14
model name  : Genuine Intel(R) CPU   T2300  @ 1.66GHz
stepping: 8
cpu MHz : 996.000
cache size  : 2048 KB
physical id : 0
siblings: 2
core id : 1
cpu cores   : 2
apicid  : 1
initial apicid  : 1
fdiv_bug: no
hlt_bug : no
f00f_bug: no
coma_bug: no
fpu : yes
fpu_exception   : yes
cpuid level : 10
wp  : yes
flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc arch_perfmon
bts aperfmperf pni monitor vmx est tm2 xtpr pdcm
bogomips: 3324.56
clflush size: 64
cache_alignment : 64
address sizes   : 32 bits physical, 32 bits virtual
power management:

And, then, I see two problems:
1. -mtune=generic is being passed instead of, for example, -mtune=specific
option

As I can read in man gcc, looks like code is really being compiled for a
generic set of CPUs instead of specific one:

   generic
   Produce code optimized for the most common IA32/AMD64/EM64T
processors.  If you know the CPU on which your code will run, then
   you should use the corresponding -mtune option instead of
-mtune=generic.  But, if you do not know exactly what CPU users of
   your application will have, then you should use this option.

   As new processors are deployed in the marketplace, the behavior
of this option will change.  Therefore, if you upgrade to a
   newer version of GCC, the code generated option will change to
reflect the processors that were most common when that version
   of GCC was released.

   There is no -march=generic option because -march indicates the
instruction set the compiler can use, and there is no generic
   instruction set applicable to all processors.  In contrast,
-mtune indicates the processor (or, in this case, collection of
   processors) for which the code is optimized.

2. -march=prescott 

I am unsure about my processor is really a prescott one, even supporting sse3
it's listed as a Pentium-M based processor in the following links:
http://en.wikipedia.org/wiki/List_of_Intel_microprocessors#Intel_Core
http://en.wikipedia.org/wiki/Yonah_(microprocessor)
http://en.wikipedia.org/wiki/List_of_Intel_Core_microprocessors#Core_Duo

Then, I would pass -march=pentium-m -msse3 instead.

Thanks a lot for your help


-- 
   Summary: gcc-4.4.3: probably wrong optimization options chosen by
-march=native
   Product: gcc
   Version: 4.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pacho at condmat1 dot ciencias dot uniovi dot es


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



[Bug target/36502] i386/darwin generates unnecessary stack ops in every function

2010-09-01 Thread howarth at nitro dot med dot uc dot edu


--- Comment #32 from howarth at nitro dot med dot uc dot edu  2010-09-01 
15:18 ---
(In reply to comment #31)

 I compared revision 163733 against revision 163733 + gcc-pr45234-2.patch
 with a cross compiler to x86_64-apple-darwin10.4.0.  I saw no
 differences in .su files for gcc.dg/stack-usage-1.c nor
 gcc.target/i386/stack-usage-realign.c.  Are you sure they pass
 on Darwin with revision 163733?
 

HJ,
   Actually it appears that...

FAIL: gcc.c-torture/execute/builtins/sprintf-chk.c compilation,  -Os  (internal
compiler error)
UNRESOLVED: gcc.c-torture/execute/builtins/sprintf-chk.c execution,  -Os 
FAIL: gcc.dg/stack-usage-1.c scan-file foo\\t(256|264)\\tstatic
FAIL: gcc.target/i386/stack-usage-realign.c scan-file
main\\t48\\tdynamic,bounded

are actually new regressions present in unpatched gcc trunk...

http://gcc.gnu.org/ml/gcc-testresults/2010-09/msg00042.html

I will do a regression hunt later today to find out the offending commit.


-- 


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



[Bug fortran/45466] Bus Error: C program calls Fortran Function which has returned value as Character string

2010-09-01 Thread Lulin dot Song at gmail dot com


--- Comment #11 from Lulin dot Song at gmail dot com  2010-09-01 15:29 
---
(In reply to comment #10)
 (In reply to comment #9)
  when the return value is character string, is it more intuitive to be
  
   requestdouble ( real(kind=8)  rlat, real(kind=8) 
  rlng,character(kind=1)[1:16]  __result, integer(kind=4) .__result)
  
  instead of
  
  requestdouble (character(kind=1)[1:16]  __result, integer(kind=4) 
  .__result   
  , real(kind=8)  rlat, real(kind=8)  rlng) ?
 
 I find both equally intuitive. I think the current order matches g77 and some
 other compilers; for instance NAG uses:
   void 
 requestdouble_(requestdouble_Result,requestdouble_ResultLen,rlat_,rlng_)
 
 Thus as the other order is not clearly superior, sticking to the current order
 avoids a lot of trouble both for the compiler development and for user code.
 
 
  with three different compilers (Intel ifort, AbfSalford ftn95 and gfortran).
 
 Ifort supports Fortran 2003's C binding since quite some time; I think Salfort
 doesn't nor does Absoft, but I might be wrong. (Of AbfSalfort I have never
 heard.)
 
AbfSalfort is typo. We use Salfort ftn95 on Windows.
 For general Fortran discussion, I suggest the newsgroup comp.lang.fortran (via
 your news server or via http://groups.google.com/group/comp.lang.fortran/) or
 the gfortran mailing list.
 
 A bug report is not the proper method of communication :-)
 

Thanks a lot for your explaining. I thought it was bug since it behaves
different when the return type is different. I will submit future report to
mail list first to see anyone can answer there to avoid flooding the bugzilla.


-- 

Lulin dot Song at gmail dot com changed:

   What|Removed |Added

 Status|RESOLVED|VERIFIED


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



[Bug target/36502] i386/darwin generates unnecessary stack ops in every function

2010-09-01 Thread howarth at nitro dot med dot uc dot edu


--- Comment #33 from howarth at nitro dot med dot uc dot edu  2010-09-01 
15:30 ---
Created an attachment (id=21647)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21647action=view)
Don't redefine STACK_BOUNDARY and replace STACK_BOUNDARY with 128.


-- 

howarth at nitro dot med dot uc dot edu changed:

   What|Removed |Added

  Attachment #21599|0   |1
is obsolete||
  Attachment #21607|0   |1
is obsolete||


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



[Bug target/36502] i386/darwin generates unnecessary stack ops in every function

2010-09-01 Thread hjl dot tools at gmail dot com


--- Comment #34 from hjl dot tools at gmail dot com  2010-09-01 15:31 
---
(In reply to comment #33)
 Created an attachment (id=21647)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21647action=view) [edit]
 Don't redefine STACK_BOUNDARY and replace STACK_BOUNDARY with 128.
 

Please do a proper regression test and report REAL regressions.


-- 


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



[Bug target/36502] i386/darwin generates unnecessary stack ops in every function

2010-09-01 Thread howarth at nitro dot med dot uc dot edu


--- Comment #35 from howarth at nitro dot med dot uc dot edu  2010-09-01 
15:37 ---
(In reply to comment #34)
 Please do a proper regression test and report REAL regressions.
 

First we need to do a regression hunt in gcc trunk for the new
stack test case failures. It is impossible to properly test the
patch for PR36502 against a gcc trunk which is already regressed.


-- 


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



[Bug c/45483] gcc-4.4.3: probably wrong optimization options chosen by -march=native

2010-09-01 Thread hjl dot tools at gmail dot com


--- Comment #1 from hjl dot tools at gmail dot com  2010-09-01 15:40 ---
Please try gcc 4.5.2 and report what it does.


-- 

hjl dot tools at gmail dot com changed:

   What|Removed |Added

 CC||hjl dot tools at gmail dot
   ||com
 Status|UNCONFIRMED |WAITING


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



[Bug c/45483] gcc-4.4.3: probably wrong optimization options chosen by -march=native

2010-09-01 Thread pacho at condmat1 dot ciencias dot uniovi dot es


--- Comment #2 from pacho at condmat1 dot ciencias dot uniovi dot es  
2010-09-01 15:51 ---
gcc-4.5 is still hardmasked downstream in Gentoo, then, I am unsure about
installing it :-/, are you sure this bug could be solved in 4.5* ?


-- 

pacho at condmat1 dot ciencias dot uniovi dot es changed:

   What|Removed |Added

  Component|target  |c


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



[Bug lto/45480] [4.6 Regression] New LTO failures

2010-09-01 Thread hubicka at ucw dot cz


--- Comment #2 from hubicka at ucw dot cz  2010-09-01 15:56 ---
Subject: Re:  [4.6 Regression] New LTO failures

 Confirmed.  Obviously Honzas.
I had no commits in the specified range ;)

It seems that Andi's patch just disable whopr...

Honza


-- 


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



[Bug target/45483] gcc-4.4.3: probably wrong optimization options chosen by -march=native

2010-09-01 Thread hjl dot tools at gmail dot com


--- Comment #3 from hjl dot tools at gmail dot com  2010-09-01 15:56 ---
(In reply to comment #2)
 gcc-4.5 is still hardmasked downstream in Gentoo, then, I am unsure about
 installing it :-/, are you sure this bug could be solved in 4.5* ?
 

1. -march=native is changed in gcc 4.5.
2. Your cpu is Core.
3. -mtune=generic generates the fastest code for Core.
4. Prescott and Core have the same instruction set.


-- 


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



[Bug target/45483] gcc-4.4.3: probably wrong optimization options chosen by -march=native

2010-09-01 Thread pacho at condmat1 dot ciencias dot uniovi dot es


--- Comment #4 from pacho at condmat1 dot ciencias dot uniovi dot es  
2010-09-01 16:06 ---
(In reply to comment #3)
 (In reply to comment #2)
  gcc-4.5 is still hardmasked downstream in Gentoo, then, I am unsure about
  installing it :-/, are you sure this bug could be solved in 4.5* ?
  
 
 1. -march=native is changed in gcc 4.5.

Will try then with 4.5.1 (4.5.2 is still not available on Gentoo)

 2. Your cpu is Core.
 3. -mtune=generic generates the fastest code for Core.
 4. Prescott and Core have the same instruction set.

Is -mtune=generic better than -mtune=prescott? man gcc looks to suggest last
one would be better:
If you know the CPU on which your code will run, then you should use the
corresponding -mtune option instead of -mtune=generic.



-- 


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



[Bug middle-end/45484] New: r163660 ICEs gcc.c-torture/execute/builtins/sprintf-chk.c compilation, -Os at -m32

2010-09-01 Thread howarth at nitro dot med dot uc dot edu
The commit of r163660...

Author: ebotcazou
Date: Mon Aug 30 20:04:49 2010
New Revision: 163660

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=163660
Log:
Stack usage support
* common.opt (-fstack-usage): New option.
* doc/invoke.texi (Debugging options): Document it.
* builtins.c (expand_builtin_apply): Pass TRUE as 4th argument to
allocate_dynamic_stack_space.
(expand_builtin_alloca): Add 4th bool parameter CANNOT_ACCUMULATE
and propagate it to allocate_dynamic_stack_space.
(expand_builtin) BUILT_IN_ALLOCA: Adjust for above change.
* calls.c (initialize_argument_information): Pass TRUE as 4th
argument to allocate_dynamic_stack_space.
(expand_call): Set current_function_has_unbounded_dynamic_stack_size
to 1 when pushing a variable-sized argument onto the stack.  Pass
TRUE as 4th argument to allocate_dynamic_stack_space.
Update current_function_pushed_stack_size.
(emit_library_call_value_1): Likewise.
* explow.c (allocate_dynamic_stack_space): Add 4th bool parameter
CANNOT_ACCUMULATE.  If flag_stack_usage, look into the size and
attempt to find an upper bound.  Remove redundant code for the
SETJMP_VIA_SAVE_AREA case.
* expr.h (allocate_dynamic_stack_space): Add 4th bool parameter.
* function.h (struct stack_usage): New structure.
(current_function_static_stack_size): New macro.
(current_function_dynamic_stack_size): Likewise.
(current_function_pushed_stack_size): Likewise.
(current_function_dynamic_alloc_count): Likewise.
(current_function_has_unbounded_dynamic_stack_size): Likewise.
(current_function_allocates_dynamic_stack_space): Likewise.
(struct function): Add new field 'su'.
* function.c (instantiate_virtual_regs): If SETJMP_VIA_SAVE_AREA,
add the value of the dynamic offset to the dynamic stack usage.
(gimplify_parameters): Set ALLOCA_FOR_VAR_P on call to BUILT_IN_ALLOCA
for variable-sized objects.
(prepare_function_start): Allocate cfun-su if flag_stack_usage.
(rest_of_handle_thread_prologue_and_epilogue): Call output_stack_usage.
* gimplify.c (gimplify_decl_expr): Set ALLOCA_FOR_VAR_P on call to
BUILT_IN_ALLOCA for variable-sized objects.
* output.h (output_stack_usage): Declare.
* toplev.c (stack_usage_file): New file pointer.
(output_stack_usage): New function.
(open_auxiliary_file): Likewise.
(lang_dependent_init): Open file if flag_stack_usage is set.
(finalize): Close file if stack_usage_file is not null.
* tree.h (ALLOCA_FOR_VAR_P): New macro.
* config/alpha/alpha.c (compute_frame_size): New function.
(alpha_expand_prologue): Use it.
(alpha_start_function): Likewise.
(alpha_expand_epilogue): Likewise.  Set stack usage info.
* config/i386/i386.c (ix86_expand_prologue): Likewise.
* config/ia64/ia64.c (ia64_expand_prologue): Likewise.
* config/mips/mips.c (mips_expand_prologue): Likewise.
* config/pa/pa.c (hppa_expand_prologue): Likewise.
* config/rs6000/rs6000.c (rs6000_emit_prologue): Likewise.
* config/sparc/sparc.c (sparc_expand_prologue): Likewise.
testsuite/
* lib/gcc-dg.exp (cleanup-stack-usage): New procedure.
* lib/scanasm.exp (scan-stack-usage): Likewise.
(scan-stack-usage-not): Likewise.
* gcc.dg/stack-usage-1.c: New test.
* gcc.target/i386/stack-usage-realign.c: Likewise.

causes the regression...

FAIL: gcc.c-torture/execute/builtins/sprintf-chk.c compilation,  -Os  (internal
compiler error)
UNRESOLVED: gcc.c-torture/execute/builtins/sprintf-chk.c execution,  -Os 

at -m32 on x86_64-apple-darwin10 as well as the failure of its new test
cases...

FAIL: gcc.dg/stack-usage-1.c scan-file foo\\t(256|264)\\tstatic
FAIL: gcc.target/i386/stack-usage-realign.c scan-file
main\\t48\\tdynamic,bounded

at -m32 as well. The sprintf error appears as...

/fink.build/gcc46-4.6.0-1000/gcc-4.6-20100901/gcc/testsuite/gcc.c-torture/execute/builtins/sprintf-chk-lib.c
/sw/src/fink.build/gcc46-4.6.0-1000/gcc-4.6-20100901/gcc/testsuite/gcc.c-torture/execute/builtins/lib/main.c
 -w  -Os   -lm   -m32 -o
/sw/src/fink.build/gcc46-4.6.0-1000/darwin_objdir/gcc/testsuite/gcc/sprintf-chk.x7
   (timeout =
300)/sw/src/fink.build/gcc46-4.6.0-1000/gcc-4.6-20100901/gcc/testsuite/gcc.c-torture/execute/builtins/sprintf-chk.c:197:1:
internal compiler error: in div_data_align, at dwarf2out.c:595
Please submit a full bug report,
with preprocessed source if appropriate.See http://gcc.gnu.org/bugs.html for
instructions.
compiler exited with status 1
output
is:/sw/src/fink.build/gcc46-4.6.0-1000/gcc-4.6-20100901/gcc/testsuite/gcc.c-torture/execute/builtins/sprintf-chk.c:197:1:
internal compiler error: in div_data_align, at dwarf2out.c:595Please submit a
full bug

[Bug middle-end/45484] r163660 ICEs gcc.c-torture/execute/builtins/sprintf-chk.c compilation, -Os at -m32

2010-09-01 Thread howarth at nitro dot med dot uc dot edu


--- Comment #1 from howarth at nitro dot med dot uc dot edu  2010-09-01 
16:21 ---
Original patch submitted with
http://gcc.gnu.org/ml/gcc-patches/2010-08/msg00440.html.
Test cases added with http://gcc.gnu.org/ml/gcc-patches/2010-08/msg00503.html.


-- 

howarth at nitro dot med dot uc dot edu changed:

   What|Removed |Added

Summary|r163660 ICEs gcc.c- |r163660 ICEs gcc.c-
   |torture/execute/builtins/spr|torture/execute/builtins/spr
   |intf-chk.c compilation,  -Os|intf-chk.c compilation,  -Os
   |at -m32 |at -m32


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



[Bug libgomp/45485] New: OpenMP causes interprocess deadlock

2010-09-01 Thread h dot vogt at gom dot com
On a system with more than 8 cores the following program causes an interprocess
deadlock if started twice. This Problem has been observed on following systems:
2 IntelCPUs with 4 Cores per CPU; 2 IntelCPUs with 6 Cores per CPU; 1 IntelCPUs
with 6 Cores per CPU and Hyperthreading on (results in 12 virtual Cores).

The problem can be observed with gcc 4.4.1, gcc 4.4.4 and gcc 4.5.1 on Suse and
Ubuntu systems.

The program was compiled in the following way: gcc -fopenmp -o omp_test
omp_test.c

The program is not very useful in itself. It is a condensate of a real problem
which causes a big software package to hang (from time to time) for a few
minutes in a simple omp loop.

This is the program:


#include omp.h

#define V_SIZ 1000

int main (int argc, char **argv)
{
  unsigned int v[V_SIZ];
  unsigned iter;

  for (iter = 0; iter  100; iter++)
{
  int i;
#pragma omp parallel for
  for (i = 0; i  V_SIZ; i++)
v[i] = 1;
}

  return 0;
}


And gcc -v:

Using built-in specs.
Target: x86_64-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info
--mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64
--enable-languages=c,c++,objc,fortran,obj-c++,java,ada
--enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.4
--enable-ssp --disable-libssp --with-bugurl=http://bugs.opensuse.org/
--with-pkgversion='SUSE Linux' --disable-libgcj --disable-libmudflap
--with-slibdir=/lib64 --with-system-zlib --enable-__cxa_atexit
--enable-libstdcxx-allocator=new --disable-libstdcxx-pch
--enable-version-specific-runtime-libs --program-suffix=-4.4
--enable-linux-futex --without-system-libunwind --with-arch-32=i586
--with-tune=generic --build=x86_64-suse-linux
Thread model: posix
gcc version 4.4.1 [gcc-4_4-branch revision 150839] (SUSE Linux)


-- 
   Summary: OpenMP causes interprocess deadlock
   Product: gcc
   Version: 4.4.1
Status: UNCONFIRMED
  Severity: blocker
  Priority: P3
 Component: libgomp
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: h dot vogt at gom dot com
GCC target triplet:  x86_64-suse-linux


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



[Bug middle-end/45458] [4.5/4.6 Regression] ICE: in add_labels_and_missing_jumps, at bb-reorder.c:1306 with-fnon-call-exceptions -freorder-blocks-and-partition -fprofile-use

2010-09-01 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |jakub at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-09-01 16:35:01
   date||


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



[Bug target/45483] gcc-4.4.3: probably wrong optimization options chosen by -march=native

2010-09-01 Thread hjl dot tools at gmail dot com


--- Comment #5 from hjl dot tools at gmail dot com  2010-09-01 16:37 ---
(In reply to comment #4)
 (In reply to comment #3)
  (In reply to comment #2)
   gcc-4.5 is still hardmasked downstream in Gentoo, then, I am unsure about
   installing it :-/, are you sure this bug could be solved in 4.5* ?
   
  
  1. -march=native is changed in gcc 4.5.
 
 Will try then with 4.5.1 (4.5.2 is still not available on Gentoo)
 
  2. Your cpu is Core.
  3. -mtune=generic generates the fastest code for Core.
  4. Prescott and Core have the same instruction set.
 
 Is -mtune=generic better than -mtune=prescott? man gcc looks to suggest last
 one would be better:
 If you know the CPU on which your code will run, then you should use the
 corresponding -mtune option instead of -mtune=generic.
 
 

-mtune=generic is the best tuning option for Intel processors,
regardless whatever gcc manual says.


-- 


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



[Bug libgomp/45485] OpenMP causes interprocess deadlock

2010-09-01 Thread jakub at gcc dot gnu dot org


--- Comment #1 from jakub at gcc dot gnu dot org  2010-09-01 16:38 ---


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


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


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



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

2010-09-01 Thread jakub at gcc dot gnu dot org


--- Comment #21 from jakub at gcc dot gnu dot org  2010-09-01 16:38 ---
*** Bug 45485 has been marked as a duplicate of this bug. ***


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||h dot vogt at gom dot com


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



  1   2   >